问题标签 [jaxb2-maven-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2227 浏览

java - 如何为多个 xsd 重用 jaxb 绑定?

我正在尝试找出一种方法来为多个 xsd 文件使用相同的 .xjb 绑定文件。

我在这里找到了“浮动全局绑定”的解决方案: https ://www.java.net/node/674443

但是,在 globalBindings 标签下似乎不允许我尝试做的事情。

这是我对特定 .xsd 的绑定代码:

我现在如何将它应用于 xsd 目录中的任何 .xsd ?

我很难相信唯一的解决方案是实际为每个 xsd 文件生成单个绑定文件(如上面引用的论坛条目中所述),或者真的吗?

另请注意,节点 xpath 实际上会更复杂一些,因为存在不同(类型)的容器,我只是在这里对其进行了简化,以免使示例过于复杂。

0 投票
1 回答
1144 浏览

maven - jaxb2-maven-plugin 为默认值 =INF 的双打生成无效源

我有一个问题,当 XSD 文件包含双精度的默认值时,jaxb2-maven-plugin 会生成无效的源代码。

我使用jaxb2-maven-plugin (org.codehaus.mojo) 1.5 版

从以下 XSD 文件生成 Java 源代码:

生成的 Java 文件包含此方法:

该字段-InfinityD未在任何地方定义。

使用布尔值(例如<xs:attribute name="minInclusive" type="xs:boolean" default="false" />)时,默认值按预期工作。

与此相反,插件org.jvnet.jaxb2.maven2 (maven-jaxb2-plugin)会写Double.POSITIVE_INFINITY在有问题的行上。

这根本不支持吗?我错过了一个参数吗?

0 投票
3 回答
2307 浏览

java - xjc 或 jaxb2-maven-plugin 或 maven:编译 XSD 时的奇怪行为,处理文件两次但名称已更改?

不确定问题出在哪里;我怀疑 XJC 但它是由jaxb2-maven-plugin内部驱动的maven,所以有几层需要解压。

我正在编译一个 XSD 文件夹,它似乎处理每个文件两次,一次使用实际文件名,一次使用稍微改变的文件名。[顺便说一下,这是在 OSX 上,但我认为这根本不是一个直接区分大小写的文件系统问题(稍后您将看到)。]

这是相关部分pom.xml

包含这些src/main/resourcesXSD:

当我运行时maven,它在非常单一的文件上失败,例如:

请注意,第一个错误中的文件名甚至不存在;它与第二个文件名(确实存在)相同,第一个下划线分隔的单词转换为小写(但请注意第二个单词 ,Partial保持不变)。

查看maven -X输出,我很确定是 XJC 本身在这样做,但我还不能确定如何修复它。

请注意,该项目较大maven项目中的子项目,但我认为这无关紧要。对于它的价值,我maven在父项目中的命令行是:mvn -X -U install -pl onebusaway-nyc-tcip-api. (onebusaway-nyc-tcip-api是这个子项目。)

0 投票
1 回答
2932 浏览

jaxb2 - 如何使用 JAXB 自定义绑定自定义生成的 Java 对象的字段名称?

我正在尝试为以下示例 xsd 生成 JAXB 生成的对象。

并且在没有任何自定义绑定的情况下生成的类是

如您所见,字段名称是“usa”,而 setter/getter 是 getUSA/setUSA。

是否有任何自定义设置/绑定使字段名称也生成为“USA”而不是“usa”,这样字段和属性都是“USA”。

我提到了如何在 JAXB 中自定义属性名称?

但那是自定义属性,而不是字段..任何帮助

顺便说一句,我正在使用 maven-jaxb2-plugin

0 投票
1 回答
400 浏览

xsd - Jaxb 从导入的模式中为未使用的元素生成对象

我有几个模式从一组“通用”模式中继承一个或多个元素。在这个特定的实例中,我正在导入其中一个模式以使用其中定义的单个复杂类型。

当我从模式生成 java 对象时,我得到了我的模式类型,以及我按预期引用的元素,但是我也得到了从通用模式中为 30多种其他类型生成的对象。

我想使用通用模式,因为我想在通用模式更改时依靠自动构建来更新我的模式,但我不希望生成额外的 java 类。

建议?

0 投票
1 回答
1618 浏览

java - org.codehaus.mojo:jaxb2-maven-plugin 2.0 在哪里?

我目前正在使用Codehaus ( ) 开发的JAXB-2 Maven 插件jaxb2-maven-plugin从 XSD 生成 Java 类。

该网站提到该插件的版本为 2.0(上次发布时间:2015-02-09)。但是,我在任何 Maven 存储库中都找不到这个插件:

我在哪里可以找到它?

此外,我尝试使用以前的版本(1.6),但似乎目标的配置发生了xjc根本性的变化,因为 2.0 版文档中描述的属性在 1.6 版中不存在。

这就引出了第二个问题:我在哪里可以找到 1.6 版的文档?

0 投票
1 回答
2323 浏览

maven - 即使将 generateElementProperty 设置为 false,也会生成 JAXBElement

我使用 xjc maven 插件在 WSDL 中生成类型。按照我的配置:

jaxb_bindings.xjb 的内容:

我使用此绑定摆脱了 JAXBElement,但它仍然会生成。我的设置有什么问题,或者是否有另一种方法可以在没有 JAXBElement 的情况下在我的 WSDL 中生成类型?

0 投票
2 回答
10356 浏览

maven - 将 XJB 与 jaxb2-maven-plugin 一起使用

我有一个采用以下结构的多模块 Maven 项目:

根模块的 POM 只是聚合了模块 a 和 b(除其他外):

模块 a 的 POM 如下(除其他外):

因此,当我在 module-a 上运行 mvn 时,一切正常并且构建成功。但是当我在根模块运行它时,我从 XJC 插件中得到一个异常,它试图在根模块下找到绑定文件:

有趣的是,它能够正确定位 XSD:

  • 有什么线索吗?
  • 这是构建脚本中的配置问题吗?

我的构建系统的细节:

从这里参考 JAXB2 Maven 插件文档。还搜索了一些关于 SO 的相关问题,但它们没有在任何地方解释我的具体问题。

更新:看起来像一个未解决的问题。如果有解决方法,请保持线程打开。

0 投票
1 回答
681 浏览

maven - 使用 JAXB 加载 FpML 5.7 使用 Maven

我一直在努力从 FpML 5.7 记录保存建议生成 java 文件。任何帮助都会得到帮助。

我已经关注了http://www.stephennimmo.com/generate-java-objects-for-fpml-using-jaxb-and-maven-the-easy-way/FpML 5.3 JAXB 绑定,但我仍然收到以下错误。

  • 由于以下原因,您将获得此“包罗万象”的属性:
    • 字段名称“NotionalSchedule”由模式的两个不同部分使用。看:
    • 文件第 69 行:/C:/Projects/TestFpML/src/main/xsd/xml_recordkeeping/fpml-ird-5-7.xsd
    • 文件的第 53 行:/C:/Projects/TestFpML/src/main/xsd/xml_recordkeeping/fpml-ird-5-7.xsd

这是我的 bindings.xjb

这是我的 maven pom.xml。

我也尝试添加<xjc:simple />到绑定,但它没有帮助。我知道 FpML 网站的 xsd 文件中有一个重复的对象定义,但是如何扩展绑定以仍然保持 xsd 的真实性。由于此文件是市场标准,我不想更改 xsd。

谢谢你的帮助。

0 投票
1 回答
855 浏览

java - 在 jaxb2-maven-plugin 中一起使用 jaxb:class 和 annox:annotate?

当我使用jxb:classwith 时annox:annotate,我得到了这个异常:

我使用了这个配置: