有没有办法使用 XSLT 模板文件将 JAXB 生成的对象转换为另一个 JAXB 对象。这两个对象由两个不同的 JAXB 绑定生成。
我知道我可以将对象编组为字符串,然后使用 XSLT 处理器将其转换为其他格式。之后将其解组到另一个 JAXB 对象。
问题是这是否可以在 JAXB 中实现。
我认为没有任何中间序列化或 dom 树构建是不可能的,但序列化为字符串将是最糟糕的选择恕我直言。最好的选择可能是编组到变压器处理器它执行 xsl 转换并构建 dom 树。然后可以再次对这棵树进行解组。这是一些(未经测试的)示例代码,展示了它是如何工作的:
Source xsl = ...
SAXTransformerFactory factory = (SAXTransformerFactory) TransformerFactory.newInstance();
TransformerHandler handler = factory.newTransformerHandler(xsl);
DOMResult result = new DOMResult();
handler.setResult(result);
marshaller.marshal(inputObject, handler);
transformedObject = unmarshaller.unmarshal(result.getNode());
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)