[
https://issues.apache.org/jira/browse/FELIX-5446?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Carsten Ziegeler reopened FELIX-5446:
-------------------------------------
> Http Service ignores Whiteboard Servlet API Listeners
> -----------------------------------------------------
>
> Key: FELIX-5446
> URL: https://issues.apache.org/jira/browse/FELIX-5446
> Project: Felix
> Issue Type: Bug
> Components: HTTP Service
> Affects Versions: http.base-3.0.16, http.jetty-3.4.0, http.bridge-3.0.16
> Reporter: Felix Meschberger
> Assignee: Carsten Ziegeler
> Fix For: http.base-3.0.18, http.jetty-3.4.2, http.bridge-3.0.18
>
>
> Situation:
> # A ServletRequestListener registered with the Http Whiteboard Service
> (standard OSGi Http Whiteboard) with property
> {{osgi.http.whiteboard.listener==true}}.
> # A Servlet registered with the traditional OSGi HttpService
> Problem: The ServletRequestListener is not called for requests for requests
> to said servlet.
> Investigation: It looks like the ServletRequestListenerManager used to handle
> ServletRequestListener services for traditionally registered Servlets
> explicitly ignores listeners registered with the
> {{osgi.http.whiteboard.listener}} property set. See this code in
> [ServletRequestListenerManager|https://github.com/apache/felix/blob/trunk/http/base/src/main/java/org/apache/felix/http/base/internal/service/listener/ServletRequestListenerManager.java#L45].
> For one thing, the listener should at best ignore services registered with
> the property set to true. If the property is set to anything else, it will
> explicitly be ignored by the OSGi Whiteboard Http Service and thus should
> probably be accepted by the legacy Felix Http Service implementation.
> On the other hand: Why ignore at all ? Originally the legacy Felix Http
> Service accepted all Servlet API listeners regardless of such property set.
> So if there is a listener used and the Jetty bundle is updated and the
> service updated to make sure it is called for new OSGi Whiteboard services it
> will not be called any more for the legacy registered services
> I think the legacy Felix Http Service should just accept all listeners like
> it always did.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)