【发布时间】:2012-04-19 12:33:03
【问题描述】:
我遇到了以下问题。我有一个使用 Jersey 的网络服务,它可以产生两种返回数据——XML 和 JSON。
@GET
@Produces({"application/xml","application/json"})
返回的数据还包含一个带引号的字符串"",如果返回的数据类型是 JSON,那么一切正常 - 返回带有普通引号 "" 的字符串,但如果返回的数据类型是 XML,而不是带有返回"。
问题在于,在客户端字符串中应该有正常的"" 引号。请帮助解决这个问题。
预期的字符串示例:
{"key1":"value1","key2":"value2"}
【问题讨论】:
-
为什么会出现这个问题? XML 解析器应将
"解释为引号字符。 Jersey 甚至可能在元素内容中编码所有它可以编码的东西,而不是只在属性内容中编码引号。 (或者只是为了确定或使代码更简单。) -
这不是问题。这是正确的 XML 行为,或者至少从您所说的 听起来 来说是正确的。也许您认为不正确的输出示例会有所帮助。
-
我知道这是正确的行为,但在客户端正常字符串与正常 ("") 引号是预期的。所以这是个问题=(
-
啊,错过了您的编辑。 “客户端的 XML 解析器是哑的,不能不哑”是一个重要的细节。
标签: java xml-serialization jaxb jersey