JAXB:如何注释类以使它们属于不同的命名空间?
我想要有JAXB注释类,这将是 编组/解组到不同的 XML 命名空间。
我需要的是这样的东西:
<someRootElement xmlns="urn:my:ns1"
xmlns:a="urn:my:ns2" xmlns:b="urn:my:ns3">
<someElement/>
<a:someElement/>
<b:someElement/>
</someRootElement>
如何才能做到?
可以通过编程来完成吗? (不需要 JAXB 的 .xjb 绑定文件?)
I want to have JAXB-annotated classes which would be
marshalled/unmarshalled to different XML namespaces.
What I need is something like:
<someRootElement xmlns="urn:my:ns1"
xmlns:a="urn:my:ns2" xmlns:b="urn:my:ns3">
<someElement/>
<a:someElement/>
<b:someElement/>
</someRootElement>
How can it be done?
Can it be done programatically?
(without the need for JAXB's .xjb bindings file?)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这将编组到以下 XML 中:
如果您使用 JAXB RI 并且不喜欢默认的
ns2
和ns3
命名空间前缀,则需要提供自己的NamespacePrefixMapper
。This marshals into the following XML:
If you are using JAXB RI and don't like the default
ns2
andns3
namespace prefixes, you need to provide your ownNamespacePrefixMapper
.