java – 使用CXF时缺少SoapAction标头
发布时间:2020-05-25 02:58:10 所属栏目:Java 来源:互联网
导读:我有一个来自外部WS的WSDL文件,我正在连接到它.我正在尝试使用CXF(与JAX-WS一起使用).但我从其他系统得到错误.所以我决定看一下我们发送到该系统的数据,唯一不同的是CXF设置了空的SOAPAction http头. 我进行了一些阅读,看起来只有已知的解决方案直接指向WSDL.
|
我有一个来自外部WS的WSDL文件,我正在连接到它.我正在尝试使用CXF(与JAX-WS一起使用).但我从其他系统得到错误.所以我决定看一下我们发送到该系统的数据,唯一不同的是CXF设置了空的SOAPAction http头. 我进行了一些阅读,看起来只有已知的解决方案直接指向WSDL.但我已经这样做了. 任何人都有这方面的线索? <bean id="object" class="xxx.XxxObject" factory-bean="objectFActory"
factory-method="create"/>
<bean id="objectFActory" class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean">
<property name="serviceClass" value="xxx.XxxObject"/>
<property name="wsdlLocation" value="http://blebleble"/>
<property name="address" value="http://blebleble"/>
<property name="username" value="user"/>
<property name="password" value="password"/>
<property name="properties">
<map>
<entry key="javax.xml.ws.session.maintain" value-type="java.lang.Boolean" value="true"/>
</map>
</property>
</bean>
头: POST /somepath HTTP/1.1 Content-Type: text/xml; charset=UTF-8 Accept: */* Authorization: Basic <randomhex> SOAPAction: "" User-Agent: Apache CXF 2.7.6 Cache-Control: no-cache Pragma: no-cache Host: somehost:8080 Connection: keep-alive Content-Length: 2791 解决方法这些都不是CXF特有的.它是所有标准的JAX-WS.您可以使用@WebMethod批注的action属性来设置SOAP操作.例如 @WebMethod(operationName = "TestOperation",action="http://example.org/TestOperation") 如果您使用wsimport从WSDL生成工件,则应该已在@WebService带注释的界面中设置此设置. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
