使用JAXB将XSD转换为其类时出错

时间:2009-12-20 20:52:58

标签: java xsd jaxb

这是我第一次尝试使用JAXB进行任何操作,而且我遇到了问题。

当我收到此错误时,我正在尝试使用JAXB的XJC工具将XSD文件转换为Java类文件:

parsing a schema...  
[ERROR] The prefix "msdata" for attribute "msdata:ColumnName" associated with an element type "xs:simpleContent" is not bound.  
line 10 of file:/home/jeremy/TypeDefs.xsd
Failed to parse a schema.

架构文件中的第10行显示为:

<xs:simpleContent msdata:ColumnName="paramText" msdata:Ordinal="1">

你可以看到整件事here

编辑:事实证明,XSD文件缺少msdata的名称空间声明。只需添加xmlns:msdata="http://schemas.microsoft.com/2003/07/msdata.xsd"即可解决问题。

1 个答案:

答案 0 :(得分:2)

您需要映射msdata名称空间前缀。像

<xs:schema targetNamespace="http://maps.trimet.org/maps/model/xml" 
    xmlns="http://maps.trimet.org/maps/model/xml"
    ....
    xmlns:msdata="http://yournamespace.com/foo">