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" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> 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 & 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> > >
