Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
1.2, 1.2.1
-
None
-
None
-
Tomcat 5.0, JSDK 1.4.2, JBuilder 2005
Description
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>