【发布时间】:2015-01-26 01:03:58
【问题描述】:
我想将 RAW 请求响应 XML 打印到控制台。我已经使用 wsdl2java axis2 创建了存根。
wsdl2java 创建了 2 个 java 文件,一个用于 stub,一个用于 callbackhandler。
我正在尝试使用下面的方法,但为
获取空值operationContext.getMessageContext("Out");
/
operationContext.getMessageContext("In");.
代码
public void SOAPLogHandler(Stub stub){
ServiceContext serviceConxt = stub._getServiceClient().getServiceContext();
//**** Enable the Cache to hold the last operation
OperationContext OperationContext = new OperationContext();
boolean cacheLastOperationContext = true;
OperationContext.setComplete(true); // Enable the Cache value
serviceConxt.setCachingOperationContext(cacheLastOperationContext);
serviceConxt.setLastOperationContext(OperationContext);
OperationContext operationContext = serviceConxt.getLastOperationContext();
if (operationContext != null) {
MessageContext outMessageContext = operationContext.getMessageContext("Out");
operationContext.getMessageContexts();
if (outMessageContext != null) {
System.out.println("OUT SOAP: "+outMessageContext.getEnvelope().toString());
}
MessageContext inMessageContext = operationContext.getMessageContext("In");
if (inMessageContext != null) {
System.out.println("IN SOAP: "+ inMessageContext.getEnvelope().toString());
}
}
请告诉我是否有其他方法可以获取原始 xml
【问题讨论】: