Hi all,
I did some further debugging, and it seems to me that the invoking
style does not get set in the MessageContextDao except in the case
where ODE invokes using p2p (process 2 process) style.

According to what I see this style needs to be set inside the
invokePersisted method of the PartnerLinkPartnerRoleImpl class.

Does anybody has sample where ODE invoke an external service other
than a process deployed in the same ODE engine.

Thanks,
Thilina

On 10/26/07, Thilina Gunarathne <[EMAIL PROTECTED]> wrote:
> Hi all,
> I tried to modify the HelloWorld sample to invoke an external service.
> The external service was invoked successfully and the response was
> received to ODE..
> At this point  the process fails with a NPE.
>
> PartnerLinkPartnerRoleImpl line 62..
> PartnerRoleMessageExchangeImpl createPartnerRoleMex(MessageExchangeDAO 
> mexdao) {
>         InvocationStyle istyle = mexdao.getInvocationStyle();
>         ......
>         switch (istyle) {
>
> NPE occurs due to the style being NULL.
>
> Am I doing anything wrong?.. (BPEL & the WSDL docs are attached).
>
> But IMHO the NPE needs be checked and should throw a meaningful
> exception.. Also the value for getInvocationStyle() in all of the
> MessageExchangeDAO implementations have the possibility to be  NULL..
>
> thanks,
> Thilina
>
> org.apache.ode.bpel.iapi.BpelEngineException: java.lang.NullPointerException
>         at 
> org.apache.ode.bpel.engine.BpelServerImpl.getMessageExchange(BpelServerImpl.java:597)
>         at 
> org.apache.ode.axis2.ExternalService.reply(ExternalService.java:282)
>         at 
> org.apache.ode.axis2.ExternalService.invoke(ExternalService.java:145)
>         at 
> org.apache.ode.axis2.MessageExchangeContextImpl.invokePartnerUnreliable(MessageExchangeContextImpl.java:67)
>         at 
> org.apache.ode.bpel.engine.PartnerLinkPartnerRoleImpl.invokeInMem(PartnerLinkPartnerRoleImpl.java:208)
>         at 
> org.apache.ode.bpel.engine.PartnerLinkPartnerRoleImpl.invokeIL(PartnerLinkPartnerRoleImpl.java:120)
>         at 
> org.apache.ode.bpel.engine.BpelProcess.invokePartner(BpelProcess.java:1290)
>         at 
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invoke(BpelRuntimeContextImpl.java:731)
>         at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:96)
>         at sun.reflect.GeneratedMethodAccessor57.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:451)
>         at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
>         at 
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:762)
>         at 
> org.apache.ode.bpel.engine.BpelProcess.executeCreateInstance(BpelProcess.java:314)
>         at org.apache.ode.bpel.engine.BpelProcess$2.call(BpelProcess.java:261)
>         at org.apache.ode.bpel.engine.BpelProcess$2.call(BpelProcess.java:260)
>         at 
> org.apache.ode.bpel.engine.BpelProcess$ProcessCallable.call(BpelProcess.java:1128)
>         at 
> org.apache.ode.bpel.engine.BpelInstanceWorker.doInstanceWork(BpelInstanceWorker.java:174)
>         at 
> org.apache.ode.bpel.engine.BpelInstanceWorker.execInCurrentThread(BpelInstanceWorker.java:108)
>         at 
> org.apache.ode.bpel.engine.BpelProcess.doInstanceWork(BpelProcess.java:420)
>         at 
> org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:259)
>         at 
> org.apache.ode.bpel.engine.MyRoleMessageExchangeImpl.doInvoke(MyRoleMessageExchangeImpl.java:132)
>         at 
> org.apache.ode.bpel.engine.UnreliableMyRoleMessageExchangeImpl$1.call(UnreliableMyRoleMessageExchangeImpl.java:48)
>         at 
> org.apache.ode.bpel.engine.UnreliableMyRoleMessageExchangeImpl$1.call(UnreliableMyRoleMessageExchangeImpl.java:47)
>         at 
> org.apache.ode.bpel.engine.BpelProcess$ProcessCallable.call(BpelProcess.java:1128)
>         at 
> org.apache.ode.bpel.engine.Contexts.execTransaction(Contexts.java:105)
>         at 
> org.apache.ode.bpel.engine.BpelServerImpl$TransactedCallable.call(BpelServerImpl.java:833)
>         at 
> org.apache.ode.bpel.engine.BpelServerImpl$ServerCallable.call(BpelServerImpl.java:811)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:123)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>         at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.NullPointerException
>         at 
> org.apache.ode.bpel.engine.PartnerLinkPartnerRoleImpl.createPartnerRoleMex(PartnerLinkPartnerRoleImpl.java:66)
>         at 
> org.apache.ode.bpel.engine.BpelProcess.createPartnerRoleMex(BpelProcess.java:889)
>         at 
> org.apache.ode.bpel.engine.BpelServerImpl$3.call(BpelServerImpl.java:578)
>         at 
> org.apache.ode.bpel.engine.BpelServerImpl$3.call(BpelServerImpl.java:555)
>         at 
> org.apache.ode.bpel.engine.BpelServerImpl.getMessageExchange(BpelServerImpl.java:591)
>         ... 34 more
> 12:58:19,997 ERROR [ExternalService] Error executing reply
> transaction; reply will be lost.
> org.apache.ode.bpel.iapi.BpelEngineException: java.lang.NullPointerException
>         at 
> org.apache.ode.bpel.engine.BpelServerImpl.getMessageExchange(BpelServerImpl.java:597)
>         at 
> org.apache.ode.axis2.ExternalService.reply(ExternalService.java:282)
>         at 
> org.apache.ode.axis2.ExternalService.invoke(ExternalService.java:145)
>         at 
> org.apache.ode.axis2.MessageExchangeContextImpl.invokePartnerUnreliable(MessageExchangeContextImpl.java:67)
>         at 
> org.apache.ode.bpel.engine.PartnerLinkPartnerRoleImpl.invokeInMem(PartnerLinkPartnerRoleImpl.java:208)
>         at 
> org.apache.ode.bpel.engine.PartnerLinkPartnerRoleImpl.invokeIL(PartnerLinkPartnerRoleImpl.java:120)
>         at 
> org.apache.ode.bpel.engine.BpelProcess.invokePartner(BpelProcess.java:1290)
>         at 
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invoke(BpelRuntimeContextImpl.java:731)
>         at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:96)
>         at sun.reflect.GeneratedMethodAccessor57.invoke(Unknown Source)
>
> --
> Thilina Gunarathne  - http://thilinag.blogspot.com
>
>


-- 
Thilina Gunarathne  - http://thilinag.blogspot.com

Reply via email to