- 浏览: 7338855 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
最近研究一下相关的开发的WebService,发现他们的服务均采用ASP.net开发的服务,于是乎研究一下。将成果告诉大家,并分享一下。
开发Java的童靴大多喜欢使用Myeclipse开发,因为他具备许多功能,可以自动生成。我更喜欢采用eclipse开发,简单快捷。
1.首先给eclipse安装一个Tomcat 的插件。
2.根据eclipse提示创建相关的WebService客户端。(eclipse支持的为axis1.4的)。如果想采用axis2.0可以自己配置忽略了。
在asp.net中有一种数据结构为dataset,转换为java 的webservice客户端时候,对应XXXXResult.里面一个
private org.apache.axis.message.MessageElement [] _any;
该数据分为两部分,第一个对象为消息头部。不用操作。
第二个对象为消息体,所有的信息包含消息体的xml中。
/** * 获得这国内飞机航班时刻表Web Services支持的全部城市中英文名称和缩写 DataSet * *输入参数:无;返回数据: *结构为 Item(enCityName)城市英文名称、 * Item(cnCityName)城市中文名称、 * Item(Abbreviation)缩写, * 按城市英文名称升序排列 * @return */ public EtripJSONResponse queryAllFlightCity() { EtripJSONResponse jsonRequest=new EtripJSONResponse(); try { DomesticAirlineSoap airlineSoap=flightLocator.getDomesticAirlineSoap(); GetDomesticCityResponseGetDomesticCityResult flightLineResult=airlineSoap.getDomesticCity(); //获取消息数据集合 MessageElement[] messageElements=flightLineResult.get_any(); //获取消息头信息 List flightHeader=messageElements[0].getChildren(); //获取消息体 List flightBody=messageElements[1].getChildren(); if(flightBody.size()<=0){ return null; } //获取消息体信息 String bodyMessage=flightBody.get(0).toString(); //转换消息内容为json格式 String json=parseQueryAllFlightCity(bodyMessage); jsonRequest.setFlag(EtripJSONResponse.SUCCESS); jsonRequest.setData(json); } catch (ServiceException e) { jsonRequest.setMessage("请求第三方服务异常:"+e.getMessage()); jsonRequest.setFlag(EtripJSONResponse.FAILURE); } catch (RemoteException e) { jsonRequest.setFlag(EtripJSONResponse.FAILURE); jsonRequest.setMessage("请求第三方服务异常:"+e.getMessage()); } catch (JDOMException e) { jsonRequest.setFlag(EtripJSONResponse.FAILURE); jsonRequest.setMessage("请求第三方服务时,xml的解析错误:"+e.getMessage()); } return jsonRequest; }
我们可以从客户端获取到消息体内容的字符串。我们需要解析相关的xml。
需要操作如下:
1.将xml字符串转换为相关的流对象。
2.将xml对象解析具体代码如下:
/** * 将xml字符串的解析 * @param bodyMessage * @return * @throws JDOMException */ private String parseQueryAllFlightCity(String bodyMessage) throws JDOMException { //创建字节流信息 InputStream file=new ByteArrayInputStream(bodyMessage.getBytes()); //读取xml的信息 SAXBuilder sb = new SAXBuilder(); Document doc = sb.build(file); Element root = doc.getRootElement(); // 得到根元素 List flightListElement = root.getChildren(); Element flightElement = null; JSONObject flight=null; StringBuffer buffer=new StringBuffer(); if(CollectionUtils.isNotEmpty(flightListElement)){ for(int i=0; i<flightListElement.size(); i++) { flight=new JSONObject(); flightElement = (Element) flightListElement.get(i); buffer.append("{enCityName="); buffer.append(flightElement.getChild("enCityName").getText()); buffer.append(",cnCityName="); buffer.append(flightElement.getChild("cnCityName").getText()); buffer.append(",Abbreviation="); buffer.append(flightElement.getChild("Abbreviation").getText()); buffer.append("}"); if(i==flightListElement.size()-1){ buffer.append(","); } } } return buffer.toString(); }
发表评论
-
Spring 和Axis2整合相关那些事
2012-12-29 12:58 10421Axis2优劣: 现在用axis2开发一个webse ... -
【转】互联网常见Open API文档资源
2012-07-17 17:22 2419原文出处:http://www.williamlong.i ... -
互联网 免费的WebService接口
2012-07-08 17:25 5654股票行情数据 WEB 服务 ... -
Apache CXF REST WebService简单应用
2011-11-27 17:30 5622<p> 本文目的就项目中的Apache ... -
REST WebService简单应用(测试)
2011-11-27 16:11 4787在项目中许多同事采用Ajax调用REST Web服 ... -
REST WebService简单应用
2011-11-27 15:07 3635最近项目中WebService采用REST风格的WebS ... -
Brap的创建WebService
2011-07-26 10:33 1248通过Brap开发WebService,通过Brap的W ... -
CFX 和Spring 整合Ws Security 出现的问题?
2010-05-05 20:50 4713package com.easyway.cxf.securit ... -
Axis2 XFire CXF 比较
2010-05-03 21:35 4065CXF最新版本:2.2.2 开源服务框架,可以通过API,如 ... -
CXF应用程序开发 WS 多个服务动态访问
2010-05-03 17:37 4484官方网站: https://cwiki.apache. ... -
CXF应用程序开发 WS 采用Simple Frontend 方式简单方便
2010-05-03 16:24 3155关于CXF中的Simple Frontend 的官方网 ... -
CXF应用程序开发 中调用WSDL提供服务的WS (WS的迁移使用)
2010-05-03 15:16 32961。提供wsdl的源在需要的服务端生成客户端源代码 2。在C ... -
CXF和Axis的比较
2010-05-03 14:32 1998在SOA领域,我们认为Web Service是SOA体系的构建 ... -
CXF应用程序开发应用程序的安全性
2010-05-03 10:23 2343package com.easyway.cxf.service ... -
开发WebService 如何保证它的安全性
2010-05-03 10:16 12862摘要: 概述 Microsoft XML Web Servic ... -
使用CXF中的Aegis开发WS使用
2010-05-02 19:56 3202package com.easyway.cxf.service ... -
XFire容易配置出现的几个异常信息
2009-07-13 10:29 12074今天做一个Flex调用Web服务的程序创建一个WS,由于一 ... -
Web service 原理和 开发
2009-03-13 22:07 10501什么是Web Services ... -
xfire开发客户端密钥参数定制开发应用
2009-03-13 19:19 2733xfire在服务端验证,客户端必须使用相应的用户名称和密码设置 ... -
spring和xfire整合的应用开发的原理和客户端开发方式(一)
2009-03-10 17:01 3120使用xfire常用方式远程服务类访问 package cn. ...
相关推荐
在Eclipse集成开发环境中,我们可以使用"Web Service Explorer"或"New Web Service Client"向导来根据WSDL文件生成客户端代码。以下是步骤: 1. **导入WSDL文件**:在Eclipse中,选择“File” > “Import” > “Web...
使用cxf wsdl2java生成webservice客户端命令
axis2根据wsdl生成java客户端代码 D:\Software\axis2-1.6.2\bin>wsdl2java.bat -uri http://10.33.30.216:9099/facs/services/ResourceSynchroWebService?wsdl -o E:\wsdloutput -p com.util wsdl2java.bat -uri ...
Eclipse中用wsdl生成java客户端 Eclipse是一款功能强大、功能丰富的集成开发环境(IDE),广泛应用于Java开发领域。随着WebService技术的普及,Eclipse也提供了相应的支持,允许开发者通过wsdl文件生成Java客户端...
总结来说,"wsdl生成服务的客户端调用代码"涉及到利用WSDL文件自动生成与Web服务交互所需的客户端代码,这样开发者就可以在自己的应用中方便地调用这些服务,而无需手动编写复杂的网络通信逻辑。不同的编程语言和...
本文将详细讲解如何在Eclipse环境中,根据WSDL文件自动生成WebService客户端,并提供调用示例。 首先,我们需要理解WSDL文件的结构。WSDL文件包含了服务的端点(或地址)、操作(或服务方法)、输入和输出消息的...
生成WSDL客户端可以大大简化开发工作,因为它自动生成了与服务接口对应的客户端代码。这使得开发者无需手动编写调用服务的方法,减少了错误的可能性,提高了开发效率。 三、WSDL客户端生成工具的特性 1. 操作简便:...
3. **生成客户端工具**:在 Axis 中,通过 WSDL2Java 工具,我们可以根据服务端的 WSDL 文件自动生成客户端 stub 类。这些 stub 类包含了调用服务所需的所有方法,使得客户端开发人员无需手动编写与服务交互的代码,...
.NET Web服务WSDL生成工具是开发.NET应用程序时非常重要的辅助工具,它可以帮助开发者自动生成Web服务的接口定义文件——WSDL(Web Service Description Language)。WSDL文件是一种XML格式的文档,用于描述Web服务...
eclipse 根据 wsdl 文件生成 webservice 客户端 eclipse 是一个功能强大且灵活的集成开发环境(IDE),它提供了许多插件和工具来帮助开发者快速开发和测试应用程序。其中一个重要的应用场景是使用 wsdl 文件生成 ...
根据WSDL文件生成客户端代码与创建客户端工程 注意小细节:在根据对方提供的webservice地址,先将对方webservice的wsdl文件描述文件保存到本地时,格式先保存为xml,后将其后缀名为.wsdl的文件 否则报:...
本压缩包文件“根据wsdl生成axis的服务端和客户端__工具.rar”提供了一种基于Apache Axis工具生成服务端和客户端代码的方法,以简化基于WSDL的Web服务开发。 首先,我们需要理解Apache Axis。Axis是一个开源的Java...
本文将深入探讨如何利用gSOAP工具根据WSDL文件生成C或C++语言的服务器和客户端代码,以实现Web服务的开发。 1. **WSDL简介**: WSDL文件描述了Web服务的接口,包括服务的位置、提供的操作以及如何调用这些操作。它...
MyEclipse会根据WSDL内容自动生成相应的Java客户端代码,包括服务代理类和服务接口。 5. 编译和运行客户端:生成的代码通常位于`src`目录下的一个新包内。现在可以编写客户端程序来调用Web服务。例如,你可以找到...
### Axis2生成客户端与服务端代码详解 #### 一、Axis2简介 Axis2是Apache组织下的一个开源项目,它是一种高性能、轻量级的Web服务框架,支持SOAP和REST等协议,能够帮助开发者轻松地构建和部署Web服务。Axis2提供了...
根据对方提供的webservice地址,你先将对方webservice的wsdl文件描述文件保存到本地为后缀名为.wsdl的文件,然后保存到Tools的这个文件夹下,编辑WSDL2AxisClient.bat这个文件,将%Java_Cmd% org.apache.axis.wsdl....
以下是使用Eclipse从WSDL生成Java客户端的详细步骤,以及相关知识点的解释: 1. **创建Java项目**: 首先,打开Eclipse,创建一个新的Java项目。在"File"菜单中选择"New" -> "Java Project",输入项目名称,例如...
在 Axis2 中,我们可以使用WSDL2Java工具从一个给定的WSDL文件自动生成Java客户端代码。这个过程包括以下步骤: 1. **下载与安装**: 首先,你需要下载Axis2 1.6.2的发行版,这里提供的是"axis2-1.6.2"的压缩包。...
webService接口用eclipse工具WSDL生成服务端和客户端(http协议,xml构造传输),本人研究了好几天已成功,希望大家参考帖子少走弯路
- **步骤2:启动Axis** - 运行Axis1.4的wsdl2java工具,输入WSDL文件的URL或本地路径,该工具会自动生成Java客户端代码。 - **步骤3:构建客户端代码** - 编译生成的Java源代码,然后在你的项目中引入这些类,这些...