Open issues

JSF/Primefaces doesn't work, when Primefaces is inside WEB-INF/lib
PAXWEB-1244
ErrorPageServlet registered twice
PAXWEB-1235
Websocket registration does not work with Undertow container
PAXWEB-1210
org.ops4j.pax.web.service.spi.ServerController could use transactional approach to register web elements
PAXWEB-1198
Review pax-web-jsp
PAXWEB-1195
Review build process of artifacts and OSGi consistency (not exporting private packages)
PAXWEB-1193
Reorganize samples
PAXWEB-1192
Make POM configuration and layout more consistent
PAXWEB-1191
Improve pax-web before 8.0.0 release
PAXWEB-1190
Upgrade to OSGi R7
PAXWEB-1181
Unable to configure multiple SSL connectors
PAXWEB-1170
Http/2 cleartext support
PAXWEB-1130
Http Whiteboard: Resolution of ServletContextHelper
PAXWEB-1124
HTTP Whiteboard and selection of the ServletContextHelper
PAXWEB-1123
Allow to configure if createDefaultHttpContext returns shared or non-shared context
PAXWEB-1105
Incorrect log of TLS ciphersuites and protocols
PAXWEB-1067
Enhance ConfigurationImpl to use OSGi encryption service
PAXWEB-1049
The documented samples are outdated
PAXWEB-1040
WebSocket not working with Whiteboard-registration
PAXWEB-1027
[Bridge] Bridged Servlets returns wrong MimeTypes
PAXWEB-978
[Bridge] Support of Whiteboard extender registration of Servlets
PAXWEB-975
[Bridge] Support of error pages
PAXWEB-973
[Bridge] Support for initialization of Filters
PAXWEB-972
[BRIDGE] Support JSPs with Filters
PAXWEB-970
[BRIDGE] Support complex JSP setup
PAXWEB-969
WebApplication gets removed when mapped servlet is unregistered
PAXWEB-968
Creation of Dynamic Connectors doesn't work as expected
PAXWEB-934
Run tests parallel to reduce execution time
PAXWEB-915
Mark un-needed methods in WebContainer as deprecated
PAXWEB-908
Make it easier to control the HttpContext of servlets registered on the whiteboard
PAXWEB-819
Custom tag libraries not supported together with libraries external bundles
PAXWEB-1122
NPe when accessing a Servlet while the responsible bundle starts
PAXWEB-1121
Cannot use custom JSP tags and/or custom HttpContexts (with context roots) simultaneously
PAXWEB-1106
ServletContext becomes unavailable on restart when using Whiteboard and CustomContexts
PAXWEB-1077
HttpServiceRuntime - calculate InfoDTO from contextroot
PAXWEB-1039
WhiteboardR7JaxRsIntegrationTest fails due to updated snapshot
PAXWEB-1115
R7 - Make use of new Capability-Annotations
PAXWEB-1044
Code-Cleanup: Inspection Issues
PAXWEB-1003
issue 1 of 38

JSF/Primefaces doesn't work, when Primefaces is inside WEB-INF/lib

Description

I had a case when primefaces + myfaces 2.2.x were embedded inside war's WEB-INF/lib. I checked that almost everything works (JSF factories are properly discovered and everything from primefaces META-INF/faces-config.xml is properly registered.

But unfortunately actual facelet taglibs (files ending with .taglib.xml) are not loaded properly.

The culprit is org.apache.myfaces.view.facelets.util.Classpath#_searchResource method and under normal Tomcat (no OSGi) it's invoked like this:

Under pax-web:

The prefix of resource to search (recursively) is META-INF/ and suffix is .taglib.xml.

In Tomcat, these URLs are returned from java.lang.ClassLoader#getResources():

In pax-web:

In Tomcat, java.net.URL#openConnection() returns instance of sun.net.www.protocol.jar.JarURLConnection, In pax-web it's instance of org.apache.felix.framework.URLHandlersBundleURLConnection

That's enough to break the process in pax-web...

Because in Tomcat, the classloader is org.apache.catalina.loader.ParallelWebappClassLoader and in pax-web it's org.ops4j.pax.web.service.spi.util.ResourceDelegatingBundleClassLoader there's some change that we can fix this at pax-web level.

But I'm not yet sure.

Environment

None

Status

Assignee

Grzegorz Grzybek

Reporter

Grzegorz Grzybek

Labels

None

Affects versions

Priority

Major
Configure