2 Replies Latest reply on Dec 19, 2007 12:50 PM by asoldano

    wsconsume exception on document binding

    paoletto

      I am trying to use ActiveBPEL togheter with JBossAS.

      I found an example where i can pass an array parameter to a bpel process
      (here http://forums.active-endpoints.com/attachment.php?attachmentid=1748&d=1173126517 ,
      provided by the Active-Endpoints staff).

      I deployed it on tomcat, downloaded the wsd, and tried to consume with wsconsume which says:

      wsconsume.sh ParseArrayService.wsdl
      Invalid wsdl:operation "parseStringArray": its a document-literal operation, message part must refer to a schema element declaration
      


      why this? i suppose it's a correctly exposed web service, so wsconsume should be able to consume it..

      below the wsdl:

      <?xml version="1.0" encoding="UTF-8"?>
      <definitions targetNamespace="http://docs.active-endpoints.com/activebpel/sample/wsdl/parseArray/2007/03/parseArray.wsdl" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://docs.active-endpoints.com/activebpel/sample/wsdl/parseArray/2007/03/parseArray.wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
       <types>
       <xsd:schema targetNamespace="http://docs.active-endpoints.com/activebpel/sample/wsdl/parseArray/200 /XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
       <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" schemaLocation="http://sche
       <!-- Array of java.lang.String. -->
       <complexType name="ArrayOfString">
       <sequence>
       <element maxOccurs="unbounded" name="item" type="xsd:string"/>
       </sequence>
       </complexType>
       </xsd:schema>
       </types>
       <message name="stringArrayRequest">
       <part name="stringArrayToUse" type="tns:ArrayOfString"/>
       </message>
       <message name="stringResponse">
       <part name="stringToReturn" type="xsd:string"/>
       </message>
       <portType name="parseArrayPT">
       <operation name="parseStringArray">
       <input message="tns:stringArrayRequest" name="stringArrayRequest"/>
       <output message="tns:stringResponse" name="stringResponse"/>
       </operation>
       </portType>
       <binding name="ParseArrayServiceBinding" type="tns:parseArrayPT">
       <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http://
       <operation name="parseStringArray">
       <soap:operation soapAction="" style="document" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/
       <input>
       <soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
       </input>
       <output>
       <soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
       </output>
       </operation>
       </binding>
       <service name="ParseArrayService">
       <port binding="tns:ParseArrayServiceBinding" name="ParseArrayServicePort">
       <soap:address location="http://mirkwood:8080/active-bpel/services/ParseArrayService" xmlns:soap="h
       </port>
       </service>
      </definitions>
      


        • 1. Re: wsconsume exception on document binding
          paoletto

          sorry, the wsdl got cutted.. here it is:

          <?xml version="1.0" encoding="UTF-8"?>
          <definitions targetNamespace="http://docs.active-endpoints.com/activebpel/sample/wsdl/parseArray/2007/03/parseArray.wsdl" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://docs.active-endpoints.com/activebpel/sample/wsdl/parseArray/2007/03/parseArray.wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
           <types>
           <xsd:schema targetNamespace="http://docs.active-endpoints.com/activebpel/sample/wsdl/parseArray/2007/03/parseArray.wsdl" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
           <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" schemaLocation="http://schemas.xmlsoap.org/soap/encoding/"/>
           <!-- Array of java.lang.String. -->
           <complexType name="ArrayOfString">
           <sequence>
           <element maxOccurs="unbounded" name="item" type="xsd:string"/>
           </sequence>
           </complexType>
           </xsd:schema>
           </types>
           <message name="stringArrayRequest">
           <part name="stringArrayToUse" type="tns:ArrayOfString"/>
           </message>
           <message name="stringResponse">
           <part name="stringToReturn" type="xsd:string"/>
           </message>
           <portType name="parseArrayPT">
           <operation name="parseStringArray">
           <input message="tns:stringArrayRequest" name="stringArrayRequest"/>
           <output message="tns:stringResponse" name="stringResponse"/>
           </operation>
           </portType>
           <binding name="ParseArrayServiceBinding" type="tns:parseArrayPT">
           <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
           <operation name="parseStringArray">
           <soap:operation soapAction="" style="document" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
           <input>
           <soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
           </input>
           <output>
           <soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
           </output>
           </operation>
           </binding>
           <service name="ParseArrayService">
           <port binding="tns:ParseArrayServiceBinding" name="ParseArrayServicePort">
           <soap:address location="http://mirkwood:8080/active-bpel/services/ParseArrayService" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
           </port>
           </service>
          </definitions>
          
          


          • 2. Re: wsconsume exception on document binding
            asoldano

             

            "paoletto" wrote:
            wsconsume.sh ParseArrayService.wsdl
            Invalid wsdl:operation "parseStringArray": its a document-literal operation, message part must refer to a schema element declaration
            


            why this? i suppose it's a correctly exposed web service, so wsconsume should be able to consume it..


            Your wsdl is not valid. Your "stringArrayToUse" message part is refering a schema type instead of a schema element.