Hi

I have a problem with schema validation in axis. The thing is that I've
created wsdl file describing my web service interface, the file imports some
other xsd files that describes web-service parameter and reponse. The
problem is that in the parameter element and reponse element I've got the
same names of subelements. For egzample I have main patrameter element
PARAMETER and main response element RESPONSE. In xsd file they reference to
different groups that contain elements with the same names:

<xs:element name="PARAMETER">
<xs:complexType>
<xs:group ref="ns1:group1"/>
</xs:complexType>
</xs:element>
</xs:schema>

<xs:element name="RESPONSE">
<xs:complexType>
<xs:group ref="ns1:group2"/>
</xs:complexType>
</xs:element>
</xs:schema>

Groups look like this:

<xs:group name="group1">
<xs:sequence>
<xs:element name="ELEMENT1" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="RECORD" maxOccurs="unbounded">
<xs:complexType>
<xs:complexContent>
<xs:extension base="some_base1"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>

<xs:group name="group2">
<xs:sequence>
<xs:element name="ELEMENT1" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="RECORD" maxOccurs="unbounded">
<xs:complexType>
<xs:complexContent>
<xs:extension base="some_base2"/>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>

The thing is that when axis validates soap messages it returns errors. I
suspect that it thinks that REPONSE = PARAMETER because they have references
to groups that have the same named elements ELEMENT1. I created my
web-service using Eclipse - I created WSDL file and schemas in xsd and with
this base I generated whole web-service (web-service classes and classes
that represents parameter and response of the web-service.) I think eclipse
identify elements in schema with their names and namespaces - because in
this schema ELEMENT1 from group1 and from group2 have the same names and
namespaces - eclipse generated for both elements one class (which is corrent
for only one of them). I wonder if this is only eclipse bug or also axis. Do
I have to change tool from eclipse or maybe it won't help because axis also
will treat those elements the same way? What should I do to fix that without
schema changing?

If someone had the same problem in the past and knows the answear - please
help! Any comment appreciated!

Regards

ania

Reply via email to