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

Dennis Kieselhorst commented on TRINIDAD-2566:
----------------------------------------------

Thanks for your bug report. There are no active Trinidad developers at the 
moment. Any chance that you create a pull request with a fix? You can find the 
code here: 
https://github.com/apache/myfaces-trinidad/blob/master/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/skin/AgentAtRuleMatcher.java

> NullPointerException after upgrading from apache-tomcat-8.5.47 to 
> apache-tomcat-8.5.49 
> ---------------------------------------------------------------------------------------
>
>                 Key: TRINIDAD-2566
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-2566
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>          Components: Skinning
>    Affects Versions: 2.2.0-core
>         Environment: apache-tomcat-8.5.49
>            Reporter: Pervasync
>            Priority: Blocker
>
> After upgrading from apache-tomcat-8.5.47 to apache-tomcat-8.5.49, got this 
> exception when loading jspx page:
>  
> {{java.lang.NullPointerException
>       at 
> org.apache.myfaces.trinidadinternal.skin.AgentAtRuleMatcher$TouchScreenCapabilityMatcher.match(AgentAtRuleMatcher.java:863)
>       at 
> org.apache.myfaces.trinidadinternal.skin.AgentAtRuleMatcher.match(AgentAtRuleMatcher.java:502)
>       at 
> org.apache.myfaces.trinidadinternal.style.xml.parse.StyleSheetNode._compareBrowserAndVersion(StyleSheetNode.java:379)
>       at 
> org.apache.myfaces.trinidadinternal.style.xml.parse.StyleSheetNode.compareVariants(StyleSheetNode.java:194)
>       at 
> org.apache.myfaces.trinidadinternal.style.xml.parse.StyleSheetDocument._getStyleSheets(StyleSheetDocument.java:569)
>       at 
> org.apache.myfaces.trinidadinternal.style.xml.parse.StyleSheetDocument.getStyleSheetsAsCollection(StyleSheetDocument.java:201)
>       at 
> org.apache.myfaces.trinidadinternal.style.xml.parse.StyleSheetDocument.getStyleSheets(StyleSheetDocument.java:196)
>       at 
> org.apache.myfaces.trinidadinternal.style.cache.FileSystemStyleCache._getNamespacePrefixes(FileSystemStyleCache.java:1324)
>       at 
> org.apache.myfaces.trinidadinternal.style.cache.FileSystemStyleCache._getStyleSheetDocument(FileSystemStyleCache.java:956)
>       at 
> org.apache.myfaces.trinidadinternal.style.cache.FileSystemStyleCache._getEntry(FileSystemStyleCache.java:425)
>       at 
> org.apache.myfaces.trinidadinternal.style.cache.FileSystemStyleCache.getStyleSheetURIs(FileSystemStyleCache.java:142)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.StyleSheetRenderer.encodeAll(StyleSheetRenderer.java:81)
>       at 
> org.apache.myfaces.trinidad.render.CoreRenderer.delegateRenderer(CoreRenderer.java:688)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.HeadRenderer.encodeEnd(HeadRenderer.java:97)
>       at 
> org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:551)
>       at 
> org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:1239)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:823)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:819)
>       at 
> javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:551)
>       at 
> org.apache.myfaces.shared.view.JspViewDeclarationLanguageBase.actuallyRenderView(JspViewDeclarationLanguageBase.java:351)
>       at 
> org.apache.myfaces.shared.view.JspViewDeclarationLanguageBase.renderView(JspViewDeclarationLanguageBase.java:200)
>       at 
> org.apache.myfaces.trinidad.view.ViewDeclarationLanguageWrapper.renderView(ViewDeclarationLanguageWrapper.java:101)
>       at 
> org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.renderView(ViewDeclarationLanguageFactoryImpl.java:338)
>       at 
> org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:313)
>       at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:58)
>       at 
> org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:170)
>       at 
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:116)
>       at 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:267)
>       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:200)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at pervasync.server.console.AccessControlFilter.doFilter(SourceFile:97)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at 
> org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:350)
>       at 
> org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:226)
>       at 
> org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at 
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at pervasync.server.console.JspxRedirectFilter.doFilter(SourceFile:73)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
>       at 
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:528)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
>       at 
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
>       at 
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:798)
>       at 
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
>       at 
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:810)
>       at 
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
>       at 
> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>       at 
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>       at java.lang.Thread.run(Thread.java:748)}}
> {{}}
> {{We also see the following with older skins:}}
>  
> {{java.lang.ClassCastException: 
> org.apache.myfaces.trinidadinternal.style.UnmodifiableStyle cannot be cast to 
> org.apache.myfaces.trinidadinternal.style.CoreStyle
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafUtils.getClassStyle(XhtmlLafUtils.java:227)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.renderStyleClassAttribute(XhtmlLafRenderer.java:817)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.renderStyleAttrs(XhtmlLafRenderer.java:542)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.renderStyleAttrs(XhtmlLafRenderer.java:563)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.renderAttributesExceptID(XhtmlLafRenderer.java:266)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.renderAttributes(XhtmlLafRenderer.java:285)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.simple.desktop.GlobalHeaderRenderer.renderAttributes(GlobalHeaderRenderer.java:76)
>       at 
> org.apache.myfaces.trinidadinternal.ui.ElementRenderer.prerender(ElementRenderer.java:76)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.prerender(XhtmlLafRenderer.java:201)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.simple.desktop.GlobalHeaderRenderer.prerender(GlobalHeaderRenderer.java:90)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.render(BaseRenderer.java:91)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.render(XhtmlLafRenderer.java:85)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseUINode.render(BaseUINode.java:358)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseUINode.render(BaseUINode.java:313)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderChild(BaseRenderer.java:425)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderIndexedChild(BaseRenderer.java:343)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderIndexedChild(BaseRenderer.java:235)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderContent(BaseRenderer.java:142)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.render(BaseRenderer.java:93)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.render(XhtmlLafRenderer.java:85)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseUINode.render(BaseUINode.java:358)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseUINode.render(BaseUINode.java:313)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderChild(BaseRenderer.java:425)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderNamedChild(BaseRenderer.java:397)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.desktop.PageHeaderLayoutRenderer.renderPageHeaderChild(PageHeaderLayoutRenderer.java:480)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.desktop.PageHeaderLayoutRenderer._renderGlobalHeader(PageHeaderLayoutRenderer.java:601)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.desktop.PageHeaderLayoutRenderer.renderContent(PageHeaderLayoutRenderer.java:454)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.render(BaseRenderer.java:93)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.render(XhtmlLafRenderer.java:85)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseUINode.render(BaseUINode.java:358)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseUINode.render(BaseUINode.java:313)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderChild(BaseRenderer.java:425)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderIndexedChild(BaseRenderer.java:343)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderIndexedChild(BaseRenderer.java:235)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderContent(BaseRenderer.java:142)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseRenderer.render(BaseRenderer.java:93)
>       at 
> org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.render(XhtmlLafRenderer.java:85)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseUINode.render(BaseUINode.java:358)
>       at 
> org.apache.myfaces.trinidadinternal.ui.BaseUINode.render(BaseUINode.java:313)
>       at 
> org.apache.myfaces.trinidadinternal.ui.composite.UINodeRenderer.renderWithNode(UINodeRenderer.java:104)
>       at 
> org.apache.myfaces.trinidadinternal.ui.composite.UINodeRenderer.render(UINodeRenderer.java:50)
>       at 
> org.apache.myfaces.trinidadinternal.uinode.UIXComponentUINode.renderInternal(UIXComponentUINode.java:192)
>       at 
> org.apache.myfaces.trinidadinternal.uinode.UINodeRendererBase.encodeEnd(UINodeRendererBase.java:70)
>       at 
> org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:1239)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:823)
>       at 
> org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:659)
>       at 
> org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:674)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.renderContent(PanelPartialRootRenderer.java:70)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.renderContent(BodyRenderer.java:160)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.encodeAll(PanelPartialRootRenderer.java:153)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.encodeAll(BodyRenderer.java:83)
>       at 
> org.apache.myfaces.trinidad.render.CoreRenderer.delegateRenderer(CoreRenderer.java:688)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.DocumentRenderer.encodeAll(DocumentRenderer.java:110)
>       at 
> org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:538)
>       at 
> org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:1239)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:823)
>       at 
> org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:659)
>       at 
> org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:674)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.renderContent(PanelPartialRootRenderer.java:70)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.renderContent(BodyRenderer.java:160)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.encodeAll(PanelPartialRootRenderer.java:153)
>       at 
> org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.encodeAll(BodyRenderer.java:83)
>       at 
> org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:538)
>       at 
> org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:1239)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:823)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:819)
>       at 
> javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:551)
>       at 
> org.apache.myfaces.shared.view.JspViewDeclarationLanguageBase.actuallyRenderView(JspViewDeclarationLanguageBase.java:351)
>       at 
> org.apache.myfaces.shared.view.JspViewDeclarationLanguageBase.renderView(JspViewDeclarationLanguageBase.java:200)
>       at 
> org.apache.myfaces.trinidad.view.ViewDeclarationLanguageWrapper.renderView(ViewDeclarationLanguageWrapper.java:101)
>       at 
> org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.renderView(ViewDeclarationLanguageFactoryImpl.java:338)
>       at 
> org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:313)
>       at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:58)
>       at 
> org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:170)
>       at 
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:116)
>       at 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:267)
>       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:200)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at pervasync.server.console.AccessControlFilter.doFilter(SourceFile:97)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at 
> org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:350)
>       at 
> org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:226)
>       at 
> org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at 
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at pervasync.server.console.JspxRedirectFilter.doFilter(SourceFile:73)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
>       at 
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:528)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
>       at 
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
>       at 
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:798)
>       at 
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
>       at 
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:810)
>       at 
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
>       at 
> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>       at 
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>       at java.lang.Thread.run(Thread.java:748)}}{{}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to