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