问题标签 [xjc]

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 投票
3 回答
68243 浏览

types - JAXB:如何在 XSD 中指定 attr 类型时更改 XJC 生成的类名称?

我是 JAXB 的初学者,在使用 xjc 生成 Java 类时遇到了烦人的问题。我得到了这样的 XSD:

并且 xjc 正在生成一个名为 的类ItemType.java,但我希望名称为Item.java。也就是说,我希望生成的类就像 XSD 是这样的:

不会在任何其他元素上重用 itemType,只是构造 XSD 的人喜欢这种方式。我想可能有一种方法可以使用自定义绑定,但我仍然没有找到方法。

有什么帮助吗?

谢谢,米格尔

0 投票
5 回答
7692 浏览

java - JAXB List Tag 创建内部类

所以我们有一个 XSD 类型,格式如下:

表示 XML:

xjc 产生几乎正确的结果。唯一令人讨厌的是“Bars”被创建为一个存储 Bars 列表的内部类。无论如何让 Bars 成为 Foo 中的一个列表,同时仍然保留上面的 XML?

0 投票
2 回答
10165 浏览

java - 使用 jaxb-xjc 生成额外的自定义方法

有一些方法可以在使用 JAXB 生成的类中生成自定义方法。

我搜索了教程,包括 oracle 的教程,但我没有找到明确的说明如何自定义 XML Schema 上描述的生成类的方法。

0 投票
1 回答
997 浏览

xsd - XJC 生成相同的类

我在两个不同的 XSD 上使用 JAXB。一些生成的类似乎是相同的。这是否不寻常,当我将类复制到我的源包结构时,我应该只复制重复的类吗?或者,是否可以运行带有不复制/生成重复类的标志的 xjc?

0 投票
9 回答
11747 浏览

java - JAXB XJC 可以禁止在生成的类中创建注释吗?

我们的项目使用 XJC 从 XSD 生成 Java 类。我正在使用 JAVA EE 6。

当我们拥有的所有 XSD 重新生成时,生成的类在文件顶部包含以下注释:

是否可以禁止此评论?原因是我们使用 SVN 进行版本控制,每次我们重新生成类时,每个文件都显示为在 SVN 中发生了更改,尽管唯一不同的是这条注释。因此,如果可能,我想完全删除评论。

有一个-no-header指令,但我不想删除整个标题,以便后人知道它是由工具生成的文件,并且修改将被覆盖。我只想删除时间戳。(或者,我会删除内置的标题,然后以某种方式插入我自己的标题。)

0 投票
1 回答
7417 浏览

java - 带有元素引用的 JAXB 多个模式

我有两个使用 JAXB 处理的模式。第一个模式经过预处理,并使用剧集文件使用其信息(遵循http://www.java.net/blog/2006/09/05/separate-compilation-jaxb-ri-21)。第二个模式导入第一个,并再次使用 jaxb 进行处理。这一切都按预期工作。

但是现在我在第一个模式中有一个元素,在第二个模式中使用引用。

架构一:

模式 b:

在处理过程中没有任何问题,但是为两种模式生成的代码提供了相同的方法:

在运行时,这会导致以下错误:

如何防止 JAXB 创建重复的 createType 方法?

提前致谢!

更新:我在 JAXB 邮件列表上问了同样的问题,在该列表上我还发布了一个工作示例。可以在以下位置找到线程和示例:http: //java.net/projects/jaxb/lists/users/archive/2011-03/message/18

在这个列表中,有人向我建议了一个解决方法,现在我可以按照我喜欢的方式使用这些模式。但我仍然认为 JAXB 不应该创建额外的“创建”方法,因为它应该已经在剧集文件中。

0 投票
1 回答
4609 浏览

java - 如何在使用 XJC 生成 JAXB 代码期间重命名顶级类名?

我正在尝试从几个 xsd 生成一些 bean。不幸的是,它们都有相同的根元素。我已经成功创建了一个用于重命名子元素的 xjc 绑定文件,但找不到选择根节点来更改它的方法。

我尝试了以下但得到错误:[错误]“/”的 XPath 评估需要产生一个元素。

0 投票
1 回答
810 浏览

jaxb - XJC 生成另一种字段类型(对 get 方法的影响)

使用最新的 JAXB (Metro) 并使用 XJC 生成 Java....

想要(正如其他用户所问的)生成 java.util.Set 作为表示无界序列的字段的类型。看起来这种类型的字段被 XJC 捕获为 UntypedListField 并且默认行为是生成 java.util.List (仅 getter)。如果我执行类似于 collection-setter-injector 插件的操作并调整字段的类型,例如

人们如何调整类型,或者构建一个新字段然后在类大纲中声明的字段集中替换它是否更容易?弄乱字段的类型如何影响属性上 get 方法的生成?

0 投票
5 回答
23108 浏览

java - JAXB 绑定文件:XmlAdapters 和包名

我有一个像这样的绑定文件

架构类在“示例”中生成(正确),但 XmlAdapters 在“org.w3._2001.xmlschema”中生成(错误)。我怎样才能解决这个问题?

0 投票
2 回答
654 浏览

java - 如何更改 XML 模式中类的访问修饰符

我正在编写一个 XML 模式文件,并从中生成类。生成的类总是公开的。我想要的是只让类包可见。这可能吗 ?如果是,请给我一个提示。

谢谢!