KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > demo > hwDispatch > server > GreeterDOMSourceMessageProvider


1 package demo.hwDispatch.server;
2 import java.io.InputStream JavaDoc;
3
4 import javax.xml.soap.MessageFactory JavaDoc;
5 import javax.xml.soap.SOAPMessage JavaDoc;
6 import javax.xml.transform.dom.DOMSource JavaDoc;
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 JavaDoc> {
17
18     public GreeterDOMSourceMessageProvider() {
19         //Complete
20
}
21
22     public DOMSource JavaDoc invoke(DOMSource JavaDoc request) {
23         DOMSource JavaDoc response = new DOMSource JavaDoc();
24         try {
25             MessageFactory JavaDoc factory = MessageFactory.newInstance();
26             SOAPMessage JavaDoc 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 JavaDoc is = getClass().getResourceAsStream("GreetMeDocLiteralResp2.xml");
34             SOAPMessage JavaDoc greetMeResponse = factory.createMessage(null, is);
35             is.close();
36
37             response.setNode(greetMeResponse.getSOAPPart());
38         } catch (Exception JavaDoc ex) {
39             ex.printStackTrace();
40         }
41         return response;
42     }
43 }
44
Popular Tags