我有一个返回XML Payload的Web服务。
在该Web服务响应中 - 我的GT括号解析为真正的括号 - 而LT保持为<
- 我不明白为什么。
使用
Weblogic 10.3
Web服务注释为
@WebService(name = "MyService", portName = "MyServicePort", serviceName = "MyService", targetNamespace = "http://kwikksilva/myservice/ws")
@SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
这样的方法
@WebMethod
@WebResult(name = "SyncResponse", targetNamespace = "http://kwikksilva/myservice/ws")
public SyncResponseTO processRequest(
它返回带有效负载的TO
@XmlRootElement(name = "SyncResponse", namespace = "http://kwikksilva/myservice/ws")
@XmlAccessorType(XmlAccessType.FIELD)
public class SyncResponseTO implements Serializable {
/** The Constant serialVersionUID. */
private static final long serialVersionUID = 1L;
/** The response. */
@XmlElement(name = "Payload", nillable = false, required = true)
private String payload;
我得到的回复看起来像这样
<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:processSyncRequestResponse xmlns:ns2="http://kwikksilva/myservice/ws">
<ns2:SyncResponse>
<Payload xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">
<Vbc>
<ApptEffDt>795243600000</ApptEffDt>
</Vbc>
</Payload>
</ns2:SyncResponse>
</ns2:processSyncRequestResponse>
</S:Body>
</S:Envelope>
为什么一个编码到一个括号而不是另一个?
有没有人对此有任何想法 - 我很困惑......
答案 0 :(得分:0)
获取有效负载并对其进行xml解码。它应该解决问题。