axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Feng Yuan" <fengy...@comp.nus.edu.sg>
Subject Re: problems with wsdl understanding
Date Wed, 04 Feb 2004 01:49:30 GMT
Hi Robert,
I met the same problem several times. I do not really remember how to solve
it now. But you may try the
webapps\axis\WEB-INF\server-config.wsdd to check if you can find something
useful there.

Cheers,
Feng
----- Original Message ----- 
From: "Robert Koberg" <rob@koberg.com>
To: <axis-user@ws.apache.org>
Sent: 2004?2?4? 7:55
Subject: problems with wsdl understanding


> Hi, [apologies for the length]
>
> I have read through the docs and spec but I am still unclear on a few
> things. The samples all work and all is well.
>
> I have created a wsdl file and use the ant task to generate java files,
> then compile and deploy -- everything works so far. I must be building
> the wsdl (pasted at the bottom) incorrectly and I don't know enough to
> see the error (any suggestions on books, websites are greatly
appreciated).
>
> In looking at the code I must be doing something wrong with the
> //message/part element. Am I right to think I can put an element
> reference there? An example of the request - GetHeadRequest (coming from
> a .NET client) looks like:
> <?xml version="1.0" encoding="ISO-8859-1"?>
> <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
>    <env:Body>
>      <wd:head xmlns:wd="http://xstandard.com/2002/webdir">
>        <wd:lang>en</wd:lang>
>      </wd:head>
>    </env:Body>
> </env:Envelope>
>
> and the response - GetHeadResponse looks like:
> <?xml version="1.0" encoding="UTF-16"?>
> <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
>    <env:Body>
>      <wd:filesystem xmlns:wd="http://xstandard.com/2002/webdir">
>        <wd:parent></wd:parent>
>        <wd:name>Library Of Images &amp; Attachments</wd:name>
>        <wd:description></wd:description>
>      </wd:filesystem>
>    </env:Body>
> </env:Envelope>
>
> I go the AxisServlet and list available service -- the new service is
> there. But when I hit the wsdl to see a 'roundtrip' of the schema I get
> the following error:
>
> AXIS error
>
> Sorry, something seems to have gone wrong... here are the details:
>
>
>
> Fault - makeTypeElement() was told to create a type
> "{http://xstandard.com/2002/webdir}>filesystem>file", with no containing
> element
>
> AxisFault
>
>   faultCode:
> {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
>
>   faultSubcode:
>
>   faultString: makeTypeElement() was told to create a type
> "{http://xstandard.com/2002/webdir}>filesystem>file", with no containing
> element
>
>   faultActor:
>
>   faultNode:
>
>   faultDetail:
>
>
>
> -------------------------
>
> The wsdl is:
>
>
>
>
>
> <?xml version="1.0" encoding="utf-8"?>
>
> <definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
> xmlns:xs="http://www.w3.org/2001/XMLSchema"
> xmlns:wd="http://xstandard.com/2002/webdir"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
> xmlns:y="http://new.webservice.namespace"
> targetNamespace="http://xstandard.com/2002/webdir" name="WebDir">
>
>    <types>
>
>      <xs:schema targetNamespace="http://xstandard.com/2002/webdir">
>
>        <!--
>
>        -->
>
>        <xs:element name="filesystem">
>
>          <xs:complexType>
>
>            <xs:sequence>
>
>              <xs:element name="parent"/>
>
>              <xs:element ref="wd:name"/>
>
>              <xs:element name="description"/>
>
>              <xs:element name="folder" minOccurs="0"
maxOccurs="unbounded">
>
>                <xs:complexType>
>
>                  <xs:sequence>
>
>                    <xs:element ref="wd:name"/>
>
>                    <xs:element ref="wd:path"/>
>
>                  </xs:sequence>
>
>                </xs:complexType>
>
>              </xs:element>
>
>              <xs:element name="file" minOccurs="0" maxOccurs="unbounded">
>
>                <xs:complexType>
>
>                  <xs:sequence>
>
>                    <xs:element name="gif" type="wd:ImageFile"/>
>
>                    <xs:element name="jpg" type="wd:ImageFile"/>
>
>                    <xs:element name="png" type="wd:ImageFile"/>
>
>                    <xs:element name="bmp" type="wd:ImageFile"/>
>
>                  </xs:sequence>
>
>                </xs:complexType>
>
>              </xs:element>
>
>            </xs:sequence>
>
>          </xs:complexType>
>
>        </xs:element>
>
>        <!--
>
>        -->
>
>        <xs:element name="name"/>
>
>        <xs:element name="path"/>
>
>        <xs:element name="lang"/>
>
>        <!--
>
>        -->
>
>
>
>        <xs:complexType name="GenericFile">
>
>          <xs:sequence>
>
>            <xs:element ref="wd:name"/>
>
>            <xs:element name="title"/>
>
>            <xs:element ref="wd:path"/>
>
>            <xs:element name="dlm"/>
>
>          </xs:sequence>
>
>        </xs:complexType>
>
>        <!--
>
>        -->
>
>        <xs:complexType name="ImageFile">
>
>          <xs:complexContent>
>
>            <xs:extension base="wd:GenericFile">
>
>              <xs:sequence>
>
>                <xs:element name="width"/>
>
>                <xs:element name="height"/>
>
>                <xs:element name="alt"/>
>
>                <xs:element name="longdesc"/>
>
>                <xs:element name="decorative"/>
>
>              </xs:sequence>
>
>            </xs:extension>
>
>          </xs:complexContent>
>
>        </xs:complexType>
>
>        <!--
>
>        -->
>
>        <xs:element name="head" type="wd:SoapRequest"/>
>
>        <!--
>
>        -->
>
>        <xs:element name="dir" type="wd:SoapRequest"/>
>
>        <!--
>
>        -->
>
>        <xs:complexType name="SoapRequest">
>
>          <xs:sequence>
>
>            <xs:element ref="wd:lang"/>
>
>          </xs:sequence>
>
>        </xs:complexType>
>
>      </xs:schema>
>
>    </types>
>
>    <!--
>
>
>
>    -->
>
>    <message name="GetHeadRequest">
>
>      <part name="body" element="wd:head"/>
>
>    </message>
>
>    <message name="GetHeadResponse">
>
>      <part name="body" element="wd:filesystem"/>
>
>    </message>
>
>    <!--
>
>    -->
>
>    <message name="GetDirRequest">
>
>      <part name="body" element="wd:dir"/>
>
>    </message>
>
>    <message name="GetDirResponse">
>
>      <part name="body" element="wd:filesystem"/>
>
>    </message>
>
>    <!--
>
>    -->
>
>    <portType name="WebDirPortType">
>
>      <operation name="GetHead">
>
>        <input message="wd:GetHeadRequest" name="GetHeadRequest"/>
>
>        <output message="wd:GetHeadResponse" name="GetHeadResponse"/>
>
>      </operation>
>
>      <operation name="GetDir">
>
>        <input message="wd:GetDirRequest" name="GetDirRequest"/>
>
>        <output message="wd:GetDirResponse" name="GetDirResponse"/>
>
>      </operation>
>
>    </portType>
>
>    <!--
>
>    -->
>
>    <binding name="WebDirSoapBinding" type="wd:WebDirPortType">
>
>      <soap:binding style="document"
> transport="http://schemas.xmlsoap.org/soap/http"/>
>
>      <operation name="GetHead">
>
>        <soap:operation
soapAction="http://localhost:8080/services/GetHead"/>
>
>        <input name="GetHeadRequest">
>
>          <soap:body use="literal"/>
>
>        </input>
>
>        <output name="GetHeadResponse">
>
>          <soap:body use="literal"/>
>
>        </output>
>
>      </operation>
>
>      <operation name="GetDir">
>
>        <soap:operation
> soapAction="http://localhost:8080/lsb/services/GetDir"/>
>
>        <input name="GetDirRequest">
>
>          <soap:body use="literal"/>
>
>        </input>
>
>        <output name="GetDirResponse">
>
>          <soap:body use="literal"/>
>
>        </output>
>
>      </operation>
>
>    </binding>
>
>    <service name="WebDirPortTypeService">
>
>      <documentation>A service to show file system assets.</documentation>
>
>      <port name="WebDirPortType" binding="wd:WebDirSoapBinding">
>
>        <soap:address
> location="http://localhost:8080/lsb/services/WebDirPortType"/>
>
>      </port>
>
>    </service>
>
> </definitions>
>
>



Mime
View raw message