最近一直在对接ESB,生成好服务端代码,请求调用采用soap的报文方式,系统服务端接受的采用的对象转换,这样导致系统没有办法接受到请求的报文存储,已被后续查找问题时候,今天抽了点时间好好研究了下Axis部署的WebService,发现里面存在类MessageContext,一时惊喜万分。
以下是获取请求及报文的参考代码:
Message inMsg = MessageContext.getCurrentContext().getRequestMessage();
System.out.println(inMsg == null?"null":inMsg.getSOAPPartAsString());
System.out.println("Test Success……");
Message outMsg = MessageContext.getCurrentContext().getResponsetMessage();
System.out.println(outMsg == null?"null":outMsg .getSOAPPartAsString());
System.out.println("Test Success……");