java调用webservice接口(java怎么调用webservice接口)

作者:百科火  更新 :2022-03-10 12:00:10   科技百科  

最佳答案java调用webservice接口有三种方法。方法一:直接AXIS调用远程的webservice。方法二:直接SOAP调用远程的webservice。方法三:直接使用eclipse生成客户端.idea类同。

java调用webservice接口(java怎么调用webservice接口)

java如何调用webservice接口呢?不清楚的小伙伴们来看看我现在的分享吧!

java调用webservice接口有三种方法。

方法一:立即AXIS调用远程的web service,键入编码:

public void doSelectRiskReportForm(HttpServletRequest request,

HttpServletResponse response){

//调用接口

//方法一:立即AXIS调用远程的web service

try {

String endpoint = "http://localhost:8080/platform-jxcx-service/services/settlementServiceImpl?wsdl";

Service service = new Service();

Call call = (Call) service.createCall();

call.setTargetEndpointAddress(endpoint);

String parametersName = "settle_num"; // 主要参数名//相匹配的是 public String printWord(@WebParam(name = "settle_num") String settle_num);

//

call.setOperationName("printWord"); // 调用的方法名//当这类调用不上的情况下,可以应用下边的,添加类名名

call.setOperationName(new QName("http://jjxg_settlement.platform.bocins.com/", "printWord"));// 调用的方法名

call.addParameter(parametersName, XMLType.XSD_STRING, ParameterMode.IN);//主要参数名//XSD_STRING:String种类//.IN入参

call.setReturnType(XMLType.XSD_STRING); // 传参种类:String

String message = "123456789";

String result = (String) call.invoke(new Object[] { message });// 远程调用

System.out.println("result is " result);

} catch (Exception e) {

System.err.println(e.toString());

}

}

方法二:立即SOAP调用远程的webservice

免费下载jar,SOAP 应用 HTTP 传输 XML,虽然HTTP 并不是有效的通信协议,并且 XML 还要附加的文档分析(parse),二者促使买卖的速率大大的小于其他计划方案。可是XML 是一个对外开放、完善、有词义的信息体制,而 HTTP 是一个普遍又能预防很多有关服务器防火墙的问题,进而使SOAP获得了普遍的运用。可是假如高效率对你而言很重要,那麼你应该多考虑到其他的方法,而不能用 SOAP。

import org.apache.soap.util.xml.*;

import org.apache.soap.*;

import org.apache.soap.rpc.*;

import java.io.*;

import java.net.*;

import java.util.Vector;

public class caService {

public static String getService(String user) {

URL url = null;

try {

url = new URL(

"http://192.168.0.100:8080/ca3/services/caSynrochnized");

} catch (MalformedURLException mue) {

return mue.getMessage();

}

// This is the main SOAP object

Call soapCall = new Call();

// Use SOAP encoding

soapCall.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);

// This is the remote object we're asking for the price

soapCall.setTargetObjectURI("urn:xmethods-caSynrochnized");

// This is the name of the method on the above object

soapCall.setMethodName("getUser");

// We need to send the ISBN number as an input parameter to the method

Vector soapParams = new Vector();

// name, type, value, encoding style

Parameter isbnParam = new Parameter("userName", String.class, user,

null);

soapParams.addElement(isbnParam);

soapCall.setParams(soapParams);

try {

// Invoke the remote method on the object

Response soapResponse = soapCall.invoke(url, "");

// Check to see if there is an error, return "N/A"

if (soapResponse.generatedFault()) {

Fault fault = soapResponse.getFault();

String f = fault.getFaultString();

return f;

} else {

// read result

Parameter soapResult = soapResponse.getReturnValue();

// get a string from the result

return soapResult.getValue().toString();

}

} catch (SOAPException se) {

return se.getMessage();

}

}

}

方法三:立即应用eclipse转化成手机客户端.idea类同

以天气预告的为例子:

http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl

用编辑软件打开下载的文档,将

<s:element ref="s:schema" /> <s:any />

换成

<s:any minOccurs="2" maxOccurs="2" />

随后将文档另存weather.wsdl。

开启储存的文件路径键入cmd,输入

wsimport -s . weather.wsdl

表明以上内容,即是转化成取得成功,下列这也是转化成的文档

新创建一个检测类WebserviceTest .java:

public class WebserviceTest {

public static void main(String[] args) {

//还可以应用new WeatherWebService(url)此方法可从新设定要求的详细地址 URL url=new URL("http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl")

WeatherWebService factory = new WeatherWebService();

WeatherWebServiceSoap weatherWebServiceSoap = factory.getWeatherWebServiceSoap(); //WeatherWebServiceSoap为调用的完成类

ArrayOfString strArray = null;

strArray = weatherWebServiceSoap.getWeatherbyCityName("武汉市");

System.out.println(strArray.getString());

}

}

表明以下几点 即是调用取得成功。

以上便是我现在的共享了,期待可以作用到大伙儿。

- END -

辩论赛噎住对方的语句有哪些?(另一方辩友请不要将概念混淆)

辩论赛噎住对方的语句有哪些?(另一方辩友请不要将概念混淆)

011、另一方辩友请不要将概念混淆。2、依照另一方辩友的逻辑&hellip;&hellip;3、即然另一方辩友不太喜欢谈&hellip...

地球上的水占地球百分之几

地球上的水占地球百分之几

水是生命的源泉水,是生命的源泉,是人类社会发展的基本物质条件。有 了水,我们的星球才有了蔚蓝;有了水,世界才有了...

替换快捷键ctrl加什么

替换快捷键ctrl加什么

替换快捷键ctrl加什么,在电脑里,替换的快捷键是ctrl加H,以word文档为例,替换的操作步骤:1、打开word文档后,同时按ctrl加...

南肖是哪几个肖(十二生肖中,位居第七,与十二地支配“午”,故一天)

南肖是哪几个肖(十二生肖中,位居第七,与十二地支配“午”,故一天)

十二生肖南肖指的是生肖蛇、生肖马、生肖羊。这三个生肖位于南方,又称“巳午未汇南方火”故南为“丙丁火”之位。火...

600克等于多少斤(60锊克(g)=1)

600克等于多少斤(60锊克(g)=1)

600克(g)=1.2斤。斤也作觔,是中国在1929年规定的标准单位,市制一斤为十两(旧制一斤为十六两),两斤等于一公斤。中国和东南...

武警部队有几种兵种

武警部队有几种兵种

由8个警种构成。 武警部队拥有三大类、八个警种的部队,分别为内卫、黄金、森林、水电、交通、边防、消防、警卫。...

河南古时候叫什么

河南古时候叫什么

河南古代叫中州。古时候,九州之中,中州是九州中最大的,也是处于九州中间的地理位置(洛阳,是周公立杆测影,建城的地方)。河...

扬州是几线城市(2022中国城市等级划分)

扬州是几线城市(2022中国城市等级划分)

根据最新的2017中国城市等级划分,扬州市是三线城市。所以说扬州是二线城市或者三线城市都可以。但2017中国城市等级...

寒来暑往秋收冬藏什么意思

寒来暑往秋收冬藏什么意思

寒来暑往,秋收冬藏寒暑循环变换,来了又去,去了又来,秋天收割庄稼,冬天储藏粮食。这两句话的字面意思,很好理解,寒暑说的是...

复利计息的计算公式

复利计息的计算公式

复利计算公式F=P(1+i)^n复利计算公式是计算前一期利息再生利息的问题,计入本金重复计息,即“利生利”“利滚利”。它的...

查看更多知识百科