Hi Joy,
Did you set the parameter "inputMechanism" in WSWithComplexTypes
to be "composite"? If the port type is xmltoken, that usually
means the corresponding SOAP parameter is composite. By setting
"inputMechanism" to "composite", WSWithComplexTypes will construct
an actor that tries to build the composite SOAP type.
Can you send me your workflow?
--dan
On 2/26/13 8:12 PM, 袁钢 wrote:
Hello,everybody,
I have some troubles in using the WSWithComplexTypes Actors.
"HelloWorld2.wsdl" is a BPEL service which is provided by the Apache
ODE's example, and if I set the wsdl properties of the actor with it , the
actor can identify the port part's type successfully and the process can
run well.
The process "BpelHello.bpel" is modeled by the Eclipse BPEL Designer
Tools, and it produces the file "BpelHelloArtifacts.wsdl" which is in the
attachment.The process can run successfully in ODE Engine. And it also can
run successfully through Command Line of SENDSOAP instruction . If I set
the wsdl properties of the actor with this wsdl file , the actor identify
the port part's type is XMLTOKEN, and i draw the process as the
"wrong.png"‘s show which located in the attachment ,it runs in error, the
exceptions as follow:
ptolemy.kernel.util.IllegalActionException: Error invoking service.
in .callBpel.WSWithComplexTypes
Because:
Unexpected element in SOAP body: message {
http://ode/bpel/unit-test.wsdl}process element {
http://ode/bpel/unit-test.wsdl}BpelHelloRequest.
at org.sdm.spa.WSWithComplexTypes.fire(WSWithComplexTypes.java:403)
at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:466)
at
ptolemy.actor.sched.StaticSchedulingDirector.fire(StaticSchedulingDirector.java:208)
at ptolemy.actor.CompositeActor.fire(CompositeActor.java:450)
at ptolemy.actor.Manager.iterate(Manager.java:767)
at ptolemy.actor.Manager.execute(Manager.java:352)
at ptolemy.actor.Manager.run(Manager.java:1182)
at ptolemy.actor.Manager$PtolemyRunThread.run(Manager.java:1725)
Caused by: Unexpected element in SOAP body: message {
http://ode/bpel/unit-test.wsdl}process element {
http://ode/bpel/unit-test.wsdl}BpelHelloRequest.
at
org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
at
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
at
org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown
Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at
org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at
org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:1792)
at
org.sdm.spa.WSWithComplexTypes._invokeMethod(WSWithComplexTypes.java:1644)
at org.sdm.spa.WSWithComplexTypes.fire(WSWithComplexTypes.java:398)
... 7 more
Caused by: AxisFault
faultCode: {java:package org.apache.ode.axis2}org.apache.ode.axis2.OdeFault
faultSubcode:
faultString: Unexpected element in SOAP body: message {
http://ode/bpel/unit-test.wsdl}process element {
http://ode/bpel/unit-test.wsdl}BpelHelloRequest.
faultActor:
faultNode:
faultDetail:
{}Exception:org.apache.ode.axis2.OdeFault: Unexpected element in SOAP body:
message {http://ode/bpel/unit-test.wsdl}process element {
http://ode/bpel/unit-test.wsdl}BpelHelloRequest.
at
org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:146)
at
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:69)
at
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:52)
at
org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:96)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145)
at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:120)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.ode.axis2.OdeFault: Unexpected element in SOAP body:
message {http://ode/bpel/unit-test.wsdl}process element {
http://ode/bpel/unit-test.wsdl}BpelHelloRequest.
at
org.apache.ode.axis2.util.SoapMessageConverter.extractSoapBodyParts(SoapMessageConverter.java:396)
at
org.apache.ode.axis2.util.SoapMessageConverter.parseSoapRequest(SoapMessageConverter.java:318)
at
org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:117)
... 20 more
Caused by: java.lang.IllegalArgumentException: Unexpected element in SOAP
body: message {http://ode/bpel/unit-test.wsdl}process element {
http://ode/bpel/unit-test.wsdl}BpelHelloRequest.
at
org.apache.ode.utils.wsdl.Messages.msgUnexpectedElementInSOAPBody(Messages.java:140)
... 23 more
Unexpected element in SOAP body: message {
http://ode/bpel/unit-test.wsdl}process element {
http://ode/bpel/unit-test.wsdl}BpelHelloRequest.
at
org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
at
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
at
org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown
Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at
org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at
org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:1792)
at
org.sdm.spa.WSWithComplexTypes._invokeMethod(WSWithComplexTypes.java:1644)
at org.sdm.spa.WSWithComplexTypes.fire(WSWithComplexTypes.java:398)
at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:466)
at
ptolemy.actor.sched.StaticSchedulingDirector.fire(StaticSchedulingDirector.java:208)
at ptolemy.actor.CompositeActor.fire(CompositeActor.java:450)
at ptolemy.actor.Manager.iterate(Manager.java:767)
at ptolemy.actor.Manager.execute(Manager.java:352)
at ptolemy.actor.Manager.run(Manager.java:1182)
at ptolemy.actor.Manager$PtolemyRunThread.run(Manager.java:1725)
I wonder if i misunderstand the actor and use inadequate one ,or set some
wrong parameters.
Thanks very much
Regards
— Joy
_______________________________________________
Kepler-users mailing list
[email protected]
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
_______________________________________________
Kepler-users mailing list
[email protected]
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users