[ 
https://issues.apache.org/jira/browse/SLING-11677?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17636741#comment-17636741
 ] 

Carsten Ziegeler commented on SLING-11677:
------------------------------------------

I think it is not Sling's concern to handle this case. If an application 
deployer wants to add additional servlets in the default context next to Sling, 
than this is where the configuration needs to take place.
The implementation in Apache Felix might actually change in the future and not 
register the default context as a service anymore - in which case this 
workaround here will not work.

> Sling Engine Context 'org.apache.sling' has higher ranking than 'default' 
> context
> ---------------------------------------------------------------------------------
>
>                 Key: SLING-11677
>                 URL: https://issues.apache.org/jira/browse/SLING-11677
>             Project: Sling
>          Issue Type: Bug
>          Components: Engine
>            Reporter: Konrad Windszus
>            Assignee: Konrad Windszus
>            Priority: Major
>         Attachments: HTTP-Service-Default-Context.png, Servlet-Contexts.png
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> When a servlet is registered with the OSGi HTTP Whiteboard pattern without 
> the property {{osgi.http.whiteboard.context.select}} the "default" context 
> helper is used 
> (https://docs.osgi.org/specification/osgi.cmpn/7.0.0/service.http.whiteboard.html#service.http.whiteboard.common.properties)
> With the Jetty Implementation from Felix in Sling this has the 
> {{service.ranking}} {{Integer.MIN_VALUE}} 
> (https://github.com/apache/felix-dev/blob/e7d17aca517949dd65a913f9ac5088e653a4a2dc/http/base/src/main/java/org/apache/felix/http/base/internal/whiteboard/WhiteboardManager.java#L182)
>  while the one for the default Sling Main Servlet has no explicit ranking 
> (i.e. 0). That leads to the fact that the Sling Main servlet always takes 
> precedence as
> {quote}
> In the case of two Servlet Context Helpers with the same path, the service 
> with the highest ranking is searched first for a match. In the case of a tie, 
> the lowest service ID is searched first.
> {quote}
> (https://docs.osgi.org/specification/osgi.cmpn/7.0.0/service.http.whiteboard.html#service.http.whiteboard.servletcontext)
>  as both "default" and "org.apache.sling" are registered for path "<root>".
> The Sling Main servlet context should use a lower ranking so that simple 
> servlets registered via OSGI HTTP Whiteboard pattern without explicit context 
> can kick in at all!
> Attached the web console of Sling Starter 12:
>  !Servlet-Contexts.png! 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to