SpringWS无效的内容类型
我有一个SpringWS客户端。我通过wsimport生成了WSDL存根 当我尝试发送请求时,我收到一个无效的内容类型异常: 严重:SAAJ0537:无效的内容类型。可能是错误消息而不是SOAP消息 线程“main”org.springframework.ws.soap.SoapMessageCreationException中出现异常:无法从InputStream创建消息:无效内容类型:text/html。这是一条错误消息而不是SOAP响应吗?;嵌套异常为com.sun.xml.messaging.saaj.SOAPExceptionImpl:无效内容类型:text/html。这是一条错误消息而不是SOAP响应吗 这是否表示我发送的消息的内容类型无效,或者我收到的响应的内容类型无效?如果在客户端,如何设置内容类型 我试图通过soapui模拟web服务。我能够发送和接收正确的响应 编辑: 在我的日志中,显示已发送请求: 调试[org.springframework.ws.client.MessageTracing.sent]-发送请求 然后我得到一个例外: 线程“main”org.springframework.ws.soap.SoapMessageCreationException中的异常: 问题解决了 原来我没有发送任何SOAP内容。SOAP标头设置正确。但是肥皂盒是空的。为了解决这个问题,我必须附上我请求的内容 之前:SpringWS无效的内容类型,spring,types,Spring,Types,我有一个SpringWS客户端。我通过wsimport生成了WSDL存根 当我尝试发送请求时,我收到一个无效的内容类型异常: 严重:SAAJ0537:无效的内容类型。可能是错误消息而不是SOAP消息 线程“main”org.springframework.ws.soap.SoapMessageCreationException中出现异常:无法从InputStream创建消息:无效内容类型:text/html。这是一条错误消息而不是SOAP响应吗?;嵌套异常为com.sun.xml.messagi
GetDeletedRequest request = new GetDeletedRequest();
JAXBElement res = (JAXBElement) webServiceTemplate.marshalSendAndReceive(request, new WebServiceMessageCallback() {...}
之后:
GetDeletedRequest request = new GetDeletedRequest();
request.setGetDeletedFilter(deleteFilter); // This is the content that I'm missing!
JAXBElement res = (JAXBElement) webServiceTemplate.marshalSendAndReceive(request, new WebServiceMessageCallback() {...}
我忽略了这个错误,因为我专注于将Axis1.x客户机实现移植到SpringWS实现
一些人,包括Arjen Poustma,建议使用tcpmon来嗅探发送的内容。我没有正确配置和运行它(这是另一个不相关的问题)。但这让我有了一个想法,首先检查我的申请表发送的内容
我环顾四周,在Spring论坛上看到了一个类似的问题,关于在的无效内容类型。最后一张海报建议使用CommonHttpMessageSender,就像他在上提供的示例一样(这是一个很好的示例)。通过CommonHttpMessageSender,它可以打印出我的整个SOAP信封:
<property name="messageSender">
<bean class="org.springframework.ws.transport.http.CommonsHttpMessageSender" />
</property>
我在这里记录我的经历,因为我知道有一天会有另一个像我一样的人遇到同样的问题