[AAA-225] Reimplement web-osgi-impl with HTTP Whiteboard Created: 04/Jul/22 Updated: 16/Aug/22 Resolved: 04/Jul/22 |
|
| Status: | Resolved |
| Project: | aaa |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 0.16.0 |
| Type: | Improvement | Priority: | Medium |
| Reporter: | Robert Varga | Assignee: | Robert Varga |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Description |
|
Current implementation of web-api for OSGi relies on pax-web. OSGi R7 ships with HTTP Whiteboard spec which can handle everything we need and pax-web implements it completely. Rework web-osgi-impl to work with HTTP Whiteboard, so we can work with implementation, especially since pax-web-8 has incompatible API changes which are hard (or impossible?) to adapt to. |
| Comments |
| Comment by Robert Varga [ 06/Jul/22 ] |
|
Shiro integration is affected by this as well. What we currently have is ShiroFilter which is meant to be used with web.xml (and this extenders et al). That entails injecting WebEnvironment through a ServletContext parameter, which is fair game in Jakarta EE world – but it breaks with OSGi HTTP Whiteboard's ServletContextHelper (which we need for proper scoping). In that context parameters can only be String – and thus all the EnvironmentLoaderListener is defeated. This forces us to actually clear out a few skeletons from the closed. What we really need is an eagerly-instantiated WebEnvironment and have AAAShiroFilter inject that directly. This means we can cut out baseline ShiroFilter and interact with AbstractShiroFilter instead – saving ~100 lines of code. |