Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » BPEL Designer » Need help with axis2ns1:selectionFailure(How to resolve axis2ns1:selectionFailure error)
Need help with axis2ns1:selectionFailure [message #638382] Thu, 11 November 2010 01:24 Go to next message
krisantus  is currently offline krisantus
Messages: 2
Registered: November 2010
Junior Member
Dear all,

I'm trying to invoke an external web service from my BPEL process, but I keep getting axis2ns1:selectionFailure error when testing with SOAPUI. I'm using eclipse, axis, tomcat 6, ode 1.3.4.

The process is simple receive--> assign--> invoke (external web service)--> assign --> reply. I think the variables for the invoke process have been initialized.

Is there a way that I can see which line in my BPEL process causing the error? I have changed the log4j.properties log level (e.g. log4j.category.org.apache.ode.bpel.engine=DEBUG ...) but I still cannot find the information.

Below are the wsdl and the my bpel files.

Could somebody give me a pointer how to resolve the error?

Thanks.

[B]BPEL[/B]
<bpel:process name="BookTrip"
         targetNamespace="http://booktrip.acme.com"
         suppressJoinFailure="yes"
         xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
        xmlns:tns="http://booktrip.acme.com" xmlns:ns="http://provider.com" xmlns:ns1="http://message.flight.provider.com" xmlns:ns0="http://apartmentpackage">

    <!-- Import the client WSDL -->
    <bpel:import namespace="http://apartmentpackage" locaxmlns:ns="http://provider.com" xmlns:msg="http://message.flight.provider.com"tion="ApartmentService.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
    <bpel:import namespace="http://provider.com" location="FlightService.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
    <bpel:import location="BookTripArtifacts.wsdl" namespace="http://booktrip.acme.com" 
	        importType="http://schemas.xmlsoap.org/wsdl/" />
         
    <!-- ================================================================= -->         
    <!-- PARTNERLINKS                                                      -->
    <!-- List of services participating in this BPEL process               -->
    <!-- ================================================================= -->         
    <bpel:partnerLinks>
        <!-- The 'client' role represents the requester of this service. -->
        <bpel:partnerLink name="client"
                     partnerLinkType="tns:BookTrip"
                     myRole="BookTripProvider"
                     />
        <bpel:partnerLink name="FlightServicePL" partnerLinkType="tns:FligtServicePLT" partnerRole="FlightServiceProvider"></bpel:partnerLink>
        <bpel:partnerLink name="ApartmentServicePL" partnerLinkType="tns:ApartmentServicePLT" partnerRole="ApartmentServiceProvider"></bpel:partnerLink>
    </bpel:partnerLinks>
  
    <!-- ================================================================= -->         
    <!-- VARIABLES                                                         -->
    <!-- List of messages and XML documents used within this BPEL process  -->
    <!-- ================================================================= -->         
    <bpel:variables>
        <!-- Reference to the message passed as input during initiation -->
        <bpel:variable name="input"
                  messageType="tns:BookTripRequestMessage"/>
                  
        <!-- 
          Reference to the message that will be returned to the requester
          -->
        <bpel:variable name="output"
                  messageType="tns:BookTripResponseMessage"/>
        
        
        <bpel:variable name="FlightServicePLResponse" messageType="ns:bookFlightResponse"></bpel:variable>
        <bpel:variable name="FlightServicePLRequest" messageType="ns:bookFlightRequest"></bpel:variable>
        <bpel:variable name="ApartmentServicePLResponse" messageType="ns0:bookApartmentResponse"></bpel:variable>
        <bpel:variable name="ApartmentServicePLRequest" messageType="ns0:bookApartmentRequest"></bpel:variable>
    </bpel:variables>

    <!-- ================================================================= -->         
    <!-- ORCHESTRATION LOGIC                                               -->
    <!-- Set of activities coordinating the flow of messages across the    -->
    <!-- services integrated within this business process                  -->
    <!-- ================================================================= -->         
    <bpel:sequence name="main">
        
        <!-- Receive input from requester. 
             Note: This maps to operation defined in BookTrip.wsdl 
             -->
        
        
        
        <bpel:receive name="receiveInput" partnerLink="client"
                 portType="tns:BookTrip"
                 operation="process" variable="input"
                 createInstance="yes"/>
        
        <!-- Generate reply to synchronous request -->
        <bpel:assign validate="no" name="Assign">     
            <bpel:copy>
                <bpel:from>
                    <bpel:literal xml:space="preserve"><impl:bookApartment xmlns:impl="http://apartmentpackage" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <impl:fromDate></impl:fromDate>
  <impl:toDate></impl:toDate>
  <impl:apartmentID></impl:apartmentID>
</impl:bookApartment>
</bpel:literal>
                </bpel:from>
                <bpel:to variable="ApartmentServicePLRequest" part="parameters"></bpel:to>
            </bpel:copy>
            <bpel:copy>
                <bpel:from part="payload" variable="input">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:apartmentID]]></bpel:query>
                </bpel:from>
                <bpel:to part="parameters" variable="ApartmentServicePLRequest">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[ns0:apartmentID]]></bpel:query>
                </bpel:to>
            </bpel:copy>
            <bpel:copy>
                <bpel:from part="payload" variable="input">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0">
                        <![CDATA[tns:returnDate]]>
                    </bpel:query>
                </bpel:from>
                <bpel:to part="parameters" variable="ApartmentServicePLRequest">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0">
                        <![CDATA[ns0:toDate]]>
                    </bpel:query>
                </bpel:to>
            </bpel:copy>
            <bpel:copy>
                <bpel:from part="payload" variable="input">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:departureDate]]></bpel:query>
                </bpel:from>
                <bpel:to part="parameters" variable="ApartmentServicePLRequest">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[ns0:fromDate]]></bpel:query>
                </bpel:to>
            </bpel:copy>
        </bpel:assign>
        <bpel:invoke name="Invoke" partnerLink="ApartmentServicePL" operation="bookApartment" portType="ns0:ApartmentService" inputVariable="ApartmentServicePLRequest" outputVariable="ApartmentServicePLResponse"></bpel:invoke>
        <bpel:assign validate="no" name="Assign1">           
            <bpel:copy>
                <bpel:from>
                    <bpel:literal xml:space="preserve"><tns:BookTripResponse xmlns:tns="http://booktrip.acme.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <tns:apartmentBookingCode></tns:apartmentBookingCode>
  <tns:flightBookingCode></tns:flightBookingCode>
  <tns:carBookingCode></tns:carBookingCode>
</tns:BookTripResponse>
</bpel:literal>
                </bpel:from>
                <bpel:to variable="output" part="payload"></bpel:to>
            </bpel:copy>
            <bpel:copy>
                <bpel:from part="parameters" variable="ApartmentServicePLResponse">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[ns0:bookApartmentReturn/ns0:aptbooking/ns0:bookingID]]></bpel:query>
                </bpel:from>
                <bpel:to part="payload" variable="output">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:apartmentBookingCode]]></bpel:query>
                </bpel:to>
            </bpel:copy>
        </bpel:assign>
        <bpel:reply name="replyOutput" 
               partnerLink="client"
               portType="tns:BookTrip"
               operation="process" 
               variable="output"
               />
    </bpel:sequence>
</bpel:process>

[B]Apartment WSDL:[/B]

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://apartmentpackage" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://apartmentpackage" xmlns:intf="http://apartmentpackage" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)-->
 <wsdl:types>
  <schema elementFormDefault="qualified" targetNamespace="http://apartmentpackage" xmlns="http://www.w3.org/2001/XMLSchema">
      <complexType name="StatusOfOperation">
    <sequence>
     <element name="statusCode" nillable="true" type="xsd:int"/>
     <element name="statusCodeDescription" nillable="true" type="xsd:string"/>
    </sequence>
   </complexType>   
   <element name="bookApartment">
    <complexType>
     <sequence>
      <element name="fromDate" type="xsd:dateTime"/>
      <element name="toDate" type="xsd:dateTime"/>
      <element name="apartmentID" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="bookApartmentResponse">
    <complexType>
     <sequence>
      <element name="bookApartmentReturn" type="impl:ApartmentBookingResponse"/>
     </sequence>
    </complexType>
   </element>
   <complexType name="ApartmentBooking">
    <sequence>
     <element name="apartmentID" nillable="true" type="xsd:string"/>
     <element name="bookingID" nillable="true" type="xsd:string"/>
     <element name="fromDate" nillable="true" type="xsd:dateTime"/>
     <element name="toDate" nillable="true" type="xsd:dateTime"/>
    </sequence>
   </complexType>
   <complexType name="ApartmentBookingResponse">
    <sequence>
     <element name="aptbooking" nillable="true" type="impl:ApartmentBooking"/>
     <element name="bookApartmentStatus" nillable="true" type="impl:StatusOfOperation"/>
    </sequence>
   </complexType>
  
<!--CUT-->
   <wsdl:message name="bookApartmentResponse">

      <wsdl:part element="impl:bookApartmentResponse" name="parameters"/>

   </wsdl:message

   <wsdl:message name="bookApartmentRequest">

      <wsdl:part element="impl:bookApartment" name="parameters"/>

   </wsdl:message>

  <!--CUT-->

      <wsdl:operation name="bookApartment">

         <wsdl:input message="impl:bookApartmentRequest" name="bookApartmentRequest"/>

         <wsdl:output message="impl:bookApartmentResponse" name="bookApartmentResponse"/>

      </wsdl:operation>
[B]
 Artifacts WSDL[/B]  
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" 
xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
xmlns:tns="http://booktrip.acme.com" 
xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" 
xmlns:wsdl="http://provider.com" 
xmlns:wsdl1="http://apartmentpackage" 
name="BookTrip" targetNamespace="http://booktrip.acme.com">

<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     TYPE DEFINITION - List of types participating in this BPEL process 
     The BPEL Designer will generate default request and response types
     but you can define or import any XML Schema type and use them as part 
     of the message types.
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->    
    <plnk:partnerLinkType name="FligtServicePLT">
    <plnk:role name="FlightServiceProvider" portType="wsdl:FlightService"/>
  </plnk:partnerLinkType>
    <plnk:partnerLinkType name="ApartmentServicePLT">
    <plnk:role name="ApartmentServiceProvider" portType="wsdl1:ApartmentService"/>
  </plnk:partnerLinkType>
    <import location="FlightService.wsdl" namespace="http://provider.com"/>
    <import location="ApartmentService.wsdl" namespace="http://apartmentpackage"/>
    <types>
        <schema xmlns="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://booktrip.acme.com">

            <element name="BookTripRequest">
                <complexType>
                    <sequence>
                        <element name="departureFlightNumber" type="string"/>
                        <element name="returnFlightNumber" type="string"/>
                        <element name="apartmentID" type="string"/>
                        <element name="carID" type="dateTime"/>
                        <element name="departureDate" type="dateTime"/>
                        <element name="returnDate" type="dateTime"/>
                    </sequence>
                </complexType>
            </element>

            <element name="BookTripResponse">
                <complexType>
                    <sequence>
                        <element name="apartmentBookingCode" type="string"/>
                        <element name="flightBookingCode" type="string"/>
                        <element name="carBookingCode" type="string"/>
                    </sequence>
                </complexType>
            </element>
        </schema>
    </types>


<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     MESSAGE TYPE DEFINITION - Definition of the message types used as 
     part of the port type defintions
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->    
    <message name="BookTripRequestMessage">
        <part element="tns:BookTripRequest" name="payload"/>
    </message>
    <message name="BookTripResponseMessage">
        <part element="tns:BookTripResponse" name="payload"/>
    </message>

<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     PORT TYPE DEFINITION - A port type groups a set of operations into
     a logical service unit.
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->    

    <!-- portType implemented by the BookTrip BPEL process -->
    <portType name="BookTrip">
        <operation name="process">
            <input message="tns:BookTripRequestMessage"/>
            <output message="tns:BookTripResponseMessage"/>
        </operation>
    </portType>
  

<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     PARTNER LINK TYPE DEFINITION
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->    
    <plnk:partnerLinkType name="BookTrip">
        <plnk:role name="BookTripProvider" portType="tns:BookTrip"/>
    </plnk:partnerLinkType>
    
    <binding name="BookTripBinding" type="tns:BookTrip">
    	<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    	<operation name="process">
    		<soap:operation soapAction="http://booktrip.acme.com/process"/>
    		<input>
    			<soap:body use="literal"/>
    		</input>
    		<output>
    			<soap:body use="literal"/>
    		</output>
    	</operation>
    </binding>
    <service name="BookTrip">
    	<port binding="tns:BookTripBinding" name="BookTripPort">
    		<soap:address location="http://localhost:8180/ode/processes/BookTrip"/>
    	</port>
    </service>
</definitions>





Re: Need help with axis2ns1:selectionFailure [message #638398 is a reply to message #638382] Thu, 11 November 2010 02:58 Go to previous messageGo to next message
grid.qian  is currently offline grid.qian
Messages: 47
Registered: July 2009
Member
I think you ask the question in axis2 forum will be better.
Re: Need help with axis2ns1:selectionFailure [message #638522 is a reply to message #638382] Thu, 11 November 2010 10:04 Go to previous messageGo to next message
Robert Brodt is currently offline Robert Brodt
Messages: 589
Registered: August 2010
Location: Colorado Springs, CO
Senior Member

It looks like the copy/paste did not work because the BPEL process XML is not well-formed and not all of the WSDLs made it intact. Can you please try posting again and provide file names for your project files? Maybe the code is getting corrupted by the HTML editor - try switching to text only mode and turn of smilies.

Cheers,
Bob
Re: Need help with axis2ns1:selectionFailure [message #638549 is a reply to message #638522] Thu, 11 November 2010 10:46 Go to previous message
krisantus  is currently offline krisantus
Messages: 2
Registered: November 2010
Junior Member
Hi,

Apparently my log4j.properties file does not have log4j.category.org.apache.ode=INFO. Now I can start working on the error.


cheers,

Krisantus

[Updated on: Thu, 11 November 2010 12:54]

Report message to a moderator

Previous Topic:How to make both Tomcat and ODE server to run in eclipse at the same time
Next Topic:Model change doesn't yield notification
Goto Forum:
  


Current Time: Wed Aug 20 16:27:51 EDT 2014

Powered by FUDForum. Page generated in 0.09344 seconds