| 

.NET C# Java Javascript Exception

2
Hallo,

in meiner WSDL-Datei habe ich ein xsd:schema angelegt, in dem ich die zwei Typen "user" und "users" definiere. "users"stellt dabei eine Collection von "user" elementen dar. Wie aber referenziere ich den Typ "user"? Im root-Element "wsdl:definitions" habe ich den gleichen Namespace wie für das schema angegeben:
xmlns:userstd="http://example.com/myservice/users"


<xsd:schema targetNamespace="http://example.com/myservice/users">

<xsd:element name="user">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="id" type="xsd:long" />
<xsd:element name="firstName" type="xsd:string" />
<xsd:element name="lastName" type="xsd:string" />
<xsd:element name="displayName" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>

<xsd:element name="users">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="user" type="userstd:user" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>

</xsd:schema>


Die Validierung sagt aber, dass der Typ "userstd:user" nicht gefunden werden kann.
News:
20.04.2011
2 Antworten
2
Hallo das Problem ist das du user nicht als Type sondern als Element definiert hast.
Du hast 2 Möglichkeiten entweder du Referenzierst das Element user
<xsd:element name="user" ref="user" minOccurs="0" maxOccurs="unbounded"/>


oder du machst aus user einen typen und verweist dann auf diesen:
<xsd:complexType name="user">
<xsd:sequence>
<xsd:element name="id" type="xsd:long" />
<xsd:element name="firstName" type="xsd:string" />
<xsd:element name="lastName" type="xsd:string" />
<xsd:element name="displayName" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
[...]
<xsd:element name="user" type="user" minOccurs="0" maxOccurs="unbounded"/>
21.04.2011
schulz3000 390 1 6
0
Das war es. Vielen Dank
21.04.2011

Stelle deine Xml-Frage jetzt!