Java '&;引用';而不是在从Jersey返回XML时使用普通引号
我有以下问题。我有一个使用Jersey的web服务,它可以生成两种返回数据—XML和JSONJava '&;引用';而不是在从Jersey返回XML时使用普通引号,java,xml-serialization,jaxb,jersey,Java,Xml Serialization,Jaxb,Jersey,我有以下问题。我有一个使用Jersey的web服务,它可以生成两种返回数据—XML和JSON @GET @Produces({"application/xml","application/json"}) 返回的数据还包含一个带有引号的字符串,如果返回的数据类型是JSON,则所有内容都正常工作-返回带有普通引号的字符串,如果返回的数据类型是XML,则返回带有引号的字符串 问题是,在客户端字符串上应该使用正常的“引号。请帮助解决此问题 预期字符串示例: {"key1":"value1","key2
@GET
@Produces({"application/xml","application/json"})
返回的数据还包含一个带有引号的字符串,如果返回的数据类型是JSON,则所有内容都正常工作-返回带有普通引号的字符串,如果返回的数据类型是XML,则返回带有引号的字符串
问题是,在客户端字符串上应该使用正常的“
引号。请帮助解决此问题
预期字符串示例:
{"key1":"value1","key2":"value2"}
XML用于程序到程序的通信。
“
字符数据内的含义与”
相同
您在试图解析“返回数据”的程序中是否遇到了一些问题?您可能需要了解:
(JAX-RS使用JAXB)
我知道“而且'这可能是个问题,因为我看到一些旧的XML系统做了一些奇怪的事情(包括令人尊敬的IE7) 为什么这是一个问题?XML解析器应该将
“
解释为引号字符。Jersey可能会对元素内容中的所有内容进行编码,而不是只对属性内容中的引号进行编码。(这只是为了确保或简化代码。)这不是一个问题。这是正确的XML行为,或者至少从您所说的听起来是正确的。也许您认为不正确的输出示例会有所帮助。我知道这是正确的行为,但在客户端,需要使用带正常(“”)引号的正常字符串。所以这是一个问题=(啊,错过了您的编辑)客户端的XML解析器是哑的,不能使其不哑“是一个重要的细节。是的,客户端需要带普通引号的普通字符串。@VladimirSelin需要什么?客户端到底在运行什么?为什么它无法解析格式良好的XML?您解决了错误的问题;实际的问题不是服务器端用替换引号”
(这将为您提供有效的XML)但是客户端无法处理这样的XML。这也可能暗示客户端存在一些更深层次的问题,例如易受各种注入攻击。感谢您的建议,但是对于使用jersey上下文的web服务,我如何使用该方法呢?@VladimirSelin jersey实现了使用JAXB for XML的JAX-RS(你应该知道)。我知道=)。问题是-如果你能建议我如何“告诉”Jersey它应该使用哪个JAXB工厂,就像在我的应用程序中一样。Jersey自己做所有事情。提前感谢)你让我在这里工作:)。谷歌搜索大约一秒钟:我非常抱歉。谢谢=)