[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:
Relates
relates to AAA-215 Shiro throws a warning about Security... Resolved
relates to AAA-229 ODLAuthenticator does not work Resolved

 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.

Generated at Wed Feb 07 19:08:58 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.