/* * Copyright (C) 2015-2017 Lightbend Inc. */ package play.soap.sbtplugin.tester; import javax.xml.namespace.QName; import javax.xml.soap.SOAPMessage; import javax.xml.ws.handler.MessageContext; import javax.xml.ws.handler.soap.SOAPHandler; import javax.xml.ws.handler.soap.SOAPMessageContext; import java.util.Set; public class LoggingHandler implements SOAPHandler { public Set getHeaders() { return null; } public boolean handleMessage(SOAPMessageContext context) { Boolean outbound = (Boolean) context.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY); SOAPMessage message = context.getMessage(); try { if (outbound) { System.out.println("Sending message:"); message.writeTo(System.out); } else { Integer responseCode = (Integer) context.get(MessageContext.HTTP_RESPONSE_CODE); System.out.println("Received " + responseCode + "response:"); message.writeTo(System.out); } System.out.println(); } catch (Exception e) { throw new RuntimeException(e); } return true; } public boolean handleFault(SOAPMessageContext context) { return true; } public void close(MessageContext context) { } }