java调用webservicejava调用别人写好的webservice接口,在线等

java调用webservice  时间:2021-06-02  阅读:()

java中如何调用webservice接口来取得数据

Java调用WebService可以直接使用Apache提供的axis.jar自己编写代码,或者利用Eclipse自动生成WebService Client代码,利用其中的Proxy类进行调用。

理论上是一样的,只不过用Eclipse自动生成代码省事些。

1、编写代码方式: .yudun.test; import java.rmi.RemoteException; .apache.axis.client.Call; .apache.axis.client.Service; .apache.axis.message.PrefixedQName; .apache.axis.message.SOAPHeaderElement; .cezanne.golden.user.Exception; .cezanne.golden.user.UserManagerServiceProxy; import javax.xml.namespace.QName; import .MalformedURLException; import javax.xml.rpc.ServiceException; import javax.xml.soap.Name; import javax.xml.soap.SOAPException; public class testWebService { public static String getResult() throws ServiceException, MalformedURLException, RemoteException, SOAPException { //标识Web Service的具体路径 String endpoint = "WebService服务地址"; // 创建 Service实例 Service service = new Service(); // 通过Service实例创建Call的实例 Call call = (Call) service.createCall(); //将Web Service的服务路径加入到call实例之中. call.setTargetEndpointAddress( new .URL(endpoint) );//为Call设置服务的位置 // 由于需要认证,故需要设置调用的SOAP头信息。

Name headerName = new PrefixedQName( new QName("发布的wsdl里的targetNamespace里的url", "string_itemName") ); .apache.axis.message.SOAPHeaderElement header = new SOAPHeaderElement(headerName); header.addTextNode( "blablabla" ); call.addHeader(header); // SOAPHeaderElement soapHeaderElement = new SOAPHeaderElement("发布的wsdl里的targetNamespace里的url", "SoapHeader"); // soapHeaderElement.setNamespaceURI("发布的wsdl里的targetNamespace里的url"); // try // { // soapHeaderElement.addChildElement("string_itemName").setValue("blablabla"); // } // catch (SOAPException e) // { // e.printStackTrace(); // } // call.addHeader(soapHeaderElement); //调用Web Service的方法 .apache.axis.description.OperationDesc oper; .apache.axis.description.ParameterDesc param; oper = .apache.axis.description.OperationDesc(); oper.setName("opName"); param = .apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "arg0"),.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("", "string"), java.lang.String.class, false, false); param.setOmittable(true); oper.addParameter(param); param = .apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "arg1"),.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("", "string"), java.lang.String.class, false, false); param.setOmittable(true); oper.addParameter(param); param = .apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "arg2"),.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("", "string"), java.lang.String.class, false, false); param.setOmittable(true); oper.addParameter(param);

java调用webservice接口具体怎么调用啊?有没有简单点的

最简单的就是直接弄一个URL类。

通过buffer得到结果。

URL?tmp?=?new?URL(url); URLConnection?connection?=?tmp.openConnection();?? connection.connect();? BufferedReader?reader?=?new?BufferedReader(new?InputStreamReader(connection.getInputStream())); String?line;? while((line?=?reader.readLine())!=?null){?? ????result?+=?line;?? ????result?+=?" ";?? } //result就是了

关于Webservice接口的Java客户端调用

String endpoint="http://localhost:8080/xxx/services/userservice?wsdl"; String id = "11111"; Service service = new Service(); Call call = (Call) service.createCall(); call.setTargetEndpointAddress(new URL(endpoint)); call.setOperationName("webservice方法名"); String res = (String) call.invoke(new Object[] {id}); 看了你的描述觉得你把webservice想得太复杂化了,其实就是一个jar包和几个类。

以上就是最简单的webservice客户端用法,和反射有点像。

当然返回值不一定是String,返回的类型和格式要问服务提供方。

我用的是axis的,我不了解websphere什么的,但是webservice就是那么易用的东西。

用Java调用webservice,并解析返回值,大神们 求助

你是哪个公司?我在上班,我不能上QQ,我给你贴代码,有问题你追问我! private void 方法名(String storecd) { // 传递参数 param.clear(); param.put("webservice的输入值的名字,(必须完全一样)", 参数); //连接web service openRequest(getString(R.string.EXSERVER_SCRAP_GetShipName), param, essMode.Asynchronous, essHandler); } //数据处理 private essHandler essHandler = new essHandler( this) { @Override //数据异常处理 public void onExceptionHandler(PacerURLRequest request, String errMessage){ currentDialog=showAlertDialog_OK(getString(R.string.MESSAGE_CODE_08), getString(R.string.MSG_COMMON_OK), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }); } //处理获取的数据 public void onDataReadyHandler(PacerURLRequest request) { try { essBundle bundle = request.getBundle(); if (getString(R.string.EXSERVER_SCRAP_GetShipName).equals(request.getResource())) { ArrayList table0 = bundle.getTable("Table0"); ScrapScan_Table0_GetShipName prod = (ScrapScan_Table0_GetShipName) table0.get(0); shopname.setText(prod.getPlc_nm()); } } catch (Exception e) { showAlertDialog_OK("店铺号不存在,请输入正确的店铺号!", getString(R.string.MSG_COMMON_OK), null); e.printStackTrace(); } } @Override //错误数据处理 public void onDataErrorHandler(PacerURLRequest request) { } };

一个java写的webservice如何调用另一个java web项目中的类啊,类似于引用的那种

调用另一个项目中的类只能用RMI或者EJB等。

另外我觉得你是想实现类似SOA的架构,那个被调用的java web项目也应该写webservice接口,只对内网发布,然后用来发布外网的那个项目姑且叫做frontend,起到一个代理的作用。

但这样做有点画蛇添足了。

java调用别人写好的webservice接口,在线等

url = new URL(url) httpurlconnection = (HttpURLConnection) url.openConnection(); httpurlconnection.setDoOutput(true); httpurlconnection.setRequestMethod("POST"); httpurlconnection.connect(); httpurlconnection.getOutputStream().write(param.getBytes("GBK")); httpurlconnection.getOutputStream().flush(); httpurlconnection.getOutputStream().close(); in = httpurlconnection.getInputStream(); if (in == null) { log.info("========调用HTTP接口出错======="); throw new Exception("调用HTTP接口出错 "); } BufferedReader breader = new BufferedReader(new InputStreamReader( in, "GBK")); String str = breader.readLine(); String returnStr = null; while (str != null) { if (returnStr == null) { returnStr = str; } else { returnStr += str; } str = breader.readLine(); if (str == null) { break; } 大概这个样子

哪个好Vultr搬瓦工和Vultr97%,搬瓦工和Vultr全方位比较!

搬瓦工和Vultr哪个好?搬瓦工和Vultr都是非常火爆的国外VPS,可以说是国内网友买的最多的两家,那么搬瓦工和Vultr哪个好?如果要选择VPS,首先我们要考虑成本、服务器质量以及产品的售后服务。老玩家都知道目前在国内最受欢迎的国外VPS服务商vultr和搬瓦工口碑都很不错。搬瓦工和Vultr哪个稳定?搬瓦工和Vultr哪个速度快?为了回答这些问题,本文从线路、速度、功能、售后等多方面对比这两...

A400互联37.8元/季,香港节点cn2,cmi线路云服务器,1核/1G/10M/300G

A400互联怎么样?A400互联是一家成立于2020年的商家,A400互联是云服务器网(yuntue.com)首次发布的云主机商家。本次A400互联给大家带来的是,全新上线的香港节点,cmi+cn2线路,全场香港产品7折优惠,优惠码0711,A400互联,只为给你提供更快,更稳,更实惠的套餐,香港节点上线cn2+cmi线路云服务器,37.8元/季/1H/1G/10M/300G,云上日子,你我共享。...

95IDC香港特价物理机服务器月付299元起,5个ip/BGP+CN2线路;美国CERA服务器仅499元/月起

95idc是一家香港公司,主要产品香港GIA线路沙田CN2线路独服,美国CERA高防服务器,日本CN2直连服务器,即日起,购买香港/日本云主机,在今年3月份,95IDC推出来一款香港物理机/香港多ip站群服务器,BGP+CN2线路终身7折,月付350元起。不过今天,推荐一个价格更美的香港物理机,5个ip,BGP+CN2线路,月付299元起,有需要的,可以关注一下。95idc优惠码:优惠码:596J...

java调用webservice为你推荐
腾讯年终奖腾讯外聘员工与正式员工的区别是什么?扫图高清扫图是什么意思,在很多的贴吧里,都有提到一些高清扫图,是自己照杂志上的图片,然后自己再修一下吗12种颜色12种颜色的英语怎么写,用中文怎么读qq网络硬盘怎么用qq网络硬盘天翼校园宽带天翼校园宽带 是怎么算时间的 一个月 是指从办理那天开始 往后 30天是一个月吗 还是 办理的那天所在的那个审计平台什么是审计工具谷歌图片识别怎么通过一张GIF图在网上搜索出其出处(你们懂的...)以图搜图那个百度只找到了一模一样的..,有腾讯贴吧QQ贴吧图标灭了后该怎样再点亮?点心os什么是点心os?手机操作系统和手机区别么?一个是硬件一个是软件?听说炒的好火?红牛下架红牛下架事件怎么回事?美宜佳最近怎么买不到红牛了?
备案域名查询 代理域名备案 免费申请域名和空间 希网动态域名 vmsnap3 轻博客 双12活动 seovip info域名 evssl ubuntu更新源 帽子云 hostloc 网络空间租赁 电信主机 优酷黄金会员账号共享 联通网站 免费的asp空间 什么是web服务器 云服务器比较 更多