Apache CXF - WS 解决如何从标题中删除/删除回复
Posted
技术标签:
【中文标题】Apache CXF - WS 解决如何从标题中删除/删除回复【英文标题】:Apache CXF - WS addressing how to remove/delete ReplyTo from Headers 【发布时间】:2016-04-02 05:14:01 【问题描述】:我正在尝试使用 Apache CXF 2.7.18 实现 WS-Addressing。我可以设置一些标题,如 To、Action 等。但我想从 SOAP 请求中删除/删除 ReplyTo
<Action xmlns="http://www.w3.org/2005/08/addressing">http://...</Action>
<MessageID xmlns="http://www.w3.org/2005/08/addressing">urn:uuid:....</MessageID>
<To xmlns="http://www.w3.org/2005/08/addressing">https://....</To>
<ReplyTo xmlns="http://www.w3.org/2005/08/addressing">
<Address>http://www.w3.org/2005/08/addressing/anonymous</Address>
</ReplyTo>
有人知道怎么做吗?
【问题讨论】:
您找到解决方案了吗? 【参考方案1】:我找到了一个解决方案,即使它有点脏,但它对我有用。我已明确将其设置为“null”(使用 Cxf 和 JaxWsProxyFactoryBean)。
EndpointReferenceType replyTo = new EndpointReferenceType();
AddressingProperties addrProperties = new AddressingProperties();
AttributedURIType replyToURI = new AttributedURIType();
EndpointReferenceType from = new EndpointReferenceType();
AttributedURIType fromURI = new AttributedURIType();
fromURI.setValue("ms-register");
from.setAddress(fromURI);
addrProperties.setFrom(from);
addrProperties.setFrom(from);
replyToURI.setValue(null);
replyTo.setAddress(replyToURI);
addrProperties.setReplyTo(replyTo);
client.getRequestContext().put(JAXWSAConstants.CLIENT_ADDRESSING_PROPERTIES,addrPropertie);
【讨论】:
addrProperties 是什么变量? AddressingProperties addrProperties = new AddressingProperties();您可以在其中设置 from addrProperties.setFrom(from)以上是关于Apache CXF - WS 解决如何从标题中删除/删除回复的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 oAuth 2.0 保护 apache cxf webservice(jax-ws)
如何从 Wildfly (Jboss) 为 ws 端点访问 CXF jar
将 CXF 与 Apache Camel 一起使用时,如何设置 WS-Addressing MessageId 标头?
使用 apache CXF 和 WS-Adressing 的异步 JAX-WS Web 服务,属性 JAXWSProperties.INBOUND_HEADER_LIST_PROPERTY 未启动