首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用普通旧XML (POX)创建Spring服务

使用普通旧XML (POX)创建Spring服务
EN

Stack Overflow用户
提问于 2013-03-18 20:20:30
回答 2查看 1.2K关注 0票数 1

因此,我正在为一个已经存在的应用程序编写一个Spring服务。我让服务工作到它将接收请求并对其作出响应的地方,但问题是,应用程序希望响应在平原Old (POX)中。我的响应当前将SOAP头附加到它上,如下所示:

代码语言:javascript
复制
<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>

我需要的是:

代码语言:javascript
复制
<Person>
    <FirstName>John</FirstName>
    <LastName>Smith</LastName>
</Person>

据我所见,Spring非常有能力做到这一点,我认为它与DomPoxMessageFactory有关,但我找到的所有示例都与Spring的旧版本有关,比如v1.5。即使是春季发行版中的POX样本也是3年前编写的。谢谢你的帮助!

编辑:我还使用了spring v2.1.2。到目前为止,我的代码非常类似于您在这里发现的内容:http://static.springsource.org/spring-ws/sites/2.0/reference/html/tutorial.html

EN

回答 2

Stack Overflow用户

发布于 2013-03-21 13:04:27

您可以实现一个EndpointInterceptorAdapter并更改覆盖handleResponse的响应。

代码语言:javascript
复制
@Override
public boolean handleResponse(MessageContext messageContext_, Object endpoint_) 
throws IOException {

WebServiceMessage _webServiceMessage = messageContext_.getResponse();
SoapMessage _soapMessage = (SoapMessage) _webServiceMessage;
// modify the content

,但是,我不确定您可以修改什么扩展响应。

票数 0
EN

Stack Overflow用户

发布于 2016-09-20 15:44:51

对我来说,我所需要的只是基于java的配置:

代码语言:javascript
复制
@Bean(name = "messageFactory")
public WebServiceMessageFactory messageFactory() {
    return new DomPoxMessageFactory();
}

这意味着MessageDispatcherServlet将切换到POX,而不是默认的SOAP。

如果您使用的是基于XML的配置,这应该可以做到:

代码语言:javascript
复制
<bean id="messageFactory" class="org.springframework.ws.pox.dom.DomPoxMessageFactory" />

来自评论 by @loshad-vtapkah:

只有在request.xml中指定名称空间时,此修改才有效。对于在您提供的链接上指定的情况,将省略命名空间。因此,您需要为CountryEndpount (检查PayloadRoot注释)设置空名称空间,或者需要扩展DomPoxMessage.createWebServiceMessage()方法来更新文档节点命名空间。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15486140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档