You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@lenya.apache.org by Emmanouil Batsis <ma...@geekologue.com> on 2005/11/01 14:05:42 UTC

[1.4] Policy URL and thread race or something?

Using the 1.4 trunk and JBoss 4.0.3: This exception occurs from time to time 
in different parts of the application. It appears to be a "thread race" issue 
because

- it does not occur always
- it does not occur in the same place
- it can dissappear after the page is refreshed a couple of times

Any ideas much appreciated. Below is the server log after the 
http://localhost:8080/lenya/default/admin/index.html url is accessed.

13:30:21,628 INFO  [sitemap] Redirecting to 'null/default/admin/index.html'
13:30:21,628 INFO  [access] 'default/admin/index.html' Processed by 
Apache Cocoon 2.1.8-rc1 in 616 milliseconds.
13:30:21,643 ERROR [handled-errors] java.lang.NullPointerException
org.apache.lenya.ac.AccessControlException: java.lang.NullPointerException
        at 
org.apache.lenya.cms.ac.DocumentPolicyManagerWrapper.getPolicyURL(DocumentPolicyManagerWrapper.java:99)
        at 
org.apache.lenya.cms.ac.DocumentPolicyManagerWrapper.getPolicy(DocumentPolicyManagerWrapper.java:212)
        at 
org.apache.lenya.ac.impl.PolicyAuthorizer.authorizePolicy(PolicyAuthorizer.java:109)
        at 
org.apache.lenya.ac.impl.PolicyAuthorizer.authorize(PolicyAuthorizer.java:170)
        at 
org.apache.lenya.ac.impl.PolicyAuthorizer.authorize(PolicyAuthorizer.java:92)
        at 
org.apache.lenya.ac.impl.DefaultAccessController.authorize(DefaultAccessController.java:116)
        at 
org.apache.lenya.ac.impl.BypassableAccessController.authorize(BypassableAccessController.java:155)
        at 
org.apache.lenya.cms.cocoon.acting.DelegatingAuthorizerAction.doAct(DelegatingAuthorizerAction.java:68)
        at 
org.apache.lenya.cms.cocoon.acting.AccessControlAction.act(AccessControlAction.java:86)
        at 
org.apache.lenya.cms.cocoon.acting.DelegatingAuthorizerAction.act(DelegatingAuthorizerAction.java:50)
        at 
org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:124)
        at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
        at 
org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:102)
        at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:46)
        at 
org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
        at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
        at 
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:142)
        at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
        at 
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:92)
        at 
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:234)
        at 
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:176)
        at 
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:248)
        at org.apache.cocoon.Cocoon.process(Cocoon.java:679)
        at 
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1154)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at 
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at 
org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
        at 
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
        at 
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
        at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
        at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
        at 
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
        at java.lang.Thread.run(Thread.java:534)
Caused by: java.lang.NullPointerException
        at 
org.apache.lenya.cms.repository.RepositoryUtil.getSession(RepositoryUtil.java:30)
        at 
org.apache.lenya.cms.ac.DocumentPolicyManagerWrapper.getPolicyURL(DocumentPolicyManagerWrapper.java:84)
        ... 43 more
13:30:21,728 INFO  [sitemap] Processing handle-errors at 
<map:handle-errors> - 
file:/opt/jboss-4.0.3/server/default/./deploy/lenya.war/sitemap.xmap:547:26
13:30:22,190 INFO  [access] 
'default/admin/null/default/admin/index.html' Processed by Apache Cocoon 
2.1.8-rc1 in 559 milliseconds.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
For additional commands, e-mail: user-help@lenya.apache.org


Re: [1.4] Policy URL and thread race or something?

Posted by Felix Röthenbacher <fe...@wyona.com>.
Hi Emmanouil

can you attach the full stack-trace of the exception you get to

http://issues.apache.org/bugzilla/show_bug.cgi?id=37224

Jetty and Tomcat used to have the same codebase so chances are high
that both implementations show this "phenomena".

Thanks

Felix


Emmanouil Batsis wrote:
> Hi Felix,
> 
> Thanks for your reply. 
> 
> On Tuesday 01 November 2005 16:06, Felix Röthenbacher wrote:
> 
>>see also: http://issues.apache.org/bugzilla/show_bug.cgi?id=37224
>>
>>The problem seems to have its origin in Jetty which IIRC is used
>>together with JBoss.
> 
> 
> The problem, after seeing the attachement, is indeed the same. However, the 
> problem does not come from Jetty (JBoss 4.0.3 uses Tomcat). I've inspected 
> both traces and they all come down to 
> 
> org.apache.lenya.cms.ac.DocumentPolicyManagerWrapper.getPolicyURL(DocumentPolicyManagerWrapper.java:84)
> 
> DocumentPolicyManagerWrapper line 84 reads 
> 
> Session session = RepositoryUtil.getSession(this.request, getLogger());
> 
> My understanding is that RepositoryUtil is supposed to return a non-null 
> session object so the problem is there right? 
> 
> Manos
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
> For additional commands, e-mail: user-help@lenya.apache.org
> 
> 

-- 
Felix Röthenbacher                  felix.roethenbacher@wyona.com
Wyona Inc.  -   Open Source Content Management   -   Apache Lenya
http://www.wyona.com                      http://lenya.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
For additional commands, e-mail: user-help@lenya.apache.org


Re: [1.4] Policy URL and thread race or something?

Posted by Emmanouil Batsis <ma...@geekologue.com>.
Hi Felix,

Thanks for your reply. 

On Tuesday 01 November 2005 16:06, Felix Röthenbacher wrote:
> see also: http://issues.apache.org/bugzilla/show_bug.cgi?id=37224
>
> The problem seems to have its origin in Jetty which IIRC is used
> together with JBoss.

The problem, after seeing the attachement, is indeed the same. However, the 
problem does not come from Jetty (JBoss 4.0.3 uses Tomcat). I've inspected 
both traces and they all come down to 

org.apache.lenya.cms.ac.DocumentPolicyManagerWrapper.getPolicyURL(DocumentPolicyManagerWrapper.java:84)

DocumentPolicyManagerWrapper line 84 reads 

Session session = RepositoryUtil.getSession(this.request, getLogger());

My understanding is that RepositoryUtil is supposed to return a non-null 
session object so the problem is there right? 

Manos

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
For additional commands, e-mail: user-help@lenya.apache.org


Re: [1.4] Policy URL and thread race or something?

Posted by Felix Röthenbacher <fe...@wyona.com>.
Hi Emmanouil

see also: http://issues.apache.org/bugzilla/show_bug.cgi?id=37224

The problem seems to have its origin in Jetty which IIRC is used
together with JBoss.

- Felix


Emmanouil Batsis wrote:
> Using the 1.4 trunk and JBoss 4.0.3: This exception occurs from time to time 
> in different parts of the application. It appears to be a "thread race" issue 
> because
> 
> - it does not occur always
> - it does not occur in the same place
> - it can dissappear after the page is refreshed a couple of times
> 
> Any ideas much appreciated. Below is the server log after the 
> http://localhost:8080/lenya/default/admin/index.html url is accessed.
> 
> 13:30:21,628 INFO  [sitemap] Redirecting to 'null/default/admin/index.html'
> 13:30:21,628 INFO  [access] 'default/admin/index.html' Processed by 
> Apache Cocoon 2.1.8-rc1 in 616 milliseconds.
> 13:30:21,643 ERROR [handled-errors] java.lang.NullPointerException
> org.apache.lenya.ac.AccessControlException: java.lang.NullPointerException
>         at 
> org.apache.lenya.cms.ac.DocumentPolicyManagerWrapper.getPolicyURL(DocumentPolicyManagerWrapper.java:99)
>         at 
> org.apache.lenya.cms.ac.DocumentPolicyManagerWrapper.getPolicy(DocumentPolicyManagerWrapper.java:212)
>         at 
> org.apache.lenya.ac.impl.PolicyAuthorizer.authorizePolicy(PolicyAuthorizer.java:109)
>         at 
> org.apache.lenya.ac.impl.PolicyAuthorizer.authorize(PolicyAuthorizer.java:170)
>         at 
> org.apache.lenya.ac.impl.PolicyAuthorizer.authorize(PolicyAuthorizer.java:92)
>         at 
> org.apache.lenya.ac.impl.DefaultAccessController.authorize(DefaultAccessController.java:116)
>         at 
> org.apache.lenya.ac.impl.BypassableAccessController.authorize(BypassableAccessController.java:155)
>         at 
> org.apache.lenya.cms.cocoon.acting.DelegatingAuthorizerAction.doAct(DelegatingAuthorizerAction.java:68)
>         at 
> org.apache.lenya.cms.cocoon.acting.AccessControlAction.act(AccessControlAction.java:86)
>         at 
> org.apache.lenya.cms.cocoon.acting.DelegatingAuthorizerAction.act(DelegatingAuthorizerAction.java:50)
>         at 
> org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:124)
>         at 
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
>         at 
> org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:102)
>         at 
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:46)
>         at 
> org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
>         at 
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
>         at 
> org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:142)
>         at 
> org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68)
>         at 
> org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:92)
>         at 
> org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:234)
>         at 
> org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:176)
>         at 
> org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:248)
>         at org.apache.cocoon.Cocoon.process(Cocoon.java:679)
>         at 
> org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1154)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>         at 
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>         at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>         at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>         at 
> org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
>         at 
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
>         at 
> org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
>         at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>         at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>         at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>         at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>         at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
>         at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
>         at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>         at 
> org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
>         at java.lang.Thread.run(Thread.java:534)
> Caused by: java.lang.NullPointerException
>         at 
> org.apache.lenya.cms.repository.RepositoryUtil.getSession(RepositoryUtil.java:30)
>         at 
> org.apache.lenya.cms.ac.DocumentPolicyManagerWrapper.getPolicyURL(DocumentPolicyManagerWrapper.java:84)
>         ... 43 more
> 13:30:21,728 INFO  [sitemap] Processing handle-errors at 
> <map:handle-errors> - 
> file:/opt/jboss-4.0.3/server/default/./deploy/lenya.war/sitemap.xmap:547:26
> 13:30:22,190 INFO  [access] 
> 'default/admin/null/default/admin/index.html' Processed by Apache Cocoon 
> 2.1.8-rc1 in 559 milliseconds.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
> For additional commands, e-mail: user-help@lenya.apache.org
> 
> 

-- 
Felix Röthenbacher                  felix.roethenbacher@wyona.com
Wyona Inc.  -   Open Source Content Management   -   Apache Lenya
http://www.wyona.com                      http://lenya.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
For additional commands, e-mail: user-help@lenya.apache.org