问题标签 [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 投票
0 回答
1310 浏览

java - Spring OXM:使用 jaxb2 marshaller 管理不同模式的命名空间

如何根据用于生成 XML 的 XSD 管理命名空间前缀?我有 3 个不同的 XSD 文件,使用 maven jaxb2-maven-plugin,我也能够生成 Java 类。但我无法根据相应的架构生成具有特定命名空间前缀的 XML 文件。以下是我的 jaxb2marshaller 配置:

以下是我的ManifestNamespaceMapper.java

这是生成的 XML 片段:

所以如果你看上面生成的XML,你会发现有很多不属于这里的命名空间,由于不同的XSD文件,它们属于不同的XML。其他生成的 XML 文件也是如此,我看到所有命名空间都被插入。

我不确定为什么 JAXB2Marshaller 将所有内容复制到每个文件中。有没有办法为每个 XML 文件分离命名空间和命名空间前缀?

更新

防止此问题的一种方法是创建Jaxb2Marshaller具有不同配置的多个实例,如此所述。在类似的线程中,有一个答案建议有多个contextPath我已经做过,但没有帮助。

谢谢 !

0 投票
1 回答
248 浏览

jaxb - Jaxb2-annotate-plugin 不适用于剧集

我正在尝试对生成的 JAXB 类强制执行枚举验证,但是在绑定它们时遇到了一些问题。

基本的 XSD 设置是:

为了证明我的课程重复我正在使用剧集,但是在 enumsXSD 中添加注释时看起来这并不好

编码:

并在枚举 XSD

理想情况下,@deprecated 应该是@XmlJavaTypeAdapter(FooAdapter.class),但我认为让我们从小处着手。

0 投票
1 回答
426 浏览

jaxb - ObjectMapper 抛出异常:“没有单字符串构造函数/工厂方法”,由于“nillable”属性?可以做什么?

我需要帮助来解决/修复以下异常的原因...

IE,

这是有问题的json字符串

IE,

导致解析失败的架构元素如下所示......

IE,

请注意:如果我从 MyDate 模式元素中删除“nillable”属性,则示例运行没有问题)

问题:

这是架构...

IE,

这是有问题的代码...

IE,

异常发生在此语句上...

IE,


如果需要,请在下面了解更多详细信息...


我的路由.java...

IE,

PreservePropertyNameStrategy.java...

IE,

MySubGroupType.java - 从架构生成...

IE,

MyGroup.java - 从架构生成...

IE,

这是 pom.xml ......

IE,

**环境...我仅限于这些依赖项/版本等**

IE,

0 投票
3 回答
3507 浏览

maven - Maven:从编译中排除目标/生成源

这个问题,只是为了确保我的解释是正确的:

我正在使用 Mojohaus jaxb2-maven-plugin 从 .xsd 文件生成 java 类,默认情况下它将它们放在目标/生成源中

现在,我想在源代码控制中跟踪这些类(当然不包括目标),有一天我可能会用注释或一行代码稍微定制一个,我什至可能会更改我的类生成插件,那又如何做的是我将这些类和包复制到 src/main/java

当我尝试编译时,这让 Maven 感到不安,因为他将“目标/生成源”视为源目录,并且他两次找到所有类。据我了解,我可以排除源目录中的类,但我不能从 Maven 构建中删除源目录,对吗?

所以唯一的解决方案是配置我的 jaxb2 插件以在其他地方生成类,对吗?

更新

好的,这不像我想的那样工作,如果我更改我的 jaxb 插件的 outputDirectory,它仍然被 Maven 包含为源目录,我不知道为什么。

更新 2:解释是插件在生成源阶段将 outputDirectory 添加为 maven 源目录,它不是可选的或可定制的。

0 投票
1 回答
1023 浏览

maven - Jaxb2 maven 插件:Sources vs SchemaDirectory

我正在制作一个 maven 项目,它将利用 Jaxb2-maven-plugin 从 xsd 文件中生成 java 文件。我的项目结构如下:

下面是来自 pom.xml 的插件配置

如果我像这样编译,那么我会得到以下错误(即使源目录包含有效的模式文件):

但是,如果我像下面这样评论源代码并取消评论和修改,那么我就可以从常见的模式中生成 java 类。

谁能告诉我为什么会这样?另外,如果我必须解析一个根文件夹(有多个子文件夹)下的所有模式文件,我该怎么办?

谢谢

0 投票
0 回答
824 浏览

jaxb - 使用 Jaxb 从 Kotlin Enum 生成 XML 模式

我想使用 Kotlin 枚举类中的一些 XML 模式文件。

当我从 xml 模式生成类时,这是输出:

所以我想,当我创建一个枚举类并添加相同的注释时,我可以反过来做同样的事情。

在我的 pom 文件中,我有以下配置:

Java 类是使用 xjc 生成的,但是当我尝试使用 schemagen 生成 xml 模式时,会显示以下错误:

如何从 Kotlin 枚举类生成 XML 模式?

0 投票
1 回答
1715 浏览

spring - 未找到模式 - Spring Boot WS

我有下一个问题:当我使用 maven 遵循Spring boot WS 示例时,当我按照步骤添加 xsd 文件后,指南指示如何将插件添加到 pom.xml 文件中,这会自动将 xsd 文件转换为java类对象。但我收到了这个:

这是我的 pom.xml:

这是一个屏幕截图,看起来像错误: 错误截图

任何帮助表示赞赏!

0 投票
1 回答
823 浏览

java - Java中的XSD命名空间问题

我创建了 2 个具有不同名称空间的 xsd,并尝试将 Customer.XSD 导入 Main.XSD,如下所示:

主要.XSD:

客户.XSD

以下不起作用:

由于上述导入标签在 Pom.xml 中出现如下错误:

POM.XML:

因为我没有得到上面xsd的问题。请对此进行检查并提出建议。

0 投票
1 回答
104 浏览

jaxb - 使用 jaxb 编组 nil-able 元素时抑制输出

我的代码使用的是提供的 XSD,它混合了 nil-able 和 not nil-able 元素:

当我编组一个没有这两个值的对象时,我得到一个 nil 正在为 nil-able 元素输出

虽然我接受这在技术上是最正确的输出,但有没有一种方法可以抑制这种情况,以便在不更改 XSD 的情况下根本不会出现元素?

0 投票
1 回答
725 浏览

maven - 从复杂类生成 xsd 时,Jaxb2 maven 插件出错

我有一个案例,我有 35 个类,其中一些在它们内部相互关联。如;

当我为阶段生成资源或生成源运行项目时。我收到此错误附录是非静态内部类,JAXB 无法处理这些。

我该如何解决这个问题?如何在一个简单的 xsd 中生成所有类 xsd 或者如何一一创建 xsd' 并导入到复杂的