[jboss-user] [JBossWS] - abstract operation

scottmh do-not-reply at jboss.com
Thu Mar 26 01:57:52 EDT 2009


Hi.  I am trying to wsconsume the following wsdl.
I am getting the error:
abstract operation "retrieveFinalTradeSet" binding, part "finalTradeSet_attachment" has multiple binding.

Can anyone tell me what is wrong?  It looks valid and other tools (ie. axis) seem able to consume it.
Any guidance would be appreciated.  Thanks.


<?xml version="1.0" encoding="utf-8"?>
  <wsdl:definitions 
   xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" 
   xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
   xmlns:xs="http://www.w3.org/2001/XMLSchema" 
   xmlns="http://schemas.xmlsoap.org/wsdl/"
   xmlns:wsi="http://ws-i.org/schemas/conformanceClaim/"

   xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
   xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" 
   xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" 

   targetNamespace="http://www.somewhere.com/soa/2008-08-09/retrieveFinalTradeSet.wsdl" 
   xmlns:tns="http://www.somewhere.com/soa/2008-08-09/retrieveFinalTradeSet.wsdl"

   xmlns:schemaInfor="http://www.somewhere.com/soa/2008-08-09/FinalTradeSet.xsd"

   xmlns:typeIn="http://www.somewhere.com/soa/2007-02-09/RequestFinalTradeSet.xsd"  
   xmlns:typeHeader="http://www.somewhere.com/soa/2006-06-13/StandardAttachmentInfor.xsd"  
   xmlns:typeFault="http://www.somewhere.com/soa/2006-06-13/StandardOutput.xsd">

   <wsdl:documentation>
     A web service to retrieve final trade set
   </wsdl:documentation>
  
   <!-- type elements define data types used in this wsdl document using xml schema -->
   <!-- note the namespaces defined matched up with the typeIn and typeOut defined above -->
   <wsdl:types>
<xs:schema xmlns:m="http://www.somewhere.com/soa/2006-06-13/StandardAttachmentInfor.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.somewhere.com/soa/2006-06-13/StandardAttachmentInfor.xsd" elementFormDefault="qualified">
	<xs:element name="standardAttachmentInfor" type="m:standardAttachmentInfor"/>
	<xs:complexType name="standardAttachmentInfor">
		<xs:sequence>
			<xs:element name="Attachment" type="m:Attachment" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Attachment">
		<xs:sequence>
			<xs:element name="id" type="xs:string" minOccurs="0"/>
			<xs:element name="name" type="xs:string" minOccurs="0"/>
			<xs:element name="description" type="xs:string" minOccurs="0"/>
			<xs:element name="version" type="xs:string" minOccurs="0"/>
			<xs:element name="sequenceNumber" type="xs:string" minOccurs="0"/>
			<xs:element name="type" type="xs:string" minOccurs="0"/>
			<xs:element name="size" type="xs:string" minOccurs="0"/>
			<xs:element name="source" type="xs:string" minOccurs="0"/>
			<xs:element name="tool" type="xs:string" minOccurs="0"/>
			<xs:element name="creationTime" type="xs:dateTime" minOccurs="0"/>
			<xs:element name="compressFlag" type="m:compressFlag" minOccurs="0"/>
			<xs:element name="compressMethod" type="xs:string" minOccurs="0"/>
			<xs:element name="AttributeList" type="m:AttributeList" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="compressFlag">
		<xs:restriction base="xs:string">
			<xs:enumeration value="yes"/>
			<xs:enumeration value="no"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="AttributeList">
		<xs:sequence>
			<xs:element name="Sequence" type="xs:string" minOccurs="0"/>
			<xs:element name="Name" type="xs:string" minOccurs="0"/>
			<xs:element name="Value" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
<xs:schema xmlns="http://www.somewhere.com/soa/2007-02-09/RequestFinalTradeSet.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.somewhere.com/soa/2007-02-09/RequestFinalTradeSet.xsd" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="RequestFinalTradeSet" type="RequestFinalTradeSet"/>
	<xs:complexType name="RequestFinalTradeSet">
		<xs:choice>
			<xs:element name="Trade_MarketTimeInterval" type="Trade_MarketTimeInterval" minOccurs="0"/>
			<xs:element name="Trade_TradeIDMarketTimeInterval" type="Trade_TradeIDMarketTimeInterval" minOccurs="0"/>
		</xs:choice>
	</xs:complexType>
	<xs:simpleType name="MarketType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="DAM"/>
			<xs:enumeration value="RTM"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="Trade_MarketTimeInterval">
		<xs:sequence>
			<xs:element name="MarketStartTime" type="xs:dateTime"/>
			<xs:element name="MarketEndTime" type="xs:dateTime"/>
			<xs:element name="marketType" type="MarketType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Trade_TradeIDMarketTimeInterval">
		<xs:sequence>
			<xs:element name="TradeID" type="xs:string" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
<xs:schema xmlns:m="http://www.somewhere.com/soa/2006-06-13/StandardOutput.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.somewhere.com/soa/2006-06-13/StandardOutput.xsd" elementFormDefault="qualified">
	<xs:element name="outputDataType" type="m:outputDataType"/>
	<xs:complexType name="outputDataType">
		<xs:sequence>
			<xs:element name="EventLog" type="m:EventLog" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="EventLog">
		<xs:sequence>
			<xs:element name="id" type="xs:string" minOccurs="0"/>
			<xs:element name="name" type="xs:string" minOccurs="0"/>
			<xs:element name="description" type="xs:string" minOccurs="0"/>
			<xs:element name="type" type="xs:string" minOccurs="0"/>
			<xs:element name="creationTime" type="xs:dateTime" minOccurs="0"/>
			<xs:element name="collectionType" type="xs:string" minOccurs="0"/>
			<xs:element name="collectionQuantity" type="xs:string" minOccurs="0"/>
			<xs:element name="Event" type="m:Event" maxOccurs="unbounded"/>
			<xs:element name="Service" type="m:Service" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Event">
		<xs:sequence>
			<xs:element name="result" type="xs:string"/>
			<xs:element name="id" type="xs:string" minOccurs="0"/>
			<xs:element name="name" type="xs:string" minOccurs="0"/>
			<xs:element name="description" type="xs:string" minOccurs="0"/>
			<xs:element name="creationTime" type="xs:dateTime" minOccurs="0"/>
			<xs:element name="severity" type="xs:string" minOccurs="0"/>
			<xs:element name="priority" type="xs:string" minOccurs="0"/>
			<xs:element name="sequenceNumber" type="xs:string" minOccurs="0"/>
			<xs:element name="eventType" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Service">
		<xs:sequence>
			<xs:element name="id" type="xs:string"/>
			<xs:element name="name" type="xs:string"/>
			<xs:element name="description" type="xs:string"/>
			<xs:element name="comments" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
   </wsdl:types>

   <!-- message elements define input and output parameters -->
   <!-- a request and response case to use the data type defined in TYPE for payload -->
   <wsdl:message name="retrieveFinalTradeSetHeader">
     <!-- attachment wrapper -->
     <wsdl:part name="standardAttachmentInfor" element="typeHeader:standardAttachmentInfor">
       <wsdl:documentation>attachment information</wsdl:documentation>
     </wsdl:part>
   </wsdl:message>
   <wsdl:message name="retrieveFinalTradeSetRequest">
     <wsdl:part name="requestData" type="typeIn:RequestFinalTradeSet">
       <wsdl:documentation>send request date</wsdl:documentation>
     </wsdl:part>
   </wsdl:message>
   <wsdl:message name="retrieveFinalTradeSetResponse">
     <wsdl:part name="finalTradeSet_attachment" type="xs:base64Binary">
       <wsdl:documentation>return final trade set</wsdl:documentation>
     </wsdl:part>
   </wsdl:message>
   <wsdl:message name="faultReturnType">
     <wsdl:part name="faultReturn" element="typeFault:outputDataType">
       <wsdl:documentation>fault information</wsdl:documentation>
     </wsdl:part>
   </wsdl:message>

   <!-- portType elements define the abstract interface of a web service -->
   <!-- to use the message type defined in message above -->
   <wsdl:portType name="retrieveFinalTradeSet">
     <wsdl:operation name="retrieveFinalTradeSet">
       <wsdl:documentation>retrieve final trade set</wsdl:documentation>
       <wsdl:input message="tns:retrieveFinalTradeSetRequest" />
       <wsdl:output message="tns:retrieveFinalTradeSetResponse" />
       <wsdl:fault name="faultReturn" message="tns:faultReturnType" />
     </wsdl:operation>
   </wsdl:portType>

   <!-- binding elements define protocols and encoding styles -->
   <!-- to bind the operation defined in portType -->
   <wsdl:binding name="retrieveFinalTradeSet_Binding" type="tns:retrieveFinalTradeSet">
     <soap:binding style="rpc"
      transport="http://schemas.xmlsoap.org/soap/http"/>
     <wsdl:operation name="retrieveFinalTradeSet">
       <soap:operation  style="rpc"
        soapAction="http://www.somewhere.com/soa/2008-08-09/retrieveFinalTradeSet"/>
       <wsdl:input>
         <soap:body use="literal" namespace="http://www.somewhere.com/soa/2008-08-09/retrieveFinalTradeSet"/>
       </wsdl:input>
       <wsdl:output>
            <mime:multipartRelated>
                <mime:part>
                    <soap:body use="literal" namespace="http://www.somewhere.com/soa/2008-08-09/retrieveFinalTradeSet"/>
                </mime:part>
                <mime:part>
                    <mime:content part="finalTradeSet_attachment"
                        type="application/octetstream"/>
                </mime:part>
            </mime:multipartRelated>
	    <soap:header message="tns:retrieveFinalTradeSetHeader" 
			part="standardAttachmentInfor" use="literal" wsdl:required="true"/>
       </wsdl:output>
       <wsdl:fault name="faultReturn">
         <soap:fault name="faultReturn" use="literal"/>
       </wsdl:fault>
     </wsdl:operation>
   </wsdl:binding>

   <wsdl:service name="retrieveFinalTradeSetService">
	<wsdl:port name="retrieveFinalTradeSetServicePort" binding="tns:retrieveFinalTradeSet_Binding">
		<soap:address location="http://www.somewhere.com/soa/2008-08-09/retrieveFinalTradeSet"/>
	</wsdl:port>
   </wsdl:service>

 </wsdl:definitions>


View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4221156#4221156

Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4221156



More information about the jboss-user mailing list