这是我第一次尝试将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"即可解决此问题。

最佳答案

您需要映射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">

09-30 17:20