防止 xml 在 Restful 中转义 (JAXRS)

Prevent xml escaping in Restful (JAXRS)

我有一个 restful service(jersey) returns 一个 url 在其中一个标签中带有请求参数。示例:

<url>http://abc:9080/testMe.jsp?req1=a&req2=b</url>

(这是响应的一部分) 当我得到响应时,我得到如下结果('&' 变成 '& a m p;',没有任何 space。我添加了 space 以避免在这里转义):

<url>http://abc:9080/testMe.jsp?req1=a&amp;req2=b</url>

我在 google 中查找并在 jaxb 中找到了很多方法,但在 Restful (JAXRS) 中找不到。另外,我尝试了一种添加反斜杠的蹩脚解决方案,但没有成功。 如何防止它在 java 1.6 中发生?

您无需更改任何内容,因为这就像 XML 一样有效:& 是 XML 中的一个特殊字符,文本中包含的任何 & 都会被转义作为 &amp;

您的预期结果 ...=a&req2=b... 不会是格式正确的 XML 文档,而 Jersey 返回的结果格式正确。

当您想要访问响应文档中的 url 值时,您将需要使用 XML 解析器解析响应(例如,进入 DOM 文档)和解析后的文档将具有您期望的 url 值。