The most important rule is to make sure both <to> and <from> expression
result in one and only one selected element. If you get zero element,
double-check your namespace prefix and bindings. Last, remember that you
must initialize your variables (most often with <literal>'s) before
assigning into them, unless your are reassigning the whole variable (e.g.
directly into $variable, or $variable.part)
alex
On 8/16/07, Prasanna Rajaperumal <[EMAIL PROTECTED]> wrote:
>
> Hi all,
>
>
>
> I am trying to create a BPEL process and get it too run in ODE.
>
> Its successfully compiled. When I try to run I get a
>
> *ERROR - GeronimoLog.error(104) | Assignment Fault: {
> http://schemas.xmlsoap.org/ws/2004/03/business-process/}selectionFailure,lineNo=26<http://schemas.xmlsoap.org/ws/2004/03/business-process/%7DselectionFailure,lineNo=26>
> *
>
>
>
> *Copy Code Snippet:*
>
> <copy>
>
> <from>$startentry.part1/ns2:input</from>
>
> <to>$addMessage.part1/ns0:param0</to>
>
> </copy>
>
> <copy>
>
> <from>$startentry.part1/ns2:input</from>
>
> <to>$addMessage.part1/ns0:param1</to>
>
> </copy>
>
>
>
> Can someone hint on where I am going wrong. That would be of great help.
> Thanks.
>
> Went through the mailing list for similar discussions, but did not find
> anything concrete.
>
> Have attached all the necessary documents. I am using ODE 1.0.
>
>
>
>
>
> Thanks again
>
> Prasanna Rajaperumal
>
>
>
>
>
> *Stack Trace:*
>
> ERROR - GeronimoLog.error(108) | Error processing response for MEX
> {MyRoleMex#hqejbhcnphr2ih5x88c6ap [Client hqejbhcnphr2ih5x88c6ao] calling {
> http://j2ee.netbeans.org/wsdl/sampleWSDL}sampleWSDLService.sampleWSDLOperation(...)<http://j2ee.netbeans.org/wsdl/sampleWSDL%7DsampleWSDLService.sampleWSDLOperation%28...%29>
> }
>
> org.apache.ode.axis2.OdeFault: Undefined fault: service {
> http://j2ee.netbeans.org/wsdl/sampleWSDL}sampleWSDLService<http://j2ee.netbeans.org/wsdl/sampleWSDL%7DsampleWSDLService>port
> sampleWSDLPort operation sampleWSDLOperation fault {
> http://schemas.xmlsoap.org/ws/2004/03/business-process/}selectionFailure<http://schemas.xmlsoap.org/ws/2004/03/business-process/%7DselectionFailure>.;
> nested exception is:
>
> java.lang.IllegalArgumentException: Undefined fault:
> service
> {http://j2ee.netbeans.org/wsdl/sampleWSDL}sampleWSDLService<http://j2ee.netbeans.org/wsdl/sampleWSDL%7DsampleWSDLService>port
> sampleWSDLPort operation sampleWSDLOperation fault {
> http://schemas.xmlsoap.org/ws/2004/03/business-process/}selectionFailure<http://schemas.xmlsoap.org/ws/2004/03/business-process/%7DselectionFailure>
> .
>
> at
> org.apache.ode.axis2.util.SoapMessageConverter.createSoapFault(
> SoapMessageConverter.java:261)
>
> at org.apache.ode.axis2.ODEService.onResponse(
> ODEService.java:229)
>
> at org.apache.ode.axis2.ODEService.onAxisMessageExchange(
> ODEService.java:183)
>
> at
> org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(
> ODEMessageReceiver.java:68)
>
> at org.apache.ode.axis2.hooks.ODEMessageReceiver.receive(
> ODEMessageReceiver.java:49)
>
> at org.apache.axis2.engine.AxisEngine.receive(
> AxisEngine.java:497)
>
> at
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(
> HTTPTransportUtils.java:328)
>
> at org.apache.axis2.transport.http.AxisServlet.doPost(
> AxisServlet.java:254)
>
> 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.IllegalArgumentException: Undefined fault: service {
> http://j2ee.netbeans.org/wsdl/sampleWSDL}sampleWSDLService<http://j2ee.netbeans.org/wsdl/sampleWSDL%7DsampleWSDLService>port
> sampleWSDLPort operation sampleWSDLOperation fault {
> http://schemas.xmlsoap.org/ws/2004/03/business-process/}selectionFailure<http://schemas.xmlsoap.org/ws/2004/03/business-process/%7DselectionFailure>
> .
>
> at org.apache.ode.axis2.Messages.msgUndefinedFault(
> Messages.java:223)
>
> ... 24 more
>
>
>
> *My BPEL:*
>
>
>
>
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <process
>
> name="nbsample"
>
> targetNamespace="http://soamatrix.com/bpel/nbsample"
>
> xmlns="http://schemas.xmlsoap.org/ws/2004/03/business-process/"
>
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
> xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/"
>
> xmlns:wsdlNS="http://soamatrix.com/bpel/nbsample"
>
> xmlns:ns1="http://soamatrix.com"
>
> xmlns:ns0="http://soamatrix.com/xsd"
>
> xmlns:ns2="http://j2ee.netbeans.org/wsdl/sampleWSDL">
>
> <import location="PhonebookService.wsdl" importType="
> http://schemas.xmlsoap.org/wsdl/" namespace="http://soamatrix.com"/>
>
> <import namespace="http://j2ee.netbeans.org/wsdl/sampleWSDL"
> location="sampleWSDL.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
>
> <partnerLinks>
>
> <partnerLink name="pl2"
> partnerLinkType="ns1:PhonebookServiceLinkType"
> partnerRole="PhonebookServiceRole"/>
>
> <partnerLink name="pl1" partnerLinkType="ns2:sampleWSDLPartner"
> myRole="sampleWSDLPortTypeRole"/>
>
> </partnerLinks>
>
> <variables>
>
> <variable name="endreply"
> messageType="ns2:sampleWSDLOperationReply"/>
>
> <variable name="startentry"
> messageType="ns2:sampleWSDLOperationRequest"/>
>
> <variable name="addMessage" messageType="ns1:addEntryMessage"/>
>
> </variables>
>
> <sequence>
>
> <receive name="Receive1" createInstance="yes" partnerLink="pl1"
> operation="sampleWSDLOperation" portType="ns2:sampleWSDLPortType"
> variable="startentry"/>
>
> <assign name="Assign3">
>
> <copy>
>
> <from>$startentry.part1/ns2:input</from>
>
> <to>$addMessage.part1/ns0:param0</to>
>
> </copy>
>
> <copy>
>
> <from>$startentry.part1/ns2:input</from>
>
> <to>$addMessage.part1/ns0:param1</to>
>
> </copy>
>
> </assign>
>
> <invoke name="Invoke1" partnerLink="pl2" operation="addEntry"
> portType="ns1:PhonebookServicePortType" inputVariable="addMessage"/>
>
> <assign name="Assign2">
>
> <copy>
>
> <from>$startentry.part1/ns2:input</from>
>
> <to>$endreply.part1/ns2:result</to>
>
> </copy>
>
> </assign>
>
> <reply name="Reply1" partnerLink="pl1"
> operation="sampleWSDLOperation"
>
> portType="ns2:sampleWSDLPortType" variable="endreply"/>
>
> </sequence>
>
>
>
> </process>
>
>
>
>
>
>
>
>
>
>
>
> *sampleWSDL.wsdl*
>
>
>
>
>
>
>
>
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <definitions targetNamespace="http://j2ee.netbeans.org/wsdl/sampleWSDL"
>
> xmlns="http://schemas.xmlsoap.org/wsdl/"
>
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>
> xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="sampleWSDL"
> xmlns:plink="http://schemas.xmlsoap.org/ws/2004/03/partner-link/"
> xmlns:tns="http://j2ee.netbeans.org/wsdl/sampleWSDL">
>
> <types>
>
> <schema attributeFormDefault="unqualified"
> elementFormDefault="qualified"
>
> targetNamespace="http://j2ee.netbeans.org/wsdl/sampleWSDL"
>
>
> xmlns="http://www.w3.org/2001/XMLSchema">
>
>
>
> <element name="sample2Request">
>
> <complexType>
>
> <sequence>
>
> <element name="input" type="string"/>
>
> </sequence>
>
> </complexType>
>
> </element>
>
>
>
> <element name="sample2Response">
>
> <complexType>
>
> <sequence>
>
> <element name="result" type="string"/>
>
> </sequence>
>
> </complexType>
>
> </element>
>
> </schema>
>
> </types>
>
> <message name="sampleWSDLOperationRequest">
>
> <part name="part1" element="tns:sample2Request"/>
>
> </message>
>
> <message name="sampleWSDLOperationReply">
>
> <part name="part1" element="tns:sample2Response"/>
>
> </message>
>
> <portType name="sampleWSDLPortType">
>
> <operation name="sampleWSDLOperation">
>
> <input name="input1"
> message="tns:sampleWSDLOperationRequest"/>
>
> <output name="output1"
> message="tns:sampleWSDLOperationReply"/>
>
> </operation>
>
> </portType>
>
> <binding name="sampleWSDLBinding" type="tns:sampleWSDLPortType">
>
> <soap:binding style="rpc" transport="
> http://schemas.xmlsoap.org/soap/http"/>
>
> <operation name="sampleWSDLOperation">
>
> <soap:operation/>
>
> <input name="input1">
>
> <soap:body use="literal" namespace="
> http://j2ee.netbeans.org/wsdl/sampleWSDL"/>
>
> </input>
>
> <output name="output1">
>
> <soap:body use="literal" namespace="
> http://j2ee.netbeans.org/wsdl/sampleWSDL"/>
>
> </output>
>
> </operation>
>
> </binding>
>
> <service name="sampleWSDLService">
>
> <port name="sampleWSDLPort" binding="tns:sampleWSDLBinding">
>
> <soap:address location="
> http://localhost:8081/ode/processes/sampleWSDLService"/>
>
> </port>
>
> </service>
>
> <plink:partnerLinkType name="sampleWSDLPartner">
>
> <plink:role name="sampleWSDLPortTypeRole"
> portType="tns:sampleWSDLPortType"/>
>
> </plink:partnerLinkType>
>
> </definitions>
>
>
>
>
>
>
>
>
>
> *PhoneBookService.wsdl*
>
>
>
>
>
>
>
>
>
>
>
> <wsdl:definitions xmlns:axis2="http://soamatrix.com" xmlns:mime="
> http://schemas.xmlsoap.org/wsdl/mime/" xmlns:ns0="http://soamatrix.com/xsd"
> xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="
> http://schemas.xmlsoap.org/wsdl/http/" xmlns:ns1="
> http://org.apache.axis2/xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="
> http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://soamatrix.com"
> xmlns:plnk="http://schemas.xmlsoap.org/ws/2004/03/partner-link/" xmlns="
> http://schemas.xmlsoap.org/wsdl/"><wsdl:documentation>
>
> Phone book Service
>
> </wsdl:documentation><wsdl:types><xs:schema xmlns:ns="
> http://soamatrix.com/xsd" attributeFormDefault="qualified"
> elementFormDefault="qualified" targetNamespace="http://soamatrix.com/xsd">
>
> <xs:element name="getNo">
>
> <xs:complexType>
>
> <xs:sequence>
>
> <xs:element name="param0" nillable="true" type="xs:string"/>
>
> </xs:sequence>
>
> </xs:complexType>
>
> </xs:element>
>
> <xs:element name="getNoResponse">
>
> <xs:complexType>
>
> <xs:sequence>
>
> <xs:element name="return" nillable="true" type="xs:string"/>
>
> </xs:sequence>
>
> </xs:complexType>
>
> </xs:element>
>
> <xs:element name="addEntry">
>
> <xs:complexType>
>
> <xs:sequence>
>
> <xs:element name="param0" nillable="true" type="xs:string"/>
>
> <xs:element name="param1" nillable="true" type="xs:string"/>
>
> </xs:sequence>
>
> </xs:complexType>
>
> </xs:element>
>
> </xs:schema></wsdl:types><wsdl:message name="getNoMessage"><wsdl:part
> name="part1" element="ns0:getNo"/></wsdl:message><wsdl:message
> name="getNoResponse"><wsdl:part name="part1"
> element="ns0:getNoResponse"/></wsdl:message><wsdl:message
> name="addEntryMessage"><wsdl:part name="part1"
> element="ns0:addEntry"/></wsdl:message><wsdl:portType
> name="PhonebookServicePortType"><wsdl:operation name="getNo"><wsdl:input
> xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:getNoMessage" wsaw:Action="urn:getNo"/><wsdl:output
> message="axis2:getNoResponse"/></wsdl:operation><wsdl:operation
> name="addEntry"><wsdl:input xmlns:wsaw="
> http://www.w3.org/2006/05/addressing/wsdl" message="axis2:addEntryMessage"
> wsaw:Action="urn:addEntry"/></wsdl:operation></wsdl:portType><wsdl:binding
> name="PhonebookServiceSOAP11Binding"
> type="axis2:PhonebookServicePortType"><soap:binding transport="
> http://schemas.xmlsoap.org/soap/http" style="document"/><wsdl:operation
> name="getNo"><soap:operation soapAction="urn:getNo"
> style="document"/><wsdl:input><soap:body
> use="literal"/></wsdl:input><wsdl:output><soap:body
> use="literal"/></wsdl:output></wsdl:operation><wsdl:operation
> name="addEntry"><soap:operation soapAction="urn:addEntry"
> style="document"/><wsdl:input><soap:body
> use="literal"/></wsdl:input></wsdl:operation></wsdl:binding><wsdl:binding
> name="PhonebookServiceSOAP12Binding"
> type="axis2:PhonebookServicePortType"><soap12:binding transport="
> http://schemas.xmlsoap.org/soap/http" style="document"/><wsdl:operation
> name="getNo"><soap12:operation soapAction="urn:getNo"
> style="document"/><wsdl:input><soap12:body
> use="literal"/></wsdl:input><wsdl:output><soap12:body
> use="literal"/></wsdl:output></wsdl:operation><wsdl:operation
> name="addEntry"><soap12:operation soapAction="urn:addEntry"
> style="document"/><wsdl:input><soap12:body
> use="literal"/></wsdl:input></wsdl:operation></wsdl:binding><wsdl:binding
> name="PhonebookServiceHttpBinding"
> type="axis2:PhonebookServicePortType"><http:binding
> verb="POST"/><wsdl:operation name="getNo"><http:operation
> location="getNo"/><wsdl:input><mime:content
> type="text/xml"/></wsdl:input><wsdl:output><mime:content
> type="text/xml"/></wsdl:output></wsdl:operation><wsdl:operation
> name="addEntry"><http:operation
> location="addEntry"/><wsdl:input><mime:content
> type="text/xml"/></wsdl:input></wsdl:operation></wsdl:binding><wsdl:service
> name="PhonebookService"><wsdl:port name="PhonebookServiceSOAP11port_http"
> binding="axis2:PhonebookServiceSOAP11Binding"><soap:address location="
> http://localhost:8081/ode/services/PhonebookService"/></wsdl:port><wsdl:port
> name="PhonebookServiceSOAP12port_http"
> binding="axis2:PhonebookServiceSOAP12Binding"><soap12:address location="
> http://localhost:8081/ode/services/PhonebookService"/></wsdl:port><wsdl:port
> name="PhonebookServiceHttpport1"
> binding="axis2:PhonebookServiceHttpBinding"><http:address location="
> http://localhost:8081/ode/rest/PhonebookService
> "/></wsdl:port></wsdl:service>
>
> <plnk:partnerLinkType name="PhonebookServiceLinkType">
>
> <plnk:role name="PhonebookServiceRole"
> portType="axis2:PhonebookServicePortType"/>
>
> </plnk:partnerLinkType>
>
> </wsdl:definitions>
>