[jboss-user] [JBoss Seam] - @CreateProcess and SeamTest - help w. NullPointerException

bsmithjj do-not-reply at jboss.com
Fri Nov 3 15:57:13 EST 2006


I am trying to test the creation of a new jBPM ProcessInstance.  My SFSB's method is:


  |     @CreateProcess(definition = "RequestNewAccess")
  |     public String sendRequest() {
  |         log.info("sendRequest() : accessRequest -> " + this.accessRequest);
  |         log.info("sendRequest() : Actor -> "+this.actor);
  |         return "success";
  |     }
  | 

from my SeamTest, I have setup an authenticated user, mapped that onto the jBPM Actor (using answer to my last question - thanks), etc... Anyway, I invoke the sendRequest() method in the test like such:


  |             ....
  |             @Override
  |             protected void invokeApplication() {
  | 
  |                 ....
  | 
  |                 AccessRequestManager accessReqMgr = (AccessRequestManager)getInstance("accessRequestManager");
  |                 assert accessReqMgr != null;
  |                 accessReqMgr.chooseApplicationsForAdd();
  |                 assert "success".equals(accessReqMgr.sendRequest());
  | 
  |             }
  |             ....
  | 

and I get the following NullPointerException:


  | 15:46:48,478 ERROR org.jboss.seam.interceptors.ExceptionInterceptor.(handle:309) - redirecting to debug page
  | javax.ejb.EJBException: java.lang.NullPointerException
  | 	at org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:69)
  | 	at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
  | 	at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:197)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  | 	at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  | 	at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:81)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  | 	at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:78)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  | 	at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  | 	at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  | 	at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:189)
  | 	at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:98)
  | 	at $Proxy65.sendRequest(Unknown Source)
  | 	at com.evergreen.accesscontrol.AccessRequestManager$$FastClassByCGLIB$$64e7314d.invoke(<generated>)
  | 	at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
  | 	at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:47)
  | 	at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:67)
  | 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
  | 	at org.jboss.seam.interceptors.ExceptionInterceptor.handleExceptions(ExceptionInterceptor.java:28)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  | 	at java.lang.reflect.Method.invoke(Unknown Source)
  | 	at org.jboss.seam.util.Reflections.invoke(Reflections.java:17)
  | 	at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:172)
  | 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:66)
  | 	at org.jboss.seam.interceptors.AsynchronousInterceptor.invokeAsynchronouslyIfNecessary(AsynchronousInterceptor.java:29)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  | 	at java.lang.reflect.Method.invoke(Unknown Source)
  | 	at org.jboss.seam.util.Reflections.invoke(Reflections.java:17)
  | 	at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:172)
  | 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:66)
  | 	at org.jboss.seam.intercept.RootInterceptor.invokeInContexts(RootInterceptor.java:168)
  | 	at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:141)
  | 	at org.jboss.seam.intercept.RootInterceptor.aroundInvoke(RootInterceptor.java:128)
  | 	at org.jboss.seam.intercept.ClientSideInterceptor.interceptInvocation(ClientSideInterceptor.java:60)
  | 	at org.jboss.seam.intercept.ClientSideInterceptor.intercept(ClientSideInterceptor.java:47)
  | 	at com.evergreen.accesscontrol.AccessRequestManager$$EnhancerByCGLIB$$d3fda0bf.sendRequest(<generated>)
  | 	at com.evergreen.accesscontrol.AccessRequestManagerTest$1.invokeApplication(AccessRequestManagerTest.java:98)
  | 	at org.jboss.seam.mock.SeamTest$Script.run(SeamTest.java:255)
  | 	at com.evergreen.accesscontrol.AccessRequestManagerTest.test_sendRequest(AccessRequestManagerTest.java:41)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  | 	at java.lang.reflect.Method.invoke(Unknown Source)
  | 	at org.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:552)
  | 	at org.testng.internal.Invoker.invokeMethod(Invoker.java:407)
  | 	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:778)
  | 	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:105)
  | 	at org.testng.TestRunner.privateRun(TestRunner.java:682)
  | 	at org.testng.TestRunner.run(TestRunner.java:566)
  | 	at org.testng.SuiteRunner.privateRun(SuiteRunner.java:220)
  | 	at org.testng.SuiteRunner.run(SuiteRunner.java:146)
  | 	at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:713)
  | 	at org.testng.TestNG.runSuitesLocally(TestNG.java:676)
  | 	at org.apache.maven.surefire.testng.TestNGExecutor.executeTestNG(TestNGExecutor.java:64)
  | 	at org.apache.maven.surefire.testng.TestNGXmlTestSuite.execute(TestNGXmlTestSuite.java:75)
  | 	at org.apache.maven.surefire.Surefire.run(Surefire.java:129)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  | 	at java.lang.reflect.Method.invoke(Unknown Source)
  | 	at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:225)
  | 	at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:747)
  | Caused by: java.lang.NullPointerException
  | 	at org.jboss.seam.interceptors.BusinessProcessInterceptor.afterInvocation(BusinessProcessInterceptor.java:94)
  | 	at org.jboss.seam.interceptors.BusinessProcessInterceptor.manageBusinessProcessContext(BusinessProcessInterceptor.java:50)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  | 	at java.lang.reflect.Method.invoke(Unknown Source)
  | 	at org.jboss.seam.util.Reflections.invoke(Reflections.java:17)
  | 	at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:172)
  | 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:66)
  | 	at org.jboss.seam.interceptors.ConversationalInterceptor.checkConversationForConversationalBean(ConversationalInterceptor.java:81)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  | 	at java.lang.reflect.Method.invoke(Unknown Source)
  | 	at org.jboss.seam.util.Reflections.invoke(Reflections.java:17)
  | 	at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:172)
  | 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:66)
  | 	at org.jboss.seam.interceptors.EventInterceptor.aroundInvoke(EventInterceptor.java:51)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  | 	at java.lang.reflect.Method.invoke(Unknown Source)
  | 	at org.jboss.seam.util.Reflections.invoke(Reflections.java:17)
  | 	at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:172)
  | 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:66)
  | 	at org.jboss.seam.interceptors.RemoveInterceptor.removeIfNecessary(RemoveInterceptor.java:40)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  | 	at java.lang.reflect.Method.invoke(Unknown Source)
  | 	at org.jboss.seam.util.Reflections.invoke(Reflections.java:17)
  | 	at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:172)
  | 	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:66)
  | 	at org.jboss.seam.intercept.RootInterceptor.invokeInContexts(RootInterceptor.java:168)
  | 	at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:141)
  | 	at org.jboss.seam.intercept.RootInterceptor.aroundInvoke(RootInterceptor.java:128)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  | 	at java.lang.reflect.Method.invoke(Unknown Source)
  | 	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.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
  | 	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:47)
  | 	at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  | 	at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
  | 	... 68 more
  | 

and, of course, the ProcessInstance is not created.   Line 94 in BusinessProcessInterceptor.java (from Seam) is:


  | BusinessProcess.instance().createProcess( tag.definition() );
  | 

one of the 4 references here is null....  maybe there is something missing from my test environment?   Any help appreciate.

Thanks,
Brad Smith


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3983105#3983105

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3983105



More information about the jboss-user mailing list