Don't look if it's submitting something, just calls a HTTP GET on one of my 
pages.

-----Ursprüngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Matthias 
Wessendorf
Gesendet: Dienstag, 8. Juli 2008 18:32
An: MyFaces Discussion
Betreff: Re: [Trinidad] Nullpointer from Google Bot

On Tue, Jul 8, 2008 at 6:28 PM, Döring Markus
<[EMAIL PROTECTED]> wrote:
> Should work if the Agent is not null.

right.
would be good to know what the bot actually submits.

-M

>
> -----Ursprüngliche Nachricht-----
> Von: Andrew Robinson [mailto:[EMAIL PROTECTED]
> Gesendet: Dienstag, 8. Juli 2008 18:02
> An: MyFaces Discussion
> Betreff: Re: [Trinidad] Nullpointer from Google Bot
>
> Looks like it should be :
>
>  private Icon _getIcon(RenderingContext arc)
>  {
>   return (Agent.PLATFORM_MACOS.equals(arc.getAgent().getPlatformName())) ?
>            _macOSIcon :
>            _icon;
>  }
>
> This way an NPE can never be thrown. Basically the constant should be
> compared to a variable in case the variable is null, where the
> constant is never null.
>
>
> On Tue, Jul 8, 2008 at 3:34 AM, Matthias Wessendorf <[EMAIL PROTECTED]> wrote:
>> This is the method in question:
>>
>>  private Icon _getIcon(RenderingContext arc)
>>  {
>>    return (arc.getAgent().getPlatformName().equals(
>>                                 Agent.PLATFORM_MACOS)) ?
>>             _macOSIcon :
>>             _icon;
>>  }
>>
>> Will take a look after I am back from vacation :-)
>>
>> -M
>>
>>
>> On Tue, Jul 8, 2008 at 11:28 AM, Matthias Wessendorf <[EMAIL PROTECTED]> 
>> wrote:
>>> Hi Markus,
>>>
>>> there is already a issue to support other agents, like the KDE-browser
>>> (forgot the name).
>>> I think that this is a related issue.
>>>
>>> Can you enter your problem to jira and link to this?
>>>
>>> I am not 100% sure but it might be a similar issue (yes, I know the
>>> stack is different).
>>> https://issues.apache.org/jira/browse/TRINIDAD-1109
>>>
>>> -M
>>>
>>> On Tue, Jul 8, 2008 at 9:52 AM, Döring Markus
>>> <[EMAIL PROTECTED]> wrote:
>>>> The exception filter is doing nothing more than catching every exception 
>>>> and
>>>> redirecting to another view.
>>>>
>>>>
>>>>
>>>> And the exception filter is just at one point in the stack trace, the
>>>> NullPointer happens at
>>>>
>>>> org.apache.myfaces.trinidadinternal.renderkit.core.skin.MacOSSwitcherIcon._getIcon(MacOSSwitcherIcon.java:104)
>>>>
>>>> so it's not my code causing the problem.
>>>>
>>>>
>>>>
>>>> Btw. we're using
>>>>
>>>> Myfaces 1.1.5
>>>>
>>>> Facelets 1.1.13
>>>>
>>>> Trindidad 1.0.7
>>>>
>>>> on
>>>>
>>>> JBoss 4.2.2
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Just to have it all: the exception filter:
>>>>
>>>>
>>>>
>>>> private final static Log log = LogFactory.getLog(ExceptionFilter.class);
>>>>
>>>>
>>>>
>>>> public void doFilter(ServletRequest request, ServletResponse response,
>>>> FilterChain chain) throws IOException, ServletException {
>>>>
>>>> try {
>>>>
>>>>               chain.doFilter(request, response);
>>>>
>>>>       } catch (Throwable thr) {
>>>>
>>>>             log.error("Error occured in jsf request processing: " +
>>>> thr.getMessage(), thr);
>>>>
>>>>             httpResponse.reset();
>>>>
>>>>
>>>> httpResponse.sendRedirect(httpRequest.getContextPath()+"/faces/error.xhtml");
>>>>
>>>>                 }
>>>>
>>>> }
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Von: Burghard Britzke [mailto:[EMAIL PROTECTED]
>>>> Gesendet: Dienstag, 8. Juli 2008 09:34
>>>> An: MyFaces Discussion
>>>> Betreff: Re: [Trinidad] Nullpointer from Google Bot
>>>>
>>>>
>>>>
>>>> Every NullPointerException is caused by a missing initialization.
>>>>
>>>> My first guess is an initialization error
>>>> in de.tccproducts.dps.web.utils.lifecycle.ExceptionFilter.doFilter
>>>>
>>>>
>>>>
>>>> sincerely,
>>>>
>>>> burghard.
>>>>
>>>>
>>>>
>>>> Am 08.07.2008 um 09:18 schrieb Döring Markus:
>>>>
>>>> Hi List,
>>>>
>>>>
>>>>
>>>> since our application went live, we get some nullpointer during night. Some
>>>> research has shown that the IP that is accessing the site is known as some
>>>> "Google Bot" scanning links, ect.
>>>>
>>>> Don't know why the nullpointer happens, looks like the Google Bot sends 
>>>> some
>>>> "strange" MacOS header in the request.
>>>>
>>>>
>>>>
>>>> Can someone have a look at this? It's not critical because it's no real
>>>> user, but it's not nice to get a nullpointer every night.
>>>>
>>>>
>>>>
>>>> Greetings
>>>>
>>>> Markus
>>>>
>>>>
>>>>
>>>> ________________________________
>>>>
>>>> Log session start time Tue Jul 08 02:32:27 CEST 2008
>>>>
>>>> Time
>>>>
>>>> Thread
>>>>
>>>> Level
>>>>
>>>> Category
>>>>
>>>> Message
>>>>
>>>> 896715047
>>>>
>>>> http-0.0.0.0-8080-4
>>>>
>>>> ERROR
>>>>
>>>> facelets.viewhandler
>>>>
>>>> Error Rendering View[/error.xhtml]
>>>>
>>>> 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)
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Matthias Wessendorf
>>>
>>> further stuff:
>>> blog: http://matthiaswessendorf.wordpress.com/
>>> sessions: http://www.slideshare.net/mwessendorf
>>> mail: matzew-at-apache-dot-org
>>>
>>
>>
>>
>> --
>> Matthias Wessendorf
>>
>> further stuff:
>> blog: http://matthiaswessendorf.wordpress.com/
>> sessions: http://www.slideshare.net/mwessendorf
>> mail: matzew-at-apache-dot-org
>>
>



-- 
Matthias Wessendorf

further stuff:
blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
mail: matzew-at-apache-dot-org

Reply via email to