我正在编写一个客户端,使用webservicetemplate(spring-ws)调用SOAP webservice.我正在使用JAXB将wsdl转换为POJO.我将请求作为POJO发送到webservice但是想要以xml格式的响应(原始xml而不是unmarshalled pojo格式).
wstemplate.marshalSendAndReceive(requestPayload)会给我unmarshalled pojo对象作为输出但是我需要原始xml来响应webservice调用.
还有一个查询,如果我将响应作为原始xml,我仍然需要将marshaller bean定义为:
.soap.saaj.saajSoapMessageFactory"/>
contextpath" value="com.abc.xyz" />
(当我定义这个marshaller时,我得到错误,因为它缺少@XmlRootElement注释,因此无法将“com.abc.xyz.GetAbc”类型编组为元素
任何帮助.
最佳答案
对你来说可能为时已晚,但要将POJO编组回XML,可以使用
final Result marshallerResult = new StringResult();
marshaller.marshal(input,marshallerResult);
marshaller是你在wstemplate中使用的那个.
contextpath" value="com.dhl.dctservice" />
webservicetemplate" class="org.springframework.ws.client.core.webservicetemplate">
StringResult来自org.springframework.xml.transform包.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。