之前我使用过Jaxme 2库从.XSD文件生成Java代码没有问题。我目前遇到的问题是从包含http://schemas.microsoft.com/2003/10/Serialization/命名空间的XSD文件生成Java。
我的.XSD的一些示例代码是:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/MyMessagingTypes"
xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/"
elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
<xs:complexType name="MyMessage">
<xs:sequence>
...
<xs:element minOccurs="0" name="MyPlanID" type="ser:guid" />
...
</xs:sequence>
</xs:complexType>
<xs:element name="MyMessage" nillable="true" type="tns:MyMessage" />
</xs:schema>
我得到的错误是:
元素无效:未定义类型{http://schemas.microsoft.com/2003/10/Serialization/} guid。
任何想法是什么问题或如何从这个xsd生成Java代码?
答案 0 :(得分:1)
我不知道http://schemas.microsoft.com/2003/10/Serialization/的架构位于何处,但你必须找到它,并确保Java看到两个架构。或者,您可以编辑XSD以包含您自己的GUID类型。