i found a problem, i've a service generated by Axis2 that gives this wsdl
(i put only the types part).

<wsdl:types>
        <xs:schema attributeFormDefault="qualified"
elementFormDefault="qualified" targetNamespace="http://webservice/xsd";>
            <xs:complexType name="ComplexType">
                <xs:sequence>
                    <xs:element minOccurs="0" name="anni" type="xs:int"/>
                    <xs:element minOccurs="0" name="nome" nillable="true"
type="xs:string"/>
                </xs:sequence>
            </xs:complexType>
        </xs:schema>
        <xs:schema xmlns:ax22="http://webservice/xsd";
attributeFormDefault="qualified" elementFormDefault="qualified"
targetNamespace="http://webservice";>
            <xs:import namespace="http://webservice/xsd"/>
            <xs:element name="hello">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element minOccurs="0" name="name"
nillable="true" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="helloResponse">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element minOccurs="0" name="return"
nillable="true" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="dosmt">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element minOccurs="0" name="ct" nillable="true"
type="ax22:ComplexType"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="dosmtResponse">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element minOccurs="0" name="return"
nillable="true" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:schema>
    </wsdl:types>

here, there are 2 schema, how can i parse this? i had to parse the second
one using the information in the first one, but how?

On Tue, Nov 17, 2009 at 09:15, Stefano Tranquillini <
stefano.tranquill...@gmail.com> wrote:

> I solved taking the string between the <wsdl:types></wsdl:types>, but
> adding all the namespaces of the wsdl
> now the XMLSchema parse all.
>
>
>
> On Mon, Nov 16, 2009 at 20:14, Benson Margulies <bimargul...@gmail.com>wrote:
>
>> Read the schema into a DOM tree with JAXP, and then ask XmlSchema to
>> digest
>> the xs:schema node(s).
>>
>> On Mon, Nov 16, 2009 at 9:29 AM, Stefano Tranquillini <
>> stefano.tranquill...@gmail.com> wrote:
>>
>> > Hi all.
>> > i'm trying to use XMLSchema (http://ws.apache.org/commons/XmlSchema/)
>> to
>> > parse the XSD.
>> > If the file is an XSD all is ok, but if i had an XSD inside a wsdl i'm
>> not
>> > able to read and parse it, how can i do that?
>> > i tryed to extract the part of the code in the wsdl between the
>> > <wsdl:types></wsdl:types> and parse it.
>> > but the parser returns this error
>> >
>> > org.apache.ws.commons.schema.XmlSchemaException: no protocol:
>> > <xs:schema attributeFormDefault="qualified"
>> elementFormDefault="qualified"
>> > targetNamespace="http://webservice/xsd";>            <xs:complexType
>> > name="ComplexType">                <xs:sequence>
>> > <xs:element minOccurs="0" name="anni" type="xs:int"/>
>> > <xs:element minOccurs="0" name="nome" nillable="true"
>> > type="xs:string"/>                </xs:sequence>
>> > </xs:complexType>        </xs:schema>        <xs:schema xmlns:ax22="
>> > http://webservice/xsd"; attributeFormDefault="qualified"
>> > elementFormDefault="qualified" targetNamespace="http://webservice";>
>> > <xs:import namespace="http://webservice/xsd"/>            <xs:element
>> > name="hello">                <xs:complexType>
>> > <xs:sequence>                        <xs:element minOccurs="0"
>> name="name"
>> > nillable="true" type="xs:string"/>
>> > </xs:sequence>                </xs:complexType>
>> > </xs:element>            <xs:element name="helloResponse">
>> > <xs:complexType>                    <xs:sequence>
>> > <xs:element minOccurs="0" name="return" nillable="true"
>> > type="xs:string"/>                    </xs:sequence>
>> > </xs:complexType>            </xs:element>            <xs:element
>> > name="dosmt">                <xs:complexType>
>> > <xs:sequence>                        <xs:element minOccurs="0" name="ct"
>> > nillable="true" type="ax22:ComplexType"/>
>> > </xs:sequence>                </xs:complexType>
>> > </xs:element>            <xs:element name="dosmtResponse">
>> > <xs:complexType>                    <xs:sequence>
>> > <xs:element minOccurs="0" name="return" nillable="true"
>> > type="xs:string"/>                    </xs:sequence>
>> > </xs:complexType>            </xs:element>        </xs:schema>
>> >    at
>> >
>> >
>> org.apache.ws.commons.schema.XmlSchemaCollection.read(XmlSchemaCollection.java:372)
>> >    at
>> >
>> >
>> org.apache.ws.commons.schema.XmlSchemaCollection.read(XmlSchemaCollection.java:400)
>> >    at
>> >
>> >
>> org.apache.ws.commons.schema.XmlSchemaCollection.read(XmlSchemaCollection.java:418)
>> >    at xsd.Parser.exec(Parser.java:39)
>> >    at xsd.Parser.main(Parser.java:18)
>> >
>> >
>> > i think it might be a problem of namespaces ore smt like that.
>> >
>> > any hint or ideas about to fix this code or about to parse the XSD in a
>> > WSDL??
>> >
>> > thanks
>> >
>> > --
>> > Stefano
>> >
>>
>
>
>
> --
> Stefano
>



-- 
Stefano

Reply via email to