1 package demo.hwDispatch.server; 2 3 import java.io.InputStream ; 4 5 import javax.xml.soap.MessageFactory ; 6 import javax.xml.soap.SOAPMessage ; 7 import javax.xml.transform.Transformer ; 8 import javax.xml.transform.TransformerFactory ; 9 import javax.xml.transform.dom.DOMSource ; 10 import javax.xml.transform.stream.StreamResult ; 11 import javax.xml.ws.Provider; 12 import javax.xml.ws.WebServiceProvider; 13 14 @WebServiceProvider(portName = "SoapPort3", serviceName = "SOAPService3", 15 targetNamespace = "http://objectweb.org/hello_world_soap_http", 16 wsdlLocation = "file:./wsdl/hello_world.wsdl") 17 public class GreeterDOMSourcePayloadProvider implements Provider<DOMSource > { 18 19 public GreeterDOMSourcePayloadProvider() { 20 } 22 23 public DOMSource invoke(DOMSource request) { 24 DOMSource response = new DOMSource (); 25 try { 26 System.out.println("Incoming Client Request as a DOMSource data in PAYLOAD Mode"); 27 Transformer transformer = TransformerFactory.newInstance().newTransformer(); 28 StreamResult result = new StreamResult (System.out); 29 transformer.transform(request, result); 30 System.out.println("\n"); 31 32 InputStream is = getClass().getResourceAsStream("GreetMeDocLiteralResp3.xml"); 33 34 SOAPMessage greetMeResponse = MessageFactory.newInstance().createMessage(null, is); 35 is.close(); 36 response.setNode(greetMeResponse.getSOAPBody().extractContentAsDocument()); 37 } catch (Exception ex) { 38 ex.printStackTrace(); 39 } 40 return response; 41 } 42 } 43 | Popular Tags |