[jboss-jira] [JBoss JIRA] Commented: (JBPORTAL-1333) Executing ContentCreateNewVersionCommand causes NullPointerException

Sohil Shah (JIRA) jira-events at lists.jboss.org
Mon Apr 9 16:20:58 EDT 2007


    [ http://jira.jboss.com/jira/browse/JBPORTAL-1333?page=comments#action_12358713 ] 
            
Sohil Shah commented on JBPORTAL-1333:
--------------------------------------

FYI:

I have been able to reproduce this bug in the test suite. I will be fixing this issue in 2.6 CR1 release as indicated on this jira issue

> Executing ContentCreateNewVersionCommand causes NullPointerException
> --------------------------------------------------------------------
>
>                 Key: JBPORTAL-1333
>                 URL: http://jira.jboss.com/jira/browse/JBPORTAL-1333
>             Project: JBoss Portal
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Portal CMS
>    Affects Versions: 2.6.Beta1
>         Environment: Fedora Linux, JBoss-4.0.5.GA, JBoss Portal 2.6 Beta1
>            Reporter: Chunyun Zhao
>         Assigned To: Sohil Shah
>             Fix For: 2.6.CR1
>
>
> Following is the code in my application that fails with NullPointerException:
> 	Command cmd = repository.getCommandFactory().createContentCreateNewVersionCommand(cnt, true);
> 	repository.execute(cmd);
> Here is the stacktrace:
> java.lang.NullPointerException
>         at java.util.StringTokenizer.<init>(StringTokenizer.java:182)
>         at java.util.StringTokenizer.<init>(StringTokenizer.java:204)
>         at org.jboss.portal.cms.impl.jcr.command.ACLEnforcer.computeAccess(ACLEnforcer.java:361)
>         at org.jboss.portal.cms.impl.jcr.command.ACLEnforcer.hasWriteAccess(ACLEnforcer.java:266)
>         at org.jboss.portal.cms.impl.jcr.command.ACLEnforcer.hasAccess(ACLEnforcer.java:126)
>         at org.jboss.portal.cms.security.AuthorizationManagerImpl.checkPermission(AuthorizationManagerImpl.java:127)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
>         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
>         at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
>         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
>         at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
>         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
>         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
>         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
>         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
>         at $Proxy45.checkPermission(Unknown Source)
>         at org.jboss.portal.cms.impl.interceptors.ACLInterceptor.invoke(ACLInterceptor.java:190)
>         at org.jboss.portal.cms.CMSInterceptor.invoke(CMSInterceptor.java:36)
>         at org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
>         at org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
>         at org.jboss.portal.cms.impl.jcr.JCRCMS.execute(JCRCMS.java:593)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
>         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
>         at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
>         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
>         at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
>         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
>         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
>         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
>         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
>         at $Proxy493.execute(Unknown Source)
>         at com.vec.ContentManagementServiceBean.createFile(ContentManagementServiceBean.java:135)
>         at com.vec.ContentManagementServiceBean.store(ContentManagementServiceBean.java:95)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
>         at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
>         at net.taylor.trace.TraceInterceptor.invoke(TraceInterceptor.java:59)
>         at sun.reflect.GeneratedMethodAccessor275.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
>         at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
>         at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
>         at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:46)
>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
>         at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
>         ... 318 more
> After I dig into the source code, I believe the problem is with the hasWriteAccess and computeAccess methods of ACLEnforcer class. Basically when the command is ContentCreateNewVersionCommand, hasWriteAccess calls computeAccess with a null path which is then causing the NullPointerException.
> -Chunyun Zhao

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list