问题标签 [xml-binding]
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.
java - jaxb:将属性绑定到元素
如何使用 JAXB 实现这个 XML?目前,grantA,C,B 元素中的 expires 属性没有限制 - 但它应该。我不知道如何将元素与属性相关联。我必须为每个grantA、C、B 创建类吗?
XML:
XSD:
我现在的状态是:
客户.java:
客户.java
jaxb - JAXB XJC - 将 XML 模式版本绑定到类名中
我们有两个元素名称相同但命名空间不同的 XML 模式。当我使用 xjc 时,编译器将元素分配给相同的类路径和元素。如下所示,根本问题在于对带前导数字的 XML Schema 命名空间的处理;特别是 1.0 和 1.1。XJC 正在将这些不同的 URI 编译到相同的类路径中;特别是_1。这导致与相同的类路径发生冲突:
bindings.xjb 中将 1.0 绑定到 _1_0 和 1.1 到 _1_1 的语法是什么?
谢谢!!!
XML 模式 1: http: //namespaces.companyABC.com/EDA/Process/1.0/TheChange
XML 模式 2: http: //namespaces.companyABC.com/EDA/Process/1.1/TheChange
错误:
这是使用 XSD 模式注释的解决方案。然而,解决方案应该作为 bindings.xjb 中的绑定模式而不是注解来实现。注释将要求对每个模式进行注释,这是一个问题。
这个注解是如何作为 bindings.xjb 中的绑定模式实现的?
java - xjc 类型定义名称解析错误
当我想用 XJC 编译我的 XSD(我不是它的作者)时,我遇到了麻烦。
具体来说,我得到了错误(实际上还有更多类似的错误):
这很奇怪,因为提到的文件 ( siri_situationIdentity-v1.1.xsd
) 指的是另一个 XSD,其中声明了可疑类型。
我尝试了几件事
- 切换Java版本以获得不同的xjc
- 直接从 java.net 尝试了一些不同的 xjc
- 对文件应用了一些修改,以便删除当前应用的有关包含/导入的 JAXB 变通办法
- 尝试使用具有依赖模式的整个目录作为 xjc 的目标
- Altova XMLSpy Java 代码生成运行良好,没有错误(但对我来说没有办法)
他们都没有工作。
有人知道错误消息是由什么引起的吗?我不明白这一点。您可以直接从这里获得所有 XSD: Verband Deutscher Verkehrsunternehmen (VDV) - Ist-Daten-Schnittstellen
我尝试过的命令行(除其他外)是:
非常感谢任何帮助或提示。
问候
xsd - 如何正确使用 GenerateDS 进行 DDEX XML 绑定
我对用于读取符合此架构的输入文件的 Python XML 绑定感兴趣:http: //ddex.net/xml/ern/341/release-notification.xsd
不过,此 XSD 依赖于许多其他 XSD,最重要的是:http: //ddex.net/xml/20120404/ddexC.xsd和 http://ddex.net/xml/20120404/ddex.xsd
我的第一次尝试是使用generateDS。如果我使用 --no-process-includes ,我能够成功地为 release-notification.xsd 生成绑定:
但是,这给我留下了一个几乎没用的 Python 对象,因为大多数 ComplexTypes 是在ddexC.xsd中定义的。
如果我在没有 --no-process-includes 的情况下尝试它,我会得到:
所指的定义是这样的:
因此,似乎 ddex 和 ddexC 命名空间以某种方式混合在一起,并创建了一个循环引用。
这里有什么建议吗?
jaxb - JAXBException:意外元素(uri:“”,本地:“workConfigRestWrapper”)。预期元素是 <{}Config>、<{}MyMap>
我需要使用 xml 绑定解组映射给出错误。
MyMap.java:
MyAdaptor.java : 公共类 MyAdaptor 扩展 XmlAdapter> {
配置.java:
客户端代码:
错误信息:
JAXBException:意外元素(uri:“”,本地:“workConfigRestWrapper”)。预期元素是 <{}Config>、<{}MyMap> javax.xml.bind.UnmarshalException:意外元素(uri:“”,本地:“workConfigRestWrapper”)。预期元素是 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.handleEvent(UnmarshallingContext.java:662) 上 com.sun.xml.bind.v2 上的 <{}Config>、<{}MyMap>。 runtime.unmarshaller.Loader.reportError(Loader.java:258) 在 com.sun.xml.bind.v2.runtime.unmarshaller.Loader.reportError(Loader.java:253) 在 com.sun.xml.bind.v2。 runtime.unmarshaller.Loader.reportUnexpectedChildElement(Loader.java:120) 在 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext$DefaultRootLoader.childElement(UnmarshallingContext.java:1063) 在 com.sun.xml.bind。
java - JAXB @XmlAttribute @XmlValue 真实例子
我是 JAXB 的新手,在从 XML 转换为 Java 类实例时遇到了麻烦。
我有以下 XML:
我开发了以下 Java 代码:
和
这些代码示例运行但数据错误:
http://i.stack.imgur.com/qCCIM.png
请帮我。
我也不明白,如果我会有很多不同的
我可以轻松简单地做些什么?
我的意思是这种情况:
java - 将 XML 映射到 Java 中的对象
假设我有一个名为Test的类,像这样
也是一个 XML 字符串,其中包含Test类对象的数据。XML 字符串是
现在我的任务是解析那个 XML 字符串并创建一个Test类的对象,并将这个 XML 中包含的所有数据放入该对象中。我正在使用JDOM进行 XML 解析。我想知道是否有任何解决方案可以将 XML 格式的所有数据直接复制到Test对象中?
现在我这样做是这样的:我解析 XML 字符串并逐个获取每个节点的数据,然后调用 setter 方法为Test类对象的每个字段设置数据。
java - 如何将书籍的引用转换为 XML?
我有几本书的参考必须转换为 XML。
我想为此操作用 Java 创建应用程序。
书籍参考:
XML:
如何将书籍的引用转换为 XML 格式?
你有什么建议?
xml - 如何 XML 绑定 Apache Cayenne 生成的类
首先,为这个冗长的问题道歉。
我有许多由 Cayenne 生成的类,如下所示。
我希望将其转换为 XML 模式,最好使用绑定表示法。首先要注意的是上面的代码是一个“_Form.java”文件,但还有一个生成的“Form.java”文件扩展了这个类,如下所示。我知道不应更改“_Form.java”(上图)。
本质上,我希望将它和其他一些类转换为 XML,就像我在下面这个简单的类示例中所做的那样,使用 xml 绑定。
我应该对生成的类进行哪些更改以生成以下 XML?
jaxb - 什么是 JAXB 和 JAXRS?它们有什么关系?
对不起这个直率的问题。但是许多人日复一日地使用这两个术语,但我不知道。我对此进行了一些研究,并分别知道它是什么。但不明白它是如何相关的。我将首先分享我对这两个的理解。
JAXB 是 XML 到 Java 的绑定技术,支持模式和 Java 对象之间以及 XML 实例文档和 Java 对象实例之间的转换。在内部,JAXB 会在 xml 和 java 之间进行所有这些转换。这是一个 xml 解析器,然后它知道 xml 中的哪些组件对应于 java 中的哪些组件并且它会中断。从 JAXB 转换这个答案是由 xjc ( 或 codgen 插件) 之类的工具完成的。映射可能像
xsd:字符串 java.lang.String
xsd:整数 java.math.BigInteger
JaxRs 是不同的。这是一组处理请求的规范。这意味着它说“GET(”/foo“)”意味着使用 url /foo 处理 get 调用。它只说明 . 它是怎么做的?是的,这就是这个规范的实现。有许多实现,例如 restlet 、 resteasy 、 jersey 、 apache cxf 等。这类似于您在数学中实现的逻辑和方式。算法思想是桶搜索。这可以以任何方式实现。在 java 术语中,JaxRs 是接口,这 4 个 restlet、resteasy、jersey、apache cxf 是接口的实现。
现在请说我的理解是否正确。然后告诉他们是如何相关的。请帮忙 。如果可能的话,图片解释会更有帮助。