下载httpclient,把压缩包里lib目录的所有jar放到项目的编译目录里,
通过Post方式调用webservice,代码如下:
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
public class HttpclientSoap {
public static void main(String[] args){
DefaultHttpClient httpClient = new DefaultHttpClient();
String soapRequestData = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
"<soap12:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap12=\"http://www.w3.org/2003/05/soap-envelope\">" +
"<soap12:Body>" +
" <SetData xmlns=\"http://tempuri.org/\">" +
" <dz>宁波海曙市</dz>" +
" <id>27000</id>" +
" <xx>27000</xx>" +
" <yy>13112</yy>" +
" <bui_id>4209</bui_id>" +
" <mc>天一数码</mc>" +
"</SetData>" +
" </soap12:Body>" +
"</soap12:Envelope>" ;
HttpPost httppost = new HttpPost("http://localhost/Service1.asmx");
/*把Soap请求数据添加到PostMethod*/
//byte[] b = soapRequestData.getBytes("utf-8");
//InputStream is = new ByteArrayInputStream(b,0,b.length);
try {
HttpEntity re = new StringEntity(soapRequestData,HTTP.UTF_8);
httppost.setHeader("Content-Type","application/soap+xml; charset=utf-8");
//httppost.setHeader("Content-Length", String.valueOf(soapRequestData.length()));
httppost.setEntity(re);
HttpResponse response = httpClient.execute(httppost);
System.out.println(EntityUtils.toString(httppost.getEntity()));
System.out.println(response.getStatusLine());
System.out.println(EntityUtils.toString(response.getEntity()));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
httpClient.getConnectionManager().shutdown();
}
}
}
分享到:
相关推荐
一个使用HttpClient访问WS 的例子,包含相关jar包
希望用http协议的能可以帮到大家!很有使用价值!大家可以看看!
httpclient4.1.2.zip
httpclient4.1.2 jar包
httpclient调用webservice.txt
HttpClient4.1.2的中英文文档
httpClient 4.1.2 API chm格式
httpclient jersey所需要的全部jar包,版本是4.1.2,有需要就下载吧
commons-codec-1.4.jar、commons-httpclient-3.0.1.jar、commons-logging-1.1.1.jar
ETL KETTLE 中利用Httpclient 调用webservice接口获取XML数据,并解析XML 数据。 完整的KTR实例
webservice调用实例,通过HttpClient调用,包括完整参数调用,项目通过maven搭建
用来动态调用web service
WebApi系列-通过HttpClient来调用WebApi接口.doc
NULL 博文链接:https://caerun.iteye.com/blog/1338956
httpclient的jar包,包含DefaultHttpClient
一个使用HttpClient调用接口的例程,接口是从网上找来的,只支持get方式提交,返回json格式,此例程的编码方式为GBK,我写了注释
里面包含httpclient4相关的技术文档与实例
本demo有两个例子test是作为服务端开启的,httpclient是客户端调用的,模拟服务端的test在启动后是没有界面的,要加上id才能看到json数据,httpclient的HttpClient33.java是测试类,最后的结果是接受到一个对象。...