Hi Tammo,

indeed the getInput() is causing the NPE. (no Inputpart /-message was set
and could be parsed from the WSDL)
sadly I don't have access to an JIRA.

regards,
dominic



-----Ursprüngliche Nachricht-----
From: Tammo van Lessen
Sent: Friday, December 28, 2012 5:12 PM
To: user
Subject: Re: Problems (or even Bug?) within invoking of Webservice

Hi Dominic,

I guess you've hit a bug (though I'm not sure if this is the only location
where this scenario can cause troubles). Could you please file a JIRA? If
you have a debugger running, it would be valuable to know, which field
causes the NPE. My guess is that getInput().getMessage() returns null.

Thanks,
 Tammo


On Fri, Dec 28, 2012 at 3:28 PM, Dominic Pöllath <[email protected]>wrote:

The Apache ODE engine throws exception if i try to invoke webservice
without parameter. Because there is no InputMessage to the WebService.
As far as I know is there no need of input message (minOccurs="0" of
InputOperationMessage in W3C def).
A webservice with no input message should be supported, but as workaround
I’m using a empty messagepart with input message link.
It is working, but the WSDL file is not as clean as I thought it should
be. Anyway, is the ODE engine working as intended, and do I missing
something?

best regards,
dominic


<!—w3c tBindingOperation –>

<xs:complexType name="tBindingOperation">
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented">
<xs:sequence>
<xs:element name="input" type="wsdl:tBindingOperationMessage"
minOccurs="0"/>
<xs:element name="output" type="wsdl:tBindingOperationMessage"
minOccurs="0"/>
<xs:element name="fault" type="wsdl:tBindingOperationFault" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>


<!—used WSDL def–>

<wsdl:types>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
attributeFormDefault="unqualified" elementFormDefault="qualified"
targetNamespace="http://adito/webservice";>
<xs:element name="helloResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="returnValue" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</wsdl:types>
<wsdl:message name="helloOutput">
<wsdl:part name="parameters" element="tns:helloResponse"/>
</wsdl:message>
<wsdl:portType name="ws_helloworldPortType">
<wsdl:operation name="hello">
<wsdl:output message="tns:helloOutput"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="ws_helloworldSoapBinding"
type="tns:ws_helloworldPortType">
<soap:binding style="document" transport="
http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="hello">
<soap:operation soapAction="hello" style="document"/>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>

<!—Nullpointer Exception –>

Method "run" in class "org.apache.ode.bpel.runtime.INVOKE" threw an
unexpected exception.
java.lang.NullPointerException
    at org.apache.ode.bpel.runtime.INVOKE.setupOutbound(INVOKE.java:224)
    at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:72)
    at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    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:968)
    at
org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeNewInstance(PartnerLinkMyRoleImpl.java:208)
    at
org.apache.ode.bpel.engine.BpelProcess$1.invoke(BpelProcess.java:283)
    at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:238)
    at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:279)
    at
org.apache.ode.bpel.engine.BpelProcess.handleJobDetails(BpelProcess.java:426)
    at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:460)
    at
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:450)
    at org.apache.ode.il.MockScheduler.doExecute(MockScheduler.java:304)
    at org.apache.ode.il.MockScheduler.access$200(MockScheduler.java:47)
    at org.apache.ode.il.MockScheduler$4.call(MockScheduler.java:123)
    at
org.apache.ode.il.MockScheduler.execTransaction(MockScheduler.java:168)
    at
org.apache.ode.il.MockScheduler.execTransaction(MockScheduler.java:159)
    at org.apache.ode.il.MockScheduler$6.call(MockScheduler.java:190)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)
Scheduled job failed; jobDetail=JobDetails( instanceId: null mexId:
4611686018427387903 processId: {http://adito/bpel}Workflow-1 type:
INVOKE_INTERNAL channel: null correlatorId: null correlationKeySet: null
retryCount: null inMem: true detailsExt: {})
java.lang.RuntimeException: java.lang.NullPointerException
    at
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:464)
    at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
    at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:968)
    at
org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeNewInstance(PartnerLinkMyRoleImpl.java:208)
    at
org.apache.ode.bpel.engine.BpelProcess$1.invoke(BpelProcess.java:283)
    at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:238)
    at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:279)
    at
org.apache.ode.bpel.engine.BpelProcess.handleJobDetails(BpelProcess.java:426)
    at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:460)
    at
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:450)
    at org.apache.ode.il.MockScheduler.doExecute(MockScheduler.java:304)
    at org.apache.ode.il.MockScheduler.access$200(MockScheduler.java:47)
    at org.apache.ode.il.MockScheduler$4.call(MockScheduler.java:123)
    at
org.apache.ode.il.MockScheduler.execTransaction(MockScheduler.java:168)
    at
org.apache.ode.il.MockScheduler.execTransaction(MockScheduler.java:159)
    at org.apache.ode.il.MockScheduler$6.call(MockScheduler.java:190)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.NullPointerException
    at org.apache.ode.bpel.runtime.INVOKE.setupOutbound(INVOKE.java:224)
    at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:72)
    at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:451)
    ... 20 more
Caught an exception during transaction
java.lang.RuntimeException: Scheduled transaction failed unexpectedly:
transaction will not be retried!.
    at org.apache.ode.il.MockScheduler.doExecute(MockScheduler.java:306)
    at org.apache.ode.il.MockScheduler.access$200(MockScheduler.java:47)
    at org.apache.ode.il.MockScheduler$4.call(MockScheduler.java:123)
    at
org.apache.ode.il.MockScheduler.execTransaction(MockScheduler.java:168)
    at
org.apache.ode.il.MockScheduler.execTransaction(MockScheduler.java:159)
    at org.apache.ode.il.MockScheduler$6.call(MockScheduler.java:190)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)
Caused by: org.apache.ode.bpel.iapi.Scheduler$JobProcessorException:
java.lang.RuntimeException: java.lang.NullPointerException
    at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:478)
    at
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:450)
    at org.apache.ode.il.MockScheduler.doExecute(MockScheduler.java:304)
    ... 10 more
Caused by: java.lang.RuntimeException: java.lang.NullPointerException
    at
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:464)
    at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
    at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:968)
    at
org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeNewInstance(PartnerLinkMyRoleImpl.java:208)
    at
org.apache.ode.bpel.engine.BpelProcess$1.invoke(BpelProcess.java:283)
    at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:238)
    at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:279)
    at
org.apache.ode.bpel.engine.BpelProcess.handleJobDetails(BpelProcess.java:426)
    at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:460)
    ... 12 more
Caused by: java.lang.NullPointerException
    at org.apache.ode.bpel.runtime.INVOKE.setupOutbound(INVOKE.java:224)
    at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:72)
    at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:451)
    ... 20 more




--
Tammo van Lessen - http://www.taval.de

Reply via email to