My understanding of the WSDL specification is that the import element is a child of the definitions elements and appears immediately after the opening definitions element. Therefore you don't put the import inside the types element. So if you import the xsd document you don't need the types element at all. See section 2.1.2 of the WSDL specification for an example of this.
Ben ----- Original Message ----- From: "Neil Blue" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, March 05, 2003 5:39 PM Subject: Importing a schema into a WSDL > Hello, > > I have been building up a WSDL file, and now I need to import schemas from > other locations on our web site. > > But I keep getting an error about the type not being defined. Here is a > sample of my problem: > > java.io.IOException: Type {http://importer/test}testType is referenced but > not defined > > I have tried to use an import statment like: > > <wsdl:types> > <schema xmlns="http://www.w3.org/2001/XMLSchema"> > <import namespace="http://importer/test" > schemaLocation="file:///home/nblue/test.xsd"/> > </schema> > </wsdl:types> > > then I refer to it with: > > <wsdl:message name="methodRequest"> > <wsdl:part name="request" type="imp:testType"/> > </wsdl:message> > > where the schema is simple: > > <?xml version="1.0" encoding="UTF-8"?> > <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" > xmlns="http://importer/test" > targetNamespace="http://importer/test"> > <xs:complexType name="testType"> > <xs:sequence> > <xs:element name="test" type="xsd:string"/> > </xs:sequence> > </xs:complexType> > </xs:schema> > > the imp namespace is defined in the definitions as: > > xmlns:imp="http://importer/test" > > > Could anyone explain how to do this please :) > > Neil