You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ode.apache.org by Jim Alateras <ji...@comware.com.au> on 2006/11/11 07:43:48 UTC

NullPointerException when executing a process

I get the following NullPointerException when executing a BPEL process, 
which calls another BPEL process in the same deploy unit.

Any idea?

elementName={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeOutput 
channel=InvokeResponseChannel#26)
DEBUG - BpelRuntimeContextImpl.invoke(667) | INVOKE PARTNER (SEP): 
sessionId=null partnerSessionId=null
DEBUG - MessageExchangeImpl.setPortOp(171) | Mex[7].setPortOp(PortType: 
name={http://www.example.org/goodbyeWorld/wsdl/200611}Goodby
eWorldPT
Operation: name=goodbye
style=REQUEST_RESPONSE,1
Input: name=null
Message: 
name={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeRequestMessage
Part: name=inMsg
elementName={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeInput
Output: name=null
Message: 
name={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeResponseMessage
Part: name=outMsg
elementName={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeOutput,Operation: 
name=goodbye
style=REQUEST_RESPONSE,1
Input: name=null
Message: 
name={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeRequestMessage
Part: name=inMsg
elementName={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeInput
Output: name=null
Message: 
name={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeResponseMessage
Part: name=outMsg
elementName={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeOutput)
DEBUG - MessageExchangeContextImpl.invokePartner(47) | Invoking a 
partner operation: goodbye
DEBUG - MessageExchangeContextImpl.invokePartner(51) | The service to 
invoke is the external service org.apache.ode.axis2.ExternalSe
rvice@47b3ee
ERROR - JacobVPU$JacobThreadImpl.run(479) | Method "run" in class 
"org.apache.ode.bpel.runtime.INVOKE" threw an unexpected exception
.
java.lang.NullPointerException: elem parameter must not be null!
         at 
org.apache.ode.utils.DOMUtils.getFirstChildElement(DOMUtils.java:215)
         at org.apache.ode.axis2.util.SOAPUtils.wrap(SOAPUtils.java:74)
         at 
org.apache.ode.axis2.ExternalService.invoke(ExternalService.java:78)
         at 
org.apache.ode.axis2.MessageExchangeContextImpl.invokePartner(MessageExchangeContextImpl.java:52)
         at 
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invoke(BpelRuntimeContextImpl.java:690)
         at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:95)
         at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at 
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:467)
         at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:148)
         at 
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:730)
         at 
org.apache.ode.bpel.engine.BpelProcess$PartnerLinkMyRoleImpl.invokeMyRole(BpelProcess.java:467)
         at 
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:170)
         at 
org.apache.ode.bpel.engine.MyRoleMessageExchangeImpl.invoke(MyRoleMessageExchangeImpl.java:114)
         at 
org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:121)
         at 
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:78)
         at 
org.apache.ode.axis2.hooks.ODEMessageReceiver.receive(ODEMessageReceiver.java:53)
         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:454)
         at 
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:284)
         at 
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:136)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
         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.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:869)
         at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
         at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
         at 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
         at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
         at java.lang.Thread.run(Thread.java:595)
java.lang.RuntimeException: java.lang.NullPointerException: elem 
parameter must not be null!
         at 
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:480)
         at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:148)
         at 
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:730)
         at 
org.apache.ode.bpel.engine.BpelProcess$PartnerLinkMyRoleImpl.invokeMyRole(BpelProcess.java:467)
         at 
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:170)
         at 
org.apache.ode.bpel.engine.MyRoleMessageExchangeImpl.invoke(MyRoleMessageExchangeImpl.java:114)
         at 
org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:121)
         at 
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:78)
         at 
org.apache.ode.axis2.hooks.ODEMessageReceiver.receive(ODEMessageReceiver.java:53)
         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:454)
         at 
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:284)
         at 
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:136)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
         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.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:869)
         at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
         at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
         at 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
         at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
         at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException: elem parameter must not be null!
         at 
org.apache.ode.utils.DOMUtils.getFirstChildElement(DOMUtils.java:215)
         at org.apache.ode.axis2.util.SOAPUtils.wrap(SOAPUtils.java:74)
         at 
org.apache.ode.axis2.ExternalService.invoke(ExternalService.java:78)
         at 
org.apache.ode.axis2.MessageExchangeContextImpl.invokePartner(MessageExchangeContextImpl.java:52)
         at 
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invoke(BpelRuntimeContextImpl.java:690)
         at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:95)
         at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at 
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:467)
         ... 27 more
ERROR - ODEService.onAxisMessageExchange(140) | Rolling back ODE MEX 
{MyRoleMex#6 [Client -8tfxur6la2dgepv92lo7nu] calling {http://w
ww.example.org/helloWorld/wsdl/200611}HelloWorldService.hello(...)}
DEBUG - ODEService.onAxisMessageExchange(167) | Handling response for 
MEX {MyRoleMex#6 [Client -8tfxur6la2dgepv92lo7nu] calling {htt
p://www.example.org/helloWorld/wsdl/200611}HelloWorldService.hello(...)}
DEBUG - ODEService.onResponse(237) | Received response message <?xml 
version="1.0" encoding="UTF-8"?>
<HelloOutput xmlns="http://www.example.org/helloWorld/wsdl/200611" 
xmlns:twsdl="http://www.example.org/helloWorld/wsdl/200611">
               <twsdl:out>Hello Jimbo</twsdl:out>
             </HelloOutput>





cheers
</jima>



































Re: NullPointerException when executing a process

Posted by Matthieu Riou <ma...@gmail.com>.
Hi Jim,

This occurs because the engine is trying to send an empty message, which
can't really be sent properly. I'll improve the error message but you should
look for another error or fault before that which would explain why it's
sending something empty.

Thanks,

Matthieu

On 11/10/06, Jim Alateras <ji...@comware.com.au> wrote:
>
>
> I get the following NullPointerException when executing a BPEL process,
> which calls another BPEL process in the same deploy unit.
>
> Any idea?
>
> elementName={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeOutput
> channel=InvokeResponseChannel#26)
> DEBUG - BpelRuntimeContextImpl.invoke(667) | INVOKE PARTNER (SEP):
> sessionId=null partnerSessionId=null
> DEBUG - MessageExchangeImpl.setPortOp(171) | Mex[7].setPortOp(PortType:
> name={http://www.example.org/goodbyeWorld/wsdl/200611}Goodby
> eWorldPT
> Operation: name=goodbye
> style=REQUEST_RESPONSE,1
> Input: name=null
> Message:
> name={
> http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeRequestMessage
> Part: name=inMsg
> elementName={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeInput
> Output: name=null
> Message:
> name={
> http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeResponseMessage
> Part: name=outMsg
> elementName={
> http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeOutput,Operation:
> name=goodbye
> style=REQUEST_RESPONSE,1
> Input: name=null
> Message:
> name={
> http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeRequestMessage
> Part: name=inMsg
> elementName={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeInput
> Output: name=null
> Message:
> name={
> http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeResponseMessage
> Part: name=outMsg
> elementName={http://www.example.org/goodbyeWorld/wsdl/200611}GoodbyeOutput
> )
> DEBUG - MessageExchangeContextImpl.invokePartner(47) | Invoking a
> partner operation: goodbye
> DEBUG - MessageExchangeContextImpl.invokePartner(51) | The service to
> invoke is the external service org.apache.ode.axis2.ExternalSe
> rvice@47b3ee
> ERROR - JacobVPU$JacobThreadImpl.run(479) | Method "run" in class
> "org.apache.ode.bpel.runtime.INVOKE" threw an unexpected exception
> .
> java.lang.NullPointerException: elem parameter must not be null!
>          at
> org.apache.ode.utils.DOMUtils.getFirstChildElement(DOMUtils.java:215)
>          at org.apache.ode.axis2.util.SOAPUtils.wrap(SOAPUtils.java:74)
>          at
> org.apache.ode.axis2.ExternalService.invoke(ExternalService.java:78)
>          at
> org.apache.ode.axis2.MessageExchangeContextImpl.invokePartner(
> MessageExchangeContextImpl.java:52)
>          at
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invoke(
> BpelRuntimeContextImpl.java:690)
>          at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:95)
>          at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
>          at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:25)
>          at java.lang.reflect.Method.invoke(Method.java:585)
>          at
> org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:467)
>          at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:148)
>          at
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(
> BpelRuntimeContextImpl.java:730)
>          at
> org.apache.ode.bpel.engine.BpelProcess$PartnerLinkMyRoleImpl.invokeMyRole(
> BpelProcess.java:467)
>          at
> org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:170)
>          at
> org.apache.ode.bpel.engine.MyRoleMessageExchangeImpl.invoke(
> MyRoleMessageExchangeImpl.java:114)
>          at
> org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:121)
>          at
> org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(
> ODEMessageReceiver.java:78)
>          at
> org.apache.ode.axis2.hooks.ODEMessageReceiver.receive(
> ODEMessageReceiver.java:53)
>          at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java
> :454)
>          at
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(
> HTTPTransportUtils.java:284)
>          at
> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:136)
>          at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>          at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>          at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:252)
>          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.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:869)
>          at
>
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection
> (Http11BaseProtocol.java:664)
>          at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
> PoolTcpEndpoint.java:527)
>          at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(
> LeaderFollowerWorkerThread.java:80)
>          at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool.java:684)
>          at java.lang.Thread.run(Thread.java:595)
> java.lang.RuntimeException: java.lang.NullPointerException: elem
> parameter must not be null!
>          at
> org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:480)
>          at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:148)
>          at
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(
> BpelRuntimeContextImpl.java:730)
>          at
> org.apache.ode.bpel.engine.BpelProcess$PartnerLinkMyRoleImpl.invokeMyRole(
> BpelProcess.java:467)
>          at
> org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:170)
>          at
> org.apache.ode.bpel.engine.MyRoleMessageExchangeImpl.invoke(
> MyRoleMessageExchangeImpl.java:114)
>          at
> org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:121)
>          at
> org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(
> ODEMessageReceiver.java:78)
>          at
> org.apache.ode.axis2.hooks.ODEMessageReceiver.receive(
> ODEMessageReceiver.java:53)
>          at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java
> :454)
>          at
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(
> HTTPTransportUtils.java:284)
>          at
> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:136)
>          at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>          at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>          at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:252)
>          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.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:869)
>          at
>
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection
> (Http11BaseProtocol.java:664)
>          at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(
> PoolTcpEndpoint.java:527)
>          at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(
> LeaderFollowerWorkerThread.java:80)
>          at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool.java:684)
>          at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.NullPointerException: elem parameter must not be
> null!
>          at
> org.apache.ode.utils.DOMUtils.getFirstChildElement(DOMUtils.java:215)
>          at org.apache.ode.axis2.util.SOAPUtils.wrap(SOAPUtils.java:74)
>          at
> org.apache.ode.axis2.ExternalService.invoke(ExternalService.java:78)
>          at
> org.apache.ode.axis2.MessageExchangeContextImpl.invokePartner(
> MessageExchangeContextImpl.java:52)
>          at
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invoke(
> BpelRuntimeContextImpl.java:690)
>          at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:95)
>          at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
>          at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:25)
>          at java.lang.reflect.Method.invoke(Method.java:585)
>          at
> org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:467)
>          ... 27 more
> ERROR - ODEService.onAxisMessageExchange(140) | Rolling back ODE MEX
> {MyRoleMex#6 [Client -8tfxur6la2dgepv92lo7nu] calling {http://w
> ww.example.org/helloWorld/wsdl/200611}HelloWorldService.hello(...)}
> DEBUG - ODEService.onAxisMessageExchange(167) | Handling response for
> MEX {MyRoleMex#6 [Client -8tfxur6la2dgepv92lo7nu] calling {htt
> p://www.example.org/helloWorld/wsdl/200611}HelloWorldService.hello(...)}
> DEBUG - ODEService.onResponse(237) | Received response message <?xml
> version="1.0" encoding="UTF-8"?>
> <HelloOutput xmlns="http://www.example.org/helloWorld/wsdl/200611"
> xmlns:twsdl="http://www.example.org/helloWorld/wsdl/200611">
>                <twsdl:out>Hello Jimbo</twsdl:out>
>              </HelloOutput>
>
>
>
>
>
> cheers
> </jima>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>