java 调用webservice
时间: 2023-08-26 21:07:26 浏览: 32
Java调用Web服务的常用方法有两种。方法一是使用Java自带的JAX-WS库来调用WebService,示例代码如下:
```java
// 调用webservice服务方法1
@Test
public void method1() {
// 创建webservice代理工厂
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
// 设置远程访问服务地址
factory.setAddress("http://localhost:8080/ws/?wsdl");
// 设置接口类型
factory.setServiceClass(TestService.class);
// 生成代理对象
TestService service = factory.create(TestService.class);
// 远程访问服务端方法
String word = service.getWord();
System.out.println(word);
}
```
方法二是直接模拟HTTP请求调用WebService。这种方式在请求接口数量较少的情况下比较常用,具体代码如下:
```java
// 调用webservice服务方法2: 模拟HTTP请求
@Test
public void method2() throws IOException {
// 定义请求URL
URL url = new URL("http://localhost:8080/ws/?wsdl");
HttpURLConnection connection = null;
connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setRequestMethod("POST");
connection.setRequestProperty("content-type", "text/xml;charset=utf-8");
String soapXML = "<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"><soap:Body><ns2:getWord xmlns:ns2=\"http://service.hotriver/\"/></soap:Body></soap:Envelope>";
connection.getOutputStream().write(soapXML.getBytes());
if (connection.getResponseCode() == 200) {
Scanner scanner = new Scanner(connection.getInputStream());
while (scanner.hasNext()) {
System.out.println(scanner.nextLine());
}
}
}
```
以上是两种常用的Java调用WebService的方法。方法一使用JAX-WS库,方法二是直接模拟HTTP请求。具体选择哪种方法取决于具体的需求和情况。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [java调用webservice.zip](https://download.csdn.net/download/chengxuyuanlaow/87029161)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [java实现webservice调用](https://blog.csdn.net/qq_44535925/article/details/124784730)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
相关推荐













