WEB SERVICE 和普通的java servlet 有什么不同,在我看来WEB SERVICE 只不过是使用soap包构建请求,再进行解包调用而已,

而WSDL只不过是,教你如何构建SOAP包。下面的代码演示了如何构建SOAP包,直接调用WEB SERVICE.

 

代码
String data ="<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:ifac='http://iface.motor.com/'>" +
"<soapenv:Header/>" +
"<soapenv:Body>" +
      
"<ifac:GetStateInfo>" +
         
         
"<carNo>aa</carNo>" +
         
         
"<color>ad</color>" +
         
         
"<carframe>dd</carframe>" +
         
"</ifac:GetStateInfo>" +
         
"</soapenv:Body>" +
         
"</soapenv:Envelope>";
    
        
// Send data
        URL url = new URL(http://localhost/svc/motorService);
        URLConnection        conn 
= url.openConnection();
        conn.setDoOutput(
true);
        OutputStreamWriter wr 
= new OutputStreamWriter(conn.getOutputStream());
        wr.write(data);
        wr.flush();
    
        
// Get the response
        BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        String line;
        
while ((line = rd.readLine()) != null) {
            System.out.println(line);
        }
        wr.close();
        rd.close();

 

 

上面的代码,我们可以看到,我们直接构建了一个SOAP包,并将这个包发送WEB SERVICE地址。

可以观察返回,我们可以看到,返回的也是一个SOAP包。

 

至如如何方便的获取这个SOAP请求包,我们可以使用SOAPUI这个工具。地址:http://www.soapui.org/

posted on 2010-11-26 14:15  自由港  阅读(583)  评论(0编辑  收藏  举报