[ 
https://issues.apache.org/jira/browse/WICKET-4849?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Martin Grigorov resolved WICKET-4849.
-------------------------------------

    Resolution: Won't Fix

I can suggest to upgrade to newer JDK.

In 1.5.0_22 (this is the last from 1.5.x series, I think) at line 624 it does: 

     final ReentrantLock takeLock = LinkedBlockingQueue.this.takeLock;

and I cannot see how this will throw NullPointerException.

In JDK 1.6 and JDK 1.7 the related code is reworked and again doesn't look 
suspicious to produce NPEs.
                
> Nullpointer exception 
> org.apache.wicket.pageStore.AsynchronousDataStore.removeData
> ----------------------------------------------------------------------------------
>
>                 Key: WICKET-4849
>                 URL: https://issues.apache.org/jira/browse/WICKET-4849
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.5.7
>         Environment: JAVA 1.5, SAS8.2
>            Reporter: Daniel Santos
>
> In production environment we get this stacktrace (every exact minute and 
> until the server is restarted). I cannot reproduce the problem locally. When 
> this exception appears, if I try to log out (invalidate the session via 
> getSession().invalidate()) I get the exact same exception on screen.
> [#|2012-10-30T17:22:31.154+0100|SEVERE|sun-appserver-ee8.1_02|org.apache.catalina.core.ContainerBase|_ThreadID=22;|Exception
>  invoking periodic operation: 
> java.lang.NullPointerException
>       at 
> java.util.concurrent.LinkedBlockingQueue$Itr.<init>(LinkedBlockingQueue.java:624)
>       at 
> java.util.concurrent.LinkedBlockingQueue.iterator(LinkedBlockingQueue.java:605)
>       at 
> org.apache.wicket.pageStore.AsynchronousDataStore.removeData(AsynchronousDataStore.java:184)
>       at 
> org.apache.wicket.pageStore.DefaultPageStore.removePageData(DefaultPageStore.java:108)
>       at 
> org.apache.wicket.pageStore.DefaultPageStore.unbind(DefaultPageStore.java:156)
>       at 
> org.apache.wicket.page.PageStoreManager.sessionExpired(PageStoreManager.java:413)
>       at org.apache.wicket.Application.sessionUnbound(Application.java:475)
>       at 
> org.apache.wicket.protocol.http.WebApplication.sessionUnbound(WebApplication.java:509)
>       at 
> org.apache.wicket.session.HttpSessionStore$SessionBindingListener.valueUnbound(HttpSessionStore.java:454)
>       at 
> org.apache.catalina.session.StandardSession.removeAttribute(StandardSession.java:1380)
>       at 
> org.apache.catalina.session.StandardSession.expire(StandardSession.java:761)
>       at 
> org.apache.catalina.session.StandardSession.isValid(StandardSession.java:600)
>       at 
> org.apache.catalina.session.StandardManager.processExpires(StandardManager.java:786)
>       at 
> org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4822)
>       at 
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1620)
>       at 
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1609)
>       at java.lang.Thread.run(Thread.java:595)
> |#]
> [#|2012-10-30T17:23:31.173+0100|SEVERE|sun-appserver-ee8.1_02|org.apache.catalina.core.ContainerBase|_ThreadID=22;|Exception
>  invoking periodic operation: 
> java.lang.NullPointerException
>       at 
> java.util.concurrent.LinkedBlockingQueue$Itr.<init>(LinkedBlockingQueue.java:624)
>       at 
> java.util.concurrent.LinkedBlockingQueue.iterator(LinkedBlockingQueue.java:605)
>       at 
> org.apache.wicket.pageStore.AsynchronousDataStore.removeData(AsynchronousDataStore.java:184)
>       at 
> org.apache.wicket.pageStore.DefaultPageStore.removePageData(DefaultPageStore.java:108)
>       at 
> org.apache.wicket.pageStore.DefaultPageStore.unbind(DefaultPageStore.java:156)
>       at 
> org.apache.wicket.page.PageStoreManager.sessionExpired(PageStoreManager.java:413)
>       at org.apache.wicket.Application.sessionUnbound(Application.java:475)
>       at 
> org.apache.wicket.protocol.http.WebApplication.sessionUnbound(WebApplication.java:509)
>       at 
> org.apache.wicket.session.HttpSessionStore$SessionBindingListener.valueUnbound(HttpSessionStore.java:454)
>       at 
> org.apache.catalina.session.StandardSession.removeAttribute(StandardSession.java:1380)
>       at 
> org.apache.catalina.session.StandardSession.expire(StandardSession.java:761)
>       at 
> org.apache.catalina.session.StandardSession.isValid(StandardSession.java:600)
>       at 
> org.apache.catalina.session.StandardManager.processExpires(StandardManager.java:786)
>       at 
> org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4822)
>       at 
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1620)
>       at 
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1609)
>       at java.lang.Thread.run(Thread.java:595)
> |#]
> [#|2012-10-30T17:24:31.177+0100|SEVERE|sun-appserver-ee8.1_02|org.apache.catalina.core.ContainerBase|_ThreadID=22;|Exception
>  invoking periodic operation: 
> java.lang.NullPointerException
>       at 
> java.util.concurrent.LinkedBlockingQueue$Itr.<init>(LinkedBlockingQueue.java:624)
>       at 
> java.util.concurrent.LinkedBlockingQueue.iterator(LinkedBlockingQueue.java:605)
>       at 
> org.apache.wicket.pageStore.AsynchronousDataStore.removeData(AsynchronousDataStore.java:184)
>       at 
> org.apache.wicket.pageStore.DefaultPageStore.removePageData(DefaultPageStore.java:108)
>       at 
> org.apache.wicket.pageStore.DefaultPageStore.unbind(DefaultPageStore.java:156)
>       at 
> org.apache.wicket.page.PageStoreManager.sessionExpired(PageStoreManager.java:413)
>       at org.apache.wicket.Application.sessionUnbound(Application.java:475)
>       at 
> org.apache.wicket.protocol.http.WebApplication.sessionUnbound(WebApplication.java:509)
>       at 
> org.apache.wicket.session.HttpSessionStore$SessionBindingListener.valueUnbound(HttpSessionStore.java:454)
>       at 
> org.apache.catalina.session.StandardSession.removeAttribute(StandardSession.java:1380)
>       at 
> org.apache.catalina.session.StandardSession.expire(StandardSession.java:761)
>       at 
> org.apache.catalina.session.StandardSession.isValid(StandardSession.java:600)
>       at 
> org.apache.catalina.session.StandardManager.processExpires(StandardManager.java:786)
>       at 
> org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4822)
>       at 
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1620)
>       at 
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1609)
>       at java.lang.Thread.run(Thread.java:595)
> |#]

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to