You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Fedorov Vladimir <VF...@korusconsulting.ru> on 2005/08/29 16:21:43 UTC

Incorrect WSDL generated

Hello,

I'm trying to use Apache Axis toolkit to implement a web-service (from the
JBuilder IDE). The problem is when I try to expose the web-service the WSDL
generated doesn't meet the specification:

The < extension > tag doesn't have "base" attribute. For example:

<complexType name="SinkEventCategory">
	<simpleContent>
		<extension>
			<attribute name="_value" type="xsd:string"/>
		</extension>
	</simpleContent>
</complexType>

If you look here, you can see, that this attribute is required.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xmlsdk/html
/a81fc9e9-18f6-4145-9fcf-f6788ea1acf6.asp



And if I try to add web-reference from Biz-Talk server to that service it
informs about an error "Schema with the
targetNamespace='http://SpsDocumentum.SinkMessage' has invalid syntax. The
'base' attribute is either invalid or missing."

I tried to upgrade my Axis to 1.2.1, but nothing changed.
I will be thankful for any help.

Vladimir



                             
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
targetNamespace="http://generated.peterstar.korusconsulting.ru/"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="http://generated.peterstar.korusconsulting.ru/"
xmlns:intf="http://generated.peterstar.korusconsulting.ru/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns1="http://SpsDocumentum.SinkMessage/"
xmlns:tns2="http://SpsDocumentum.SinkMessage"
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.2.1
Built on Jun 14, 2005 (09:15:57 EDT)-->
	<wsdl:types>
		<schema targetNamespace="http://SpsDocumentum.SinkMessage"
xmlns="http://www.w3.org/2001/XMLSchema">
			<import
namespace="http://SpsDocumentum.SinkMessage/"/>
			<import
namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
			<simpleType name="SinkEventEventInfoDirection">
				<restriction base="soapenc:string">
					<enumeration value="SpsToDoc"/>
					<enumeration value="DocToSps"/>
				</restriction>
			</simpleType>
			<simpleType name="SinkEventEventInfoType">
				<restriction base="soapenc:string">
					<enumeration value="Create"/>
					<enumeration value="Publish"/>
					<enumeration value="CheckIn"/>
					<enumeration value="CheckOut"/>
					<enumeration value="Delete"/>
					<enumeration value="Rename"/>
					<enumeration value="NoEvent"/>
					<enumeration value="UndoCheckOut"/>
					<enumeration value="FolderCreate"/>
					<enumeration value="FolderDelete"/>
				</restriction>
			</simpleType>
			<complexType name="SinkEventEventInfo">
				<sequence>
					<element maxOccurs="1" minOccurs="0"
name="Id" nillable="true" type="xsd:string"/>
					<element name="Direction"
nillable="true" type="tns2:SinkEventEventInfoDirection"/>
					<element name="TimeStamp"
nillable="true" type="xsd:dateTime"/>
					<element name="Type" nillable="true"
type="tns2:SinkEventEventInfoType"/>
					<element maxOccurs="1" minOccurs="0"
name="Comments" nillable="true" type="xsd:string"/>
				</sequence>
			</complexType>
			<complexType name="SinkEventCategory">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType name="ArrayOfSinkEventCategory">
				<sequence>
					<element maxOccurs="unbounded"
minOccurs="0" name="Category" nillable="true"
type="tns2:SinkEventCategory"/>
				</sequence>
			</complexType>
			<complexType name="SinkEventProfileName">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType name="SinkEventProfileAttribute">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
						<attribute name="name"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType
name="ArrayOfSinkEventProfileAttribute">
				<sequence>
					<element maxOccurs="unbounded"
minOccurs="0" name="Attribute" nillable="true"
type="tns2:SinkEventProfileAttribute"/>
				</sequence>
			</complexType>
			<complexType name="SinkEventProfile">
				<sequence>
					<element maxOccurs="1" minOccurs="0"
name="Name" nillable="true" type="tns2:SinkEventProfileName"/>
					<element maxOccurs="1" minOccurs="0"
name="Attributes" nillable="true"
type="tns2:ArrayOfSinkEventProfileAttribute"/>
				</sequence>
			</complexType>
			<complexType name="SinkEventPublishingOwner">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType
name="SinkEventPublishingDocumentState">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType name="SinkEventPublishingPublishedBy">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType name="SinkEventPublishing">
				<sequence>
					<element maxOccurs="1" minOccurs="0"
name="Owner" nillable="true" type="tns2:SinkEventPublishingOwner"/>
					<element maxOccurs="1" minOccurs="0"
name="DocumentState" nillable="true"
type="tns2:SinkEventPublishingDocumentState"/>
					<element maxOccurs="1" minOccurs="0"
name="PublishedBy" nillable="true"
type="tns2:SinkEventPublishingPublishedBy"/>
				</sequence>
			</complexType>
			<complexType name="SinkEventResourceName">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType name="SinkEventResourceFullName">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType name="SinkEventResourceDescription">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType name="SinkEventResourceDocumentRoot">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:string"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType name="SinkEventResourceContent">
				<simpleContent>
					<extension>
						<attribute name="_value"
type="xsd:base64Binary"/>
					</extension>
				</simpleContent>
			</complexType>
			<complexType name="SinkEventResource">
				<sequence>
					<element maxOccurs="1" minOccurs="0"
name="Name" nillable="true" type="tns2:SinkEventResourceName"/>
					<element maxOccurs="1" minOccurs="0"
name="FullName" nillable="true" type="tns2:SinkEventResourceFullName"/>
					<element maxOccurs="1" minOccurs="0"
name="Description" nillable="true"
type="tns2:SinkEventResourceDescription"/>
					<element maxOccurs="1" minOccurs="0"
name="DocumentRoot" nillable="true"
type="tns2:SinkEventResourceDocumentRoot"/>
					<element maxOccurs="1" minOccurs="0"
name="Content" nillable="true" type="tns2:SinkEventResourceContent"/>
				</sequence>
			</complexType>
		</schema>
		<schema targetNamespace="http://SpsDocumentum.SinkMessage/"
xmlns="http://www.w3.org/2001/XMLSchema">
			<import
namespace="http://SpsDocumentum.SinkMessage"/>
			<import
namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
			<complexType name="SinkEvent">
				<sequence>
					<element maxOccurs="1" minOccurs="0"
name="EventInfo" nillable="true" type="tns2:SinkEventEventInfo"/>
					<element maxOccurs="1" minOccurs="0"
name="Categories" nillable="true" type="tns2:ArrayOfSinkEventCategory"/>
					<element maxOccurs="1" minOccurs="0"
name="Profile" nillable="true" type="tns2:SinkEventProfile"/>
					<element maxOccurs="1" minOccurs="0"
name="Publishing" nillable="true" type="tns2:SinkEventPublishing"/>
					<element maxOccurs="1" minOccurs="0"
name="Resource" nillable="true" type="tns2:SinkEventResource"/>
				</sequence>
			</complexType>
		</schema>
	</wsdl:types>
	<wsdl:message name="sendXMLRequest">
		<wsdl:part name="documentIn" type="tns1:SinkEvent"/>
	</wsdl:message>
	<wsdl:message name="sendXMLResponse">

   </wsdl:message>
	<wsdl:portType name="SPSToDocSoapBindingImpl">
		<wsdl:operation name="sendXML" parameterOrder="documentIn">
			<wsdl:input message="impl:sendXMLRequest"
name="sendXMLRequest"/>
			<wsdl:output message="impl:sendXMLResponse"
name="sendXMLResponse"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="SPSToDocSoapBindingImplSoapBinding"
type="impl:SPSToDocSoapBindingImpl">
		<wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="sendXML">
			<wsdlsoap:operation soapAction=""/>
			<wsdl:input name="sendXMLRequest">
				<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://generated.peterstar.korusconsulting.ru/" use="encoded"/>
			</wsdl:input>
			<wsdl:output name="sendXMLResponse">
				<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://generated.peterstar.korusconsulting.ru/" use="encoded"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="SPSToDocSoapBindingImplService">
		<wsdl:port binding="impl:SPSToDocSoapBindingImplSoapBinding"
name="SPSToDocSoapBindingImpl">
			<wsdlsoap:address
location="http://localhost:8080/WebMod/services/SPSToDocSoapBindingImpl"/>
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>