[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-13 Thread Antoine DESSAIGNE (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17699736#comment-17699736
 ] 

Antoine DESSAIGNE commented on FELIX-6599:
--

Thanks [~cziegeler] for letting me know. When using 
{{org.apache.felix.http.servlet-api}} (without {{tomcat-servlet-api}}) instead 
of {{javax.servlet-api}} then it's working fine

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-13 Thread Carsten Ziegeler (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17699640#comment-17699640
 ] 

Carsten Ziegeler commented on FELIX-6599:
-

[~antoine.dessaigne] Jetty 9 only implements servlet 3.1 (not 4); therefore the 
package range for jetty bundles is ok. With Apache Felix Http Base we support 
Servlet 4 as an optional feature; at least thats how it should be.

However, this optional support requires *at runtime* a servlet 4 api. I suggest 
you use 
[https://repo.maven.apache.org/maven2/org/apache/felix/org.apache.felix.http.servlet-api/1.2.0/]
 instead of javax.servlet-api and then all should work out fine.

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-13 Thread Antoine DESSAIGNE (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17699631#comment-17699631
 ] 

Antoine DESSAIGNE commented on FELIX-6599:
--

I use this (I left the comment as it's relevant)
{noformat}

javax.servlet
javax.servlet-api

3.1.0

{noformat}

What puzzles me the most is the import packages of Jetty itself (see the 
following properly formatted subset)
{noformat}
Import-Package:
 javax.servlet.annotation;version="[3.1.0,4)"
 javax.servlet.descriptor;version="[3.1.0,4)"
 javax.servlet.http;version="[3.1.0,4)"
 javax.servlet;version="[3.1.0,4)"
{noformat}

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-13 Thread Carsten Ziegeler (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17699628#comment-17699628
 ] 

Carsten Ziegeler commented on FELIX-6599:
-

[~antoine.dessaigne] Which bundle do you use to provide the servlet API?

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-13 Thread Antoine DESSAIGNE (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17699623#comment-17699623
 ] 

Antoine DESSAIGNE commented on FELIX-6599:
--

I don't know how it's possible to require servlet 4 implementation when Jetty 
9.4.x itself excludes servlet 4.

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-13 Thread Carsten Ziegeler (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17699575#comment-17699575
 ] 

Carsten Ziegeler commented on FELIX-6599:
-

I think the problematic class is ServletRequestWrapper which is tried to be 
loaded by the Dispatcher and has a direct reference to servlet 4 classes. We 
could probably split it into a ServletRequestWrapper3 and  
ServletRequestWrapper4 - but you might run into a similar problem in other 
places.

So maybe we should rethink this and require servlet 4 for the implementation.

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-13 Thread Antoine DESSAIGNE (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17699558#comment-17699558
 ] 

Antoine DESSAIGNE commented on FELIX-6599:
--

Hello [~cziegeler],

It looks like it still doesn't work. The {{org.apache.felix.http.jetty}} jar 
inlines the {{org.apache.felix.http.base}} jar, so it fails loading 
{{org.apache.felix.http.base.internal.dispatch.HttpServletMappingImpl}} because 
there are 2 imports from {{javax.servlet}} 4.0.

Here's the stack trace we have
{noformat}
2023-03-13 11:33:38,903 [qtp712325821-1883] WARN 
org.eclipse.jetty.server.HttpChannel - /favicon.ico
java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletMapping
    at 
org.apache.felix.http.base.internal.dispatch.Dispatcher$1.doFilter(Dispatcher.java:139)
 ~[?:?]
    at 
org.apache.felix.http.base.internal.whiteboard.WhiteboardManager.invokePreprocessors(WhiteboardManager.java:986)
 ~[?:?]
    at 
org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:94)
 ~[?:?]
    at 
org.apache.felix.http.base.internal.dispatch.DispatcherServlet.service(DispatcherServlet.java:49)
 ~[?:?]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) 
~[javax.servlet-api-3.1.0.jar:3.1.0]
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799) 
~[?:?]
    at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:554) 
~[?:?]
...
{noformat}

What do you think? Thank you for your help.


> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-09 Thread Carsten Ziegeler (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17698754#comment-17698754
 ] 

Carsten Ziegeler commented on FELIX-6599:
-

https://github.com/apache/felix-dev/commit/fb073764f93d97428002182418024200be0544e9

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-09 Thread Antoine DESSAIGNE (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17698310#comment-17698310
 ] 

Antoine DESSAIGNE commented on FELIX-6599:
--

Thank you [~cziegeler] for handling this so quickly

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-08 Thread Carsten Ziegeler (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17698197#comment-17698197
 ] 

Carsten Ziegeler commented on FELIX-6599:
-

Rethinking this, the best solution is actually to remove the usage of servlet 
API 4 functionality in base and only require servlet API 3

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Assignee: Carsten Ziegeler
>Priority: Major
> Fix For: http.jetty-4.2.10, http.base-4.2.6, http.bridge-4.2.8
>
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-08 Thread Carsten Ziegeler (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17698059#comment-17698059
 ] 

Carsten Ziegeler commented on FELIX-6599:
-

If the servlet API 3.1 is provided by the same bundle that provides version 4 - 
which is usually the case - I think it should work. But I agree that it looks a 
little bit strange

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Priority: Major
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-08 Thread Antoine DESSAIGNE (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17698054#comment-17698054
 ] 

Antoine DESSAIGNE commented on FELIX-6599:
--

Hi [~cziegeler],

Unfortunately, I don't think this path is doable as Felix HTTP Jetty 4.2.8 uses 
Jetty 9.4.50 which requires {{javax.servlet}} in version 3.1 and not 4 (range 
is {{3.1,4)}})

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Priority: Major
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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


[jira] [Commented] (FELIX-6599) javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 9.4.x

2023-03-08 Thread Carsten Ziegeler (Jira)


[ 
https://issues.apache.org/jira/browse/FELIX-6599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17698050#comment-17698050
 ] 

Carsten Ziegeler commented on FELIX-6599:
-

I agree, there is indeed an inconsistency here. Without changing code, it would 
be correct that the Jetty bundle imports the API in version 4 instead of 3.1.

The other option is to remove the usage of MappingMatch from base completely 
and then only require 3.1.

As the first option is the simpler one, I would opt for that

> javax.servlet incompatibility between Felix HTTP Jetty Light 4.2.8 and Jetty 
> 9.4.x
> --
>
> Key: FELIX-6599
> URL: https://issues.apache.org/jira/browse/FELIX-6599
> Project: Felix
>  Issue Type: Bug
>  Components: HTTP Service
>Affects Versions: http.jetty-4.2.8
>Reporter: Antoine DESSAIGNE
>Priority: Major
>
> Hello everyone,
> We detected what looks like an inconsistency in Felix HTTP Jetty Light 4.2.8 
> (where Jetty is an external jar and not inlined).
> In the {{MANIFEST.MF}} file we can see
> {noformat}
> Import-Package:
>  javax.servlet.descriptor;version="[3.1,4)"
>  javax.servlet.http;version="[3.1,4)"
>  javax.servlet;version="[3.1,4)"
>  ...
> Require-Capability: 
> osgi.contract;filter:="(&(osgi.contract=JavaServlet)(version=4.0))",osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
> {noformat}
> So it asks for {{javax.servlet}} in version range [3.1,4) but ask for a 4.0 
> Java Servlet capability. Unfortunately 
> {{org.apache.felix.http.base.internal.registry.PathResolverFactory}} uses 
> {{javax.servlet.http.MappingMatch}} which is only available starting in 4.0.
> Felix HTTP Jetty Light uses Jetty 9.4.50.v20221201 which requires 
> {{javax.servlet}} in version range [3.1,4).
> So it looks like in the 4.2.x branch, {{javax.servlet}} should be in 3.1.0 
> and {{javax.servlet.http.MappingMatch}} should not be used. Am I right or is 
> there something I did wrong?
> Thank you for your help



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