在Restful中防止xml转义(JAXRS)

时间:2015-10-21 20:30:20

标签: java xml rest jersey jax-rs

我有一个宁静的服务(球衣),在其中一个标签中返回一个带有请求参数的网址。示例:

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

(这是回复的一部分) 当我收到回复时,我得到如下('&amp;'变为'&amp; a m p;',没有任何空格。我增加了空间以避免逃离这里):

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

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

1 个答案:

答案 0 :(得分:1)

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

您的预期结果...=a&req2=b...不是格式良好的XML文档,而泽西岛返回的结果格式正确。

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