[ https://issues.apache.org/jira/browse/TRINIDAD-1146?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12740724#action_12740724 ]
Jeanne Waldman commented on TRINIDAD-1146: ------------------------------------------ // Returns the Icon to use private Icon _getIcon(RenderingContext rc) { return (Agent.PLATFORM_MACOS.equals(rc.getAgent().getPlatformName())) ? _macOSIcon : _icon; } so the NPE is probably because getAgent() is null. For the other NPE, java.lang.NullPointerException at org.apache.myfaces.trinidadinternal.style.cache.FileSystemStyleCache$Key.hashCode(FileSystemStyleCache.java:1224) at java.util.Hashtable.get(Hashtable.java:334 is because _locale, _accessbilityProfile, and/or _version is null. Again agent is probably null, so the code that creates the agent object needs to be looked at. > NPE from Google Bot (unknown agent) > ----------------------------------- > > Key: TRINIDAD-1146 > URL: https://issues.apache.org/jira/browse/TRINIDAD-1146 > Project: MyFaces Trinidad > Issue Type: Bug > Affects Versions: 1.0.7-core > Environment: myfaces 1.1.5 > facelets 1.1.13 > trinidad 1.0.7 > jboss 4.2.2 > Reporter: Markus Döring > Assignee: Matthias Weßendorf > Priority: Minor > Fix For: 1.0.9-core, 1.2.9-core > > > Trinidad thrwos NullPointer when a Client identified as a Google Bot is > accessing the page. > Might be cause by an anknown / not supported user agent send within the > request of the Google Bot. > java.lang.NullPointerException > at > org.apache.myfaces.trinidadinternal.renderkit.core.skin.MacOSSwitcherIcon._getIcon(MacOSSwitcherIcon.java:104) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.skin.MacOSSwitcherIcon.renderIcon(MacOSSwitcherIcon.java:61) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.OutputUtils.renderIcon(OutputUtils.java:284) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.OutputUtils.renderIcon(OutputUtils.java:254) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.ShowDetailRenderer.renderDisclosureIcon(ShowDetailRenderer.java:184) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.ShowDetailRenderer.renderDisclosureIcon(ShowDetailRenderer.java:194) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.ShowDetailRenderer.encodeAll(ShowDetailRenderer.java:91) > > at > org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:224) > > at > org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:711) > > at > org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:304) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelGroupLayoutRenderer.encodeChild(PanelGroupLayoutRenderer.java:188) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelGroupLayoutRenderer._encodeChildren(PanelGroupLayoutRenderer.java:154) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelGroupLayoutRenderer.encodeAll(PanelGroupLayoutRenderer.java:106) > > at > org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:224) > > at > org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:711) > > at > org.apache.myfaces.trinidadinternal.uinode.UIComponentUINode._renderComponent(UIComponentUINode.java:337) > > at > org.apache.myfaces.trinidadinternal.uinode.UIComponentUINode.render(UIComponentUINode.java:279) > > at > org.apache.myfaces.trinidadinternal.uinode.UIComponentUINode.render(UIComponentUINode.java:256) > > at > org.apache.myfaces.trinidadinternal.ui.composite.ContextPoppingUINode$ContextPoppingRenderer.render(ContextPoppingUINode.java:240) > > 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:84) > > 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:84) > > 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.laf.base.xhtml.BorderLayoutRenderer.renderIndexedChildren(BorderLayoutRenderer.java:56) > > at > org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.BorderLayoutRenderer.renderContent(BorderLayoutRenderer.java:86) > > at > org.apache.myfaces.trinidadinternal.ui.BaseRenderer.render(BaseRenderer.java:93) > > at > org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.render(XhtmlLafRenderer.java:84) > > 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:84) > > 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:711) > > at > org.apache.myfaces.trinidad.render.RenderUtils.encodeRecursive(RenderUtils.java:70) > > at > org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:299) > > at > org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:321) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.renderContent(PanelPartialRootRenderer.java:64) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.renderContent(BodyRenderer.java:139) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.PanelPartialRootRenderer.encodeAll(PanelPartialRootRenderer.java:119) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.BodyRenderer.encodeAll(BodyRenderer.java:79) > > at > org.apache.myfaces.trinidad.render.CoreRenderer.delegateRenderer(CoreRenderer.java:335) > > at > org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.DocumentRenderer.encodeAll(DocumentRenderer.java:80) > > at > org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:224) > > at > org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:711) > > at > com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:252) > > at > com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) > > at > com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:579) > at > org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:182) > > at > org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41) > > at > org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132) > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:140) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoFilter(TrinidadFilterImpl.java:250) > > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:207) > > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:161) > > at > org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > de.tccproducts.dps.web.utils.lifecycle.ExceptionFilter.doFilter(ExceptionFilter.java:39) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) > > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > > at > org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179) > > at > org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) > > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > at > org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157) > > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446) > at java.lang.Thread.run(Thread.java:595) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.