JAX-WS + Spring:在某些输入上强制使用CDATA

时间:2014-09-15 13:59:07

标签: java xml spring jax-ws cdata

我目前使用Spring + JAX-WS时遇到问题。我有一个@Webmethod的方法,它返回一个自定义对象。在这个对象中,有一些String字段可能包含一些HTML ...

生成的XML很好,除非其中一个字段中有HTML,所以我尝试添加cdata节点以防止转义,但它没有成功:(

我尝试使用EclipseLink JAXB (MOXy)添加@XmlCDATA,但似乎没有效果。

还有一个奇怪的事情,有时会自动添加CDATA节点,而不会更改任何内容,但使用相同的字符串重复两次并连接,或者使用部分字符串(例如"句子" =>"句子句子"),CDATA节点不再存在。我无法确定何时添加CDATA,或者为什么每次都添加CDATA,它似乎是随机的(但我当然认为它不是)。

任何人都有关于如何在Spring中强制CDATA节点的建议(注释,xml配置,其他......)?感谢

1 个答案:

答案 0 :(得分:0)

您可以在将HTML添加到XML之前添加CDATA或正确编码HTML。

我想知道你为什么需要将HTML(客户端的东西)发送到SOAP服务。可能是一个糟糕的设计。