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 06:24 Go to next message
krisantus  is currently offline krisantus Friend
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 07:58 Go to previous messageGo to next message
grid.qian  is currently offline grid.qian Friend
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 15:04 Go to previous messageGo to next message
Robert Brodt is currently offline Robert BrodtFriend
Messages: 625
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 15:46 Go to previous message
krisantus  is currently offline krisantus Friend
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 17: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: Fri Dec 19 03:29:20 GMT 2014

Powered by FUDForum. Page generated in 0.01757 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software