问题标签 [spring-oxm]
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.
xml - 在spring批处理中从不同的数据库表中提取数据
我应该从特定数据库中提取数据并将其放入 XML 文件中。
但是数据只能通过对数据库的不同表进行多次选择查询来获得。
这是我的配置:
我应该为每个查询做所有这些配置(并创建相应的 java 类)吗?
编辑:
我已经完成了这个配置以使用查询“A”从数据库中提取数据(并且它有效)。所以我的问题是:我是否应该为我想要执行的每个查询编写相同的配置(与阅读器、编写器、编组器等)......或者我是否可以编写一种“查询组" 可以一个接一个地执行,并将其结果写入一个 XML 文件 ???
java - JAXB:有没有办法只解组 XML 中的特定路径?
我有一个 XSD,它定义了几个复杂类型的层次结构(每个都是另一个的孩子)。
前任:
我希望仅将 complexTypeFlawType
导入列表。我想我可能可以使用 Apache Digester 来执行此操作,但想知道是否有某种方法可以使用 JAXB 来执行此操作。直接解组到一个detailedreport
对象,然后使用循环来提取 FlawType 是可行的,但似乎需要做很多额外的工作。
从本质上讲,我希望能够提出一个解决方案,可以执行以下操作:
我可能可以将整个 XML 文件加载到 DOM 对象中,然后使用 XPath 之类的东西来定位所有单个FlawType
节点,对于每个节点,使用 Unmarshaller 为每个节点执行此操作,但不知道是否有更简单的方法. 我想我可能也可以使用某种形式的 SAX 解析器(我从未使用过它们),但希望能更直接一些。
我实际上正在使用带有 spring-oxm 包的 Spring 4 框架来为我处理大量的 JAXB 工作,因此很想找到一个易于理解和维护的简单解决方案。使用像 Digester 这样的东西只会为我的堆栈添加更多我宁愿避免的技术。
有没有一种简单的方法可以用 JAXB 做到这一点,或者这超出了 JAXB 的范围?
java - spring-oxm:我可以解组文件的子元素吗?
这与我之前的问题有关,该问题通常更针对 JAXB。但是这个问题更具体地与spring-oxm
. 我正在寻找是否可以使用 spring-oxm unmarshaller 从我的 XML 中仅解组特定元素。
我的 XSD 是:
使用一些预处理,我可以找到“cwe”类型的所有节点:
使用 JAXBUnmarshaller,我可以设法解组我的对象:
但是,如果我尝试使用 spring-oxm unmarshaller 的概念,则会出现错误。
@M.Deinum 在评论中建议尝试 XPath,但我并不担心更好 - 在解组时抛出相同的错误:
我究竟做错了什么?我创建 DOMSource() 的方式有问题吗?为什么我可以直接使用 JAXBUnmarshaller 解组,但不能使用 Spring 包装器?无论如何通过spring-oxm unmarshaller显式声明declaredType?
CweType.java:
unmarshalling - xstream 有条件地解组到一个类
由于遗留(不幸)的原因,我们对 2 种不同的表示具有相同的 xml 根。使用 xstream,我们如何让 unmarshaller 在解组时使用我们需要的类。
我正在考虑传递一些上下文(通过 ThreadContext),以便 xstream 在解组期间使用该信息来选择正确的类,尽管我不确定从哪里开始。任何建议都非常感谢。
笔记:
- 两个 XML 的根标签相同
- 根标签上没有其他信息(属性)可用于区分 2 个表示
- 由于遗留原因,无法更改 xml
理想情况下,我希望该解决方案可以与 Spring-OXM 一起使用,但如果需要,我会采取捷径
java - @XmlSeeAlso 不适用于同一个根节点
我正在尝试使用@XmlSeeAlso
注释实现继承。当为子类使用不同的根节点名称时,一切都按预期工作。但是对于相同的根名称,Unmarshaller 总是从 XmlSeeAlso 列表中选择最后一个类,尽管有内容。更改根名称是不可能的。有什么方法可以让 Unmarshaller 按内容正确选择课程?
输出:
java - JAXB“意外元素”错误
我正在尝试解组 XML 文档。我使用 XJC 生成类。
XSD:
XML:
生成的类:
我使用 Spring OXM 如下:
然后我使用 Unmarshaller 如下:
我收到以下错误:
我在网上搜索,但找不到任何有用的东西。我知道这个Element
类没有用 注释@XmlRootElement
,但根据我发现的文章,这是 XJC 的工作方式——在我的例子中,它创建了一个ObjectFactory
类。
spring - spring oxm 是否创建单例 jaxbcontext?
Spring OXM 框架内部是如何JAXBContext.newInstance()
创建的。是单例还是多例。我的要求是我想要单例jaxbcontext
对象?请分享 Spring OXM 的详细信息。谢谢。
java - 使用 Spring Jaxb2Marshaller 生成动态命名空间前缀
我正在使用 SpringJaxb2Marshaller
将 java 对象转换为 XML,反之亦然。考虑到示例,我需要为xmlns
prefix
和- 设置动态值value
其中prefix
asabc
和value
ashttp://www.example.com
必须是可配置的(从属性文件提供)。
Product
查看包下类的示例xmlcom.test.abc
要构建此 xml,我使用以下配置
Spring Jaxb2Marshaller Bean 配置
包信息.java
在这里,我是硬编码的 xmlns 前缀和值。我需要从属性文件中提供 xmlns 前缀和值。我怎样才能做到这一点?
我正在使用 SpringBoot 1.3.3
spring - 类或其任何超类在此上下文中是已知的
我试图理解我遇到的这个特殊问题。在这里使用 Spring OXM 来实现一个 Soap WS Consumer。
我只是附上相关信息来解释问题。
登录Ws配置,
LoginClient 客户端实现为,
为了完整起见,GetLoginByUser,
GetLoginByUserResponse,
但是,当我尝试时,
我得到错误,
从我可以看到它在编组getUserByPrincipal
(UserClient
)时不会失败,但会在getLoginByUserId
( )上失败LoginClient
。
spring-ws - Spring Jaxb2Marshaller 不调用 CharacterEscapeHandler
我竭尽全力想弄清楚,但失败了。Spring Jaxb2Marshaller 似乎忽略了 CharacterEscapeHandler !:-(
这是我的代码:
} 真的累了 :-(