【问题标题】:JAXB - Add a node to the XML as html linkJAXB - 将节点作为 html 链接添加到 XML
【发布时间】:2009-09-29 21:31:36
【问题描述】:

我的服务层中有一个基本的 JavaBean,最初它不是为编组而设计的。我的应用程序的其他层中的 JAX-WS、JAX-RS 和 Servlet 都使用此对象。我想在我的 REST 服务中利用向下钻取类型效果,所以我的问题是:如何使 javabean 的字段/属性之一作为 HTML 链接出现在 xml 中?显然我需要使用 CData。我无法通过添加字段等来修改原始 javabean。有没有可以使用的注释?

如果我班上有:

...
String data;
...

我怎么做(在 xml 中):

<data><![CDATA[<a href="somearbitrarylink">ValueOfData</a>]]></data>

这可以通过 JAXB 和 Annotations 实现吗?也许是 xlink?

【问题讨论】:

    标签: java xml jaxb marshalling


    【解决方案1】:

    我建议使用类型适配器。这些通常用于将 XML 字符串值调整为更强类型的值,例如时间戳,但您也可以使用它们将字符串调整为字符串。

    首先,创建javax.xml.bind.annotation.adapters.XmlAdapter 的子类。此类必须实现 marshalunmarshal,在字段值和 XML 中的 HTML 片段之间进行转换。

    一旦你有了它,你可以用

    注释你的字段
    @XmlJavaTypeAdapter(MyAdapter.class)
    

    应该就是这样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-04
      • 1970-01-01
      相关资源
      最近更新 更多