所以,我正在为一个已经存在的应用程序编写一个 Spring Web Service 来与之交谈。我让服务工作到它将接收请求并对其进行响应的位置,但问题是,应用程序希望响应采用普通旧 XML (POX) 格式。我的响应当前附加了 SOAP 标头,如下所示:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<Person>
<FirstName>John</FirstName>
<LastName>Smith</LastName>
</Person>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
我需要它返回的是:
<Person>
<FirstName>John</FirstName>
<LastName>Smith</LastName>
</Person>
根据我的发现,Spring 非常有能力做到这一点,我认为这与DomPoxMessageFactory
我发现的所有示例都与 Spring WS 的旧版本(如 v1.5)有关。甚至 Spring 发行版中的 POX 样本也是 3 年前编写的。谢谢你的帮助!
编辑:我也在使用 spring-ws v2.1.2。到目前为止,我的代码非常类似于您将在此处找到的代码:http: //static.springsource.org/spring-ws/sites/2.0/reference/html/tutorial.html