在此之前,我SOAPHandler< SOAPMessageContext >
用于处理来自 web 服务的数据。代码如下:
public class MyBillSoapMessageHandler implements
SOAPHandler< SOAPMessageContext > {
@Override
public boolean handleMessage(SOAPMessageContext context) {
// This following line something will hit out of memory
SOAPMessage message = context.getMessage( );
// some other code continue...
}
}
我试着用谷歌搜索它并从这个链接中读到一些东西: JAX-WS SoapHandler with large messages: OutOfMemoryError
根据我的理解, userMessageHandlerContext
优于SOAPMessageContext
,因此我试图将其更改为:
public class MyBillSoapMessageHandler implements
MessageHandler< MessageHandlerContext > {
@Override
public boolean handleMessage(MessageHandlerContext context) {
//... code here ...//
}
}
但是,当我运行它时,我点击了:
原因:javax.xml.ws.soap.SOAPFaultException:com.mybill.ws.camel.MyBillSoapMessageHandler 处理程序不应直接实现 javax.xml.ws.handler.Handler 接口。
我不确定为什么会收到此错误。由于我的服务器未使用而发生这种情况有什么原因MessageHandlerContext
吗?
好心提醒。