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

java - 如何在 JDO 中使用 xjc 生成的类

我们有一组由 xjc 创建的 POJO,我们需要能够通过 JDO 进行持久化。您将如何将 JDO 注释应用于生成的类?

0 投票
1 回答
21274 浏览

java - JAXB XJC - XPath 评估结果为空目标节点?

我有以下简单的 XSD 文档 ( foo.xsd):

而且我想向 XJC JAXB 编译器提示,“Height”元素应该通过使用外部绑定文件来使用类型安全的枚举类,如下所示(foo.xjb):

但是当我运行命令“ xjc -b foo.xjb foo.xsd”时,出现以下错误:

XPath 表达式对我来说看起来不错,所以我猜有一些与 XML 命名空间相关的微妙问题?我尝试了一些使用(或不使用)默认命名空间、targetNamespace 等的组合,但总是出现相同的错误。请注意xjc,如预期的那样,它会自行为 XSD 文件生成 Java 源,而无需外部绑定文件。同样,在 XSD 文件中使用嵌入式绑定定义可以按预期工作。

请注意,我在 Mac OS 10.6.8 上使用 Java 版本“1.6.0_26”和 xjc 版本“JDK 6 中的 JAXB 2.1.10”。

有人可以解释如何在不修改原始 XSD 的情况下实现这一目标吗?

0 投票
1 回答
7690 浏览

xsd - XJC 生成整数而不是 int

以下模式应该int在一个类中生成两个原始字段Value,而是int元素生成一个原始字段,为属性生成java.lang.Integer

我查看了JAXB 文档中的任何内容,即属性和元素的生成方式可能不同,但什么也没找到。

谁能解释一下?是否有使属性生成为原语的修复程序int

0 投票
1 回答
8507 浏览

web-services - 请帮助:xjc 抛出“两个声明导致 ObjectFactory 类中的冲突”

采用以下简化的 XSD:

然后,尝试以下操作:

你应该总是得到以下异常:

请注意,有一个名为“ Widget ”的元素,它是一个 complexType,并且具有名为“ color ”的元素。在与元素“ Widget ”相同的级别上,还有一个名为“ WidgetColor ”的简单元素。

更令人费解的是,如果您从“color”元素序列中删除属性 minOccurs="0" 或删除属性nillable = " true",xjc 会成功编译模式。

有没有人见过这个问题或可以提出解决方案?

谢谢,

麦克风。

0 投票
3 回答
34036 浏览

java - 什么是 JAXB 生成的 package-info.java

我正在尝试查找有关package-info.javaJAXB xjc命令行应用程序生成的文件的实际作用的一些信息。文件中的所有内容是

这个package-info.java文件是做什么用的?

0 投票
1 回答
10177 浏览

jaxb - 通过扩展 Jaxb 生成的类来添加/覆盖行为

我有一个使用 xml 数据响应的 Web 服务器和一个使用它的客户端。两者共享相同的域代码。其中一个域对象如下所示:

当我尝试将来自服务器的响应解组到该对象中时,由于没有 absoluteUri 的设置器,因此我在类中没有 imageUri。所以我像这样扩展它:

我的对象工厂

我的解组代码在这里:

但是,setAbsoluteUri在解组时似乎没有被调用FEImage。当我在 中添加一个假人setAbsoluteUriImage.java,一切都按预期工作。

有人可以告诉我如何干净利落地扩展Image.java吗?

0 投票
1 回答
1608 浏览

java - Java:JAXB:JAXBElement 的编组到 xs:date 不正确

我在使用 JAXB 时遇到问题。我已经通过 xjc(使用 xsd 模式)创建了我的 Java 类,并且通过 parse 和 print 方法将 XML-Datatypes xs:date xs:dateTime 和 xs:time 全局绑定到 java.util.Calendar。

一切正常,直到我将一些 xs:date 字段标记为 nillable。xjc 为这些属性创建 JAXBElement 包装器。如果这些字段未编组,则会打印出日期,包括导致验证错误的时间信息。

是否有可能强制 Marshaller 将其转换为 xs:date 而不是 xs:dateTime?

我可以为那些获得转换这些字段的特殊 XMLAdapter 的字段指定绑定吗?

Java-Class 中的属性如下所示:

和相应的xsd-看起来像

有人能帮助我吗?

谢谢和最好的问候,

阿恩

0 投票
1 回答
3522 浏览

java - 如何让从 WSDL 生成的 Java 类实现接口

我们的主要 wsdl 有一系列 wsdl 导入。每个子 wsdl 导入 common.xsd 并为特定操作定义请求和回复对象。

我希望每个子 wsdl 文档中的请求对象实现一个通用接口。

首先,我尝试使用 xsd:extension 并将公共元素提取到基类中。这行得通,但会改变公开暴露的 wsdl,我不想这样做。一段时间以来,它一直稳定不变。此更改对 Web 服务的消费者应该是完全透明的。

我发现了这个: http ://confluence.highsource.org/display/J2B/Inheritance+plugin

所以我应该能够使用 <inheritance:implements>com.acme.foo.MyInterface </inheritance:implements>

但这需要运行带有“-Xinheritance”的 jaxb,我似乎无法在我的 Maven 构建中弄清楚如何做到这一点。我正在使用 org.apache.cxf:cxf-codegen-plugin:wsdl2java 从 wsdl 生成 Java 源代码。

我是否需要将模式从 wsdl 提取到 xsds 并直接使用 JAXB 生成 Java 源代码?

还有其他选择吗?

谢谢。

0 投票
1 回答
6321 浏览

xsd - XSD。xsd:element 和 xs:element 之间的区别?

我阅读了XSD关于 w3schools 的文章,这里有很多例子。例如这个:

但是在我尝试把这个.xsd文件放进去之后xjc——我看到了错误日志,像这样的圆顶:

但是当我更改前缀时xs,所有工作都正确。xsd

那么,有人可以为我澄清xs和之间有什么不同xsd吗?

也许,一个前缀 - 它是旧版本,另一个是新版本......

0 投票
2 回答
19558 浏览

jaxb - 通过绑定文件指定@XmlJavaTypeAdapter 类?

我有一个 3rd 方接口,它提供与其 API 匹配的 xsd 文件。他们的一些映射并不完全是 Java,通常的布尔值是 0 和 1 :-(

我想使用绑定文件为我的 BooleanAdapter 指定 @XmlJavaTypeAdapter 类,但到目前为止还没有任何乐趣。

绑定文件:

而且由于我使用的是 POM 中的 maven 相关位:

我已经切换 enableWrapperStyle 并且没有变化

我最终得到的是错误类型的生成适配器:

是否有一些绑定文件魔术可以用来摆脱生成的包装器并直接使用 BooleanAdapter?