Java 访问asmx接口
1、pom
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
</dependency>
2、工具类
import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.SimpleHttpConnectionManager; import org.apache.commons.httpclient.methods.PostMethod; import java.io.IOException; import java.util.Map; public class SoapUtil { public static String callSoap(String url,String method, Map<String, String> paramMap) throws IOException { // 输入服务网址 HttpClient client = new HttpClient(); PostMethod post = new PostMethod(url+"/"+method); // 设置参数 if (paramMap != null) { for (Map.Entry<String, String> item : paramMap.entrySet()) { String key = item.getKey(); String value = item.getValue(); //System.out.println(key + ":" + value); post.setParameter(key, value); } } // client.setTimeout(newTimeoutInMilliseconds); // 执行,返回一个结果码 int code = client.executeMethod(post); //System.out.println("结果码:" + code); // 获取xml结果 String result = post.getResponseBodyAsString(); //System.out.println("结果:" + result); // 释放连接 post.releaseConnection(); // 关闭连接 ((SimpleHttpConnectionManager) client.getHttpConnectionManager()).shutdown(); return result; } }
3、demo
public static void main(String[] args) throws Exception { Map<String, String> paramMap = new HashMap<>(); paramMap.put("id", "10086"); paramMap.put("name", "老李"); SoapUtil.callSoap("http://120.79.xxx.xxx:1234/aaaa.asmx", "调用的方法", paramMap); }
有些事情,没经历过不知道原理,没失败过不明白奥妙,没痛苦过不了解真谛。临渊羡鱼,不如退而结网!

浙公网安备 33010602011771号