使用axis开发webservice详解

使用axis开发webservice详解
使用axis开发webservice详解

使用axis开发webservice详解

2011-11-29 10:23 月月鸟0820 月月鸟0820的博客我要评论(0)字号:T | T

本节主要用于介绍使用axis开发webservice,包括服务端的创建、webservice的部署、客户端的调用。

AD:2014WOT全球软件技术峰会北京站课程视频发布

摘要:本节主要用于介绍使用axis开发webservice,包括服务端的创建、webservice的部署、客户端的调用。

preparation:

说明:相关的可能要了解SOAP(简单对象访问协议)、WSDL(web服务描述语言)、XML(可扩展标记语言)、axis(阿帕奇可扩展交互系统)等相关知识。

1.下载axis的jar包,请到apache官网或者在百度自行下载,然后导入jar包,不清楚的话导入所有的jar包就好了。(本人用的是axis1的版本,因为项目中用的是axis1的版本)

2.webservice客户端生成工具genclient.bat(后面会对这个工具做一个简单的说明)

之前介绍没有说明本机的环境,现在把本机环境罗列一下:

系统:XP myeclipse:6.5 tomcat:5.X JDK:1.5

生成webservice的方式有XFire、Jax-WS、axis等,使用axis调用webservi 有三种方式:动态调用接口、使用动态代理Dynamic Proxy、使用从WSDL 生成的存根generated Stubs from Service WSDL description,由于本

人工作中使用的是axis,调用webservice的方式用到的有动态调用接口、使用从WSDL生成的存根generated Stubs from Service WSDL description,故本节只介绍用axis调用webservice的这两种方式。后续的拓展部分根据需要再说。

start:

第一步:服务器端的开发

(1)开发java文件

代码如下:

接口文件:IBbossGroupInfoService.java

1.package https://www.360docs.net/doc/5314903328.html,info.b2p.soap.interfaces;

2.

3.import java.rmi.RemoteException;

4.public interface IBbossGroupInfoService {

5.

6.// 根据集团编号查询集团基本信息

7./**

8. * 集团编号 GROUP_NUM 集团名称 GROUP_NAME 公司地

址 CO_ADDR 集团状态 GROUP_STATE 集团开户时间

9. * START_TIME 传真 FAX 企业网址 WEB_URL 证件类

型 CARD_TYPE 证件号码 CARD_CODE

10. * 公司邮编CO_POSTCODE 联系电话 TEL_NUM 法人代

表名称 PERSON_NAME 发展类型 DEVELOP_TYPE

11. * 地区编码REGION_ID regionId

12. *

13. * @throws Exception

14.*/

15.public abstract String groupInfo(long group

No) throws Exception,

16. RemoteException;

17.// 根据集团编号查询集团订购历史

18.public abstract String groupSubHistoryInfo(

long groupNo) throws Exception;

19.}

实现类:IBbossGroupInfoServiceImpl.java

1.package https://www.360docs.net/doc/5314903328.html,info.b2p.soap.impl;

2.

3.import https://www.360docs.net/doc/5314903328.html,mons.logging.Log;

4.import https://www.360docs.net/doc/5314903328.html,mons.logging.LogFactory;

5.import https://www.360docs.net/doc/5314903328.html,info.b2p.soap.interfaces.IBbossGr

oupInfoService;

6.

7./**

8. * @Product esop_dev

9. * @FileName IBbossGroupInfoServiceImpl.java

10. * @History TODO 根据集团编号,查询集团基本信息、集团

用户信息、集团订购历史

11. * @Version 1.0.0

12. * @Date Nov 22, 2011

13. * @Author pantaipeng

14. * @Content 最初版本

15.*/

16.public class IBbossGroupInfoServiceImpl impleme

nts IBbossGroupInfoService {

17.private static transient Log log = LogFacto

ry

18. .getLog(IBbossGroupInfoServiceImpl.

class);

19.

20.

21.// 根据集团编号查询集团基本信息

22.public String groupInfo(long groupNo) throw

s Exception, RemoteException {

23. https://www.360docs.net/doc/5314903328.html,(">>>>>>>>>>>>>>>>>>>>>>>>>>>集

团编号=" + groupNo);

24.//方法体我省略了,为了测试我仅加入一句打印语句

25. System.out.println("我是一个公共的方法,作用

是根据集团编号查询集团基本信息");

26. String xml="public_groupInfo

message>";//为了测试,返回的信息我也是随便写的一个字符串

27.return xml;

28. }

29.

30.// 根据集团编号查询集团订购历史

31.public String groupSubHistoryInfo(long grou

pNo) throws Exception {

32.

33. https://www.360docs.net/doc/5314903328.html,(">>>>>>>>>>>>>>>>>>>>>>>>>>>集

团编号=" + groupNo);

34.//方法体我省略了,为了测试我仅加入一句打印语句

35. System.out.println("我是一个公共的方法,作用

是根据集团编号查询集团订购历史");

36. String xml="public_groupSubHis

toryInfo";//为了测试,返回的信息我也是随便写

的一个字符串

37.return xml;

38. }

39.}

说明:为了更加的接近实际的开发,这个是本机上运行的程序,实现的功能是通过一个编号查询相关信息拼成一个字符串,方法体的部分我删除了,你需要用这个代码的话,直接拷贝修改包名称就可以直接用了。

(2)wsdd文件

wsdd文件只需加入一列几行(前提是你之前已经有wsdd文件了,没有的

话可以在下载的apache的demo中拷贝一个):

1.

er="java:RPC">

2.

3.

4.

这个文件放在项目的WEB-INF下面。标签的name属性是发布的webservice的名称,可以自己命名,第一个标签的value属性指定实现类的完整路径,包括类名。其他的地方默认就好。

(3)配置web.xml文件

1.

2.AxisServlet

3.Apache-Axis Servlet

e>

4.org.apache.axis.transport.http.

AxisServlet

5.

6.

7.AxisServlet

8./services/*

9.

指定处理类以及映射就好,如果像这样配置的话,后面再写webservice 的话,这个文件就不用再配置了。

第二步:客户端的开发

(1).动态调用接口

代码如下:

1.package test.webserviceclient;

2.

3.import https://www.360docs.net/doc/5314903328.html,.MalformedURLException;

4.import https://www.360docs.net/doc/5314903328.html,.URL;

5.import java.rmi.RemoteException;

6.import javax.xml.rpc.ParameterMode;

7.import javax.xml.rpc.ServiceException;

8.import org.apache.axis.client.Call;

9.import org.apache.axis.encoding.XMLType;

10.

11.public class Test {

12./**

13. * 通过genClient.bat文件生成的webservice客户

端调用webservice服务的步骤如下:

14. * 1.创建service对象

15. * 2.创建url对象

16. * 3.创建call对象,

17. * 4.调用webservice的方法

18.*/

19.public static void test1() {

20.try {

21.// 1.创建service对象,通过axis自带的类

创建

22. org.apache.axis.client.Service serv

ice = new org.apache.axis.client.Service();

23.

24.// 2.创建url对象

25. String wsdlUrl = "http://10.10.146.

82:8080/esop_dev/services/GroupInfoService?wsdl"

;//请求服务的URL

26. URL url = new URL(wsdlUrl);//通过

URL类的构造方法传入wsdlUrl地址创建URL对象

27.

28.// 2.创建服务方法的调用者对象call,设置call对象的属性

29. Call call = (Call) service.createCa

ll();

30. call.setTargetEndpointAddress(url);

//给call对象设置请求的URL属性

31. String serviceName = "groupInfo";

32. call.setOperationName(serviceName);

//给call对象设置调用方法名属性

33. call.addParameter("groupNo", XMLTyp

e.XSD_LONG, ParameterMode.IN);// 给call对象设置方

法的参数名、参数类型、参数模式

34. call.setReturnType(XMLType.SOAP_STR

ING);// 设置调用方法的返回值类型

35.

36.//4.通过invoke方法调用webservice

37.long groupNo = 2100000014L;

38. String res = (String) call.invoke(n

ew Object[] { groupNo });//调用服务方法

39. System.out.println(res);

40. } catch (MalformedURLException e) {

41. e.printStackTrace();

42. } catch (ServiceException e) {

43. e.printStackTrace();

44. } catch (RemoteException e) {

45. e.printStackTrace();

46. }

47. }

48.

49.public static void main(String[] args) {

50. test1();

51. }

52.}

代码中的注释很详细,我就不介绍了。

(2).使用从WSDL生成的存根generated Stubs from Service WSDL description

第一步:配置genclient.bat文件

右键单击“编辑”打开bat文件如下(为了便于说明,每行的意思我就直接写在后面了):

set Axis_Lib=E:\esop\lib -----指定工程的lib目录

set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib% -----默认set Output_Path=E:\esop\src -----指定工程的src目录

set

Package=https://www.360docs.net/doc/5314903328.html,info.maks.webservices.pbosswebclient -----指定生成的四个文件的存放位置

%Java_Cmd% org.apache.axis.wsdl.WSDL2Java

-o%Output_Path% -p%Package% ----- 默认

http://10.10.146.82:8080/esop_dev/services/GroupInfoS ervice?wsdl -----指定wsdl文件的路径

第二步:用genclient.bat生成四个客户端类

双击编译好的bat文件,执行后生成的四个java类如下:

第三步:写测试类调用webservice

1.package test.webserviceclient;

2.

3.import https://www.360docs.net/doc/5314903328.html,.MalformedURLException;

4.import https://www.360docs.net/doc/5314903328.html,.URL;

5.import java.rmi.RemoteException;

6.import javax.xml.rpc.ParameterMode;

7.import javax.xml.rpc.ServiceException;

8.import org.apache.axis.client.Call;

9.import org.apache.axis.encoding.XMLType;

10.

11.public class Test {

12./**

13. * 通过genClient.bat文件生成的webservice客户

端调用webservice服务的步骤如下:

14. * 先介绍创建的四个文件分别为:

15. * IBbossGroupInfoServiceImpl 定义了web服务

接口,

16. * IBbossGroupInfoServiceImplService 定义了

用户获取web服务接口的方法

17. * IBbossGroupInfoServiceImplServiceLocator

接口IBbossGroupInfoServiceImplService的具体实现18. * GroupInfoServiceSoapBindingStub web服务客

户端桩,通过该类与服务器交互,该类实现了

IBbossGroupInfoServiceImpl接口

19. * 1.创建service对象

20. * 2.创建url对象

21. * 3.创建client对象

22. * 4.调用webservice的方法

23.*/

24.public static void test1() {

25.// 1.创建一个service对象

26. IBbossGroupInfoServiceImplService servi

ce = new IBbossGroupInfoServiceImplServiceLocato r();

27.

28.try {

29.// 2.创建一个URL对象,传入wsdl的地址够

过URL的构造方法创建

30. String wsdlUrl = "http://10.10.146.

82:8080/esop_dev/services/GroupInfoService?wsdl"

;

31. URL url = new URL(wsdlUrl);

32.

33.// 3创建一个client对象

34. IBbossGroupInfoServiceImpl client =

service

35. .getGroupInfoService(url);

36.

37.// 4调用webservice的方法

38.long groupNo = 2100000014L;

39. String res = client.groupInfo(group

No);

40.

41. System.out.println(res);

42.

43. } catch (MalformedURLException e) {

44. e.printStackTrace();

45. } catch (ServiceException e) {

46. e.printStackTrace();

47. } catch (RemoteException e) {

48. e.printStackTrace();

49. }

50.

51. }

52.

53.public static void main(String[] args) {

54. test1();

55. }

56.}

对这种生成客户端四个类的情况我要说明下,还有通过wsdltojava命令的方式生成客户端类,但是这个都是一种通过axis调用webservice的方式,既然有工具我们为什么不用呢?

所以能使用wsdltojava命令的方式,我就不介绍了。

test result:

代码的测试截图我就不贴了,感兴趣的可以试试看。

《!--好久没有上来活动了,今天写的是最近用到的一个东东,本人也是个菜鸟,刚刚在项目中用到webservice,如果有不对的,请各位大侠指正。--》

原文链接:

https://www.360docs.net/doc/5314903328.html,/java-pan/archive/2011/11/25/axis_webserv ice.html

【编辑推荐】

1.使用JDK1.6的JAX-WS编写WebService

2.不需要Web应用服务器Java实现WebServices

3.总结WebService的一些封装技巧

4.详细介绍Jsp中的Cookies

5.分享JSP学习经验总结

SAP开发webservice接口教程

SAP开发webservice接口教程 在client=100中进行开发: 1.创建RFC函数 SE80,在函数组下,右击->创建,创建函数模块,填写函数模块名称及描述。 2.函数属性标签页,选择“远程启用的模块”,其余默认不变。 3.函数导入标签页,需要添加调用时传入的参数(表),“传递值”需勾选。 表类型:ZSHR_EMPLOYEER_T (需要自己创建) 行类型:ZSHR_EMPLOYEER (需要自己创建)

4.函数导出标签页,需要添加调用返回的参数(表),“传递值”需勾选。 表类型:ZSHR_EMPLOYEER_OUT_T (需要自己创建) 行类型:ZSHR_EMPLOYEER_OUT (需要自己创建) 5.函数源代码标签页,需要写代码实现把传入的数据保存在透明表中。 至此,函数创建完成。 6.创建Web Services 右击包名创建企业服务,进入如下页面,选择“Service Provider”,因为我们是服务提供者,点击“继续”。

7.选择“Existing ABAP Object (Inside Out)”,点击“继续”。 8.给服务起名,并填写描述,点击“继续”

9.选择“Function Module”,点击“继续”。 10.填写我们第一步创建的函数,并勾选“Map Name”,点击“继续”。 11.SOAP Appl默认不变,Profie下拉框选择第四个选择,即不进行权限认证。点击“继续”。 12.填写对于的包和请求,点击“继续”。 下一步,直接点击“完成”。服务创建成功。

13.配置SOA 使用T-CODE:soamanager,进入web页面的SOA管理(client=100)。 14.点击“简化Web服务配置”,进入如下设置页面,点击“执行”,从列表中找到自己创建的 服务,勾选第一个checkbox,User Name/Password(basic),点击列表左上角的“保存”,之后页面右上角的“返回”按钮,返回首页。 这一步设置,代表我们只设置用户名/密码的调用认证方式。

EBS中发布WEBSERVICE接口的方法

在Oracle EBS二次开发中,PL/SQL程序是开发人员使用频率最高的开发语言,同时也是大家最容易掌握的工具之一了,而我们也很希望将自己编写的PL/SQL 程序发布为Web服务来提供给客户端程序使用,同时也可以实现和外围系统的集成,有了irep_parser这个工具,我们就可以将自己编写的PL/SQL 程序发布到Oracle Integration Repositoy中。Oracle Integration Repositoy中集成接口的来源都是Oracle,客户化的程序发布上去的为Custom: 下面描述如何将PL/SQL程序接口发布到Oracle Integration Repositoy中作为集成接口供第三方程序集成调用 一、给EBS系统打补丁 参考如下安装文档: 安装文档.docx 二、添加客户化应用到Product Family 客户化应用设置好之后,它没有归属于任何的产品家族,如我的客户化应用CUX,因此发布在客户化应用下的集成接口在Oracle Integration Repositoy中无法方便的查看,如下图:

如果客户化集成接口是组织到自己的应用下就需要先注册一个产品家族,下面将CUX Developer(CUX) 应用注册到CUX Developer(cux_pf)这个产品家族下作为例子进行演示: 1,添加产品家族 CUX Developer(cux_pf) --添加产品家族 begin -- Call the procedure ad_pa_insert_package.insert_ad_pm_product_info(x_product_abbreviation => 'cux_pf', x_pseudo_product_flag => 'N', x_product_family_flag => 'Y', x_application_short_name => NULL, x_product_name => 'CUX Developer', x_product_family_abbreviation => NULL, x_product_family_name => NULL, x_aru_update_date => to_char(SYSDATE,'YYYY-MM-DD HH24:MI:SS'), x_currdate => to_char(SYSDATE,'YYYY-MM-DD HH24:MI:SS'), x_last_updated_by => -1, x_created_by => -1); COMMIT; end; 2,注册CUX Developer(CUX)应用到产品家族中

【WebService】接口的测试方法

【WebService】接口的测试方法 有以下多种方式: 一、通过WSCaller.jar工具进行测试: 前提:知道wsdl的url。 wsCaller可执行程序的发布方式为一个wsCaller.jar包,不包含Java运行环境。你可以把wsCaller.jar复制到任何安装了Java运行环境(要求安装JRE/JDK 1.3.1或更高版本)的计算机中,用以下命令运行wsCaller: java -jar wsCaller.jar 使用wsCaller软件的方法非常简单,下面是wsCaller的主界面: 首先在WSDL Location输入框中输入你想调用或想测试的Web Service的WSDL位置,如“https://www.360docs.net/doc/5314903328.html,/axis/services/StockQuoteService?wsdl”,然后点“Find”按钮。wsCaller就会检查你输入的URL地址,并获取Web Service的WSDL信息。如果信息获取成功,wsCaller会在Service和Operation下拉列表框中列出该位置提供的Web Service服务和服务中的所有可调用的方法。你可以在列表框中选择你要调用或测试的方法名称,选定后,wsCaller窗口中间的参数列表框就会列出该方法的所有参数,包括每个参数的名

称、类型和参数值的输入框(只对[IN]或[IN, OUT]型的参数提供输入框)。你可以输入每个参数的取值。如下图: 这时,如果你想调用该方法并查看其结果的话,只要点下面的“Invoke”按钮就可以了。如果你想测试该方法的执行时间,则可以在“Invoke Times”框中指定重复调用的次数,然后再按“Invoke”按钮。wsCaller会自动调用你指定的方法,如果调用成功,wsCaller会显示结果对话框,其中包括调用该方法所花的总时间,每次调用的平均时间和该方法的返回值(包括返回值和所有输出型的参数)。如下图:

Webservice接口开发

Webservice接口开发 Author:Geloin

目录 1 准备工作 (1) 2 服务器端 (1) 2.1 主程序 (1) 2.2 services.xml (2) 2.3 传值方式 (3) 2.4 打包 (4) 2.5 发布 (6) 3 客户端 (8) 3.1 导入包 (8) 3.2 示例代码 (8) 3.3 代码解析 (10) 3.3.1 设定服务器地址 (10) 3.3.2 设定action (10) 3.3.3 设定要调用的方法名 (11) 3.3.4 设定客户端控件 (11) 3.3.5 设定命名空间 (11) 3.3.6 设定需要传送的值 (11) 3.3.7 设定返回数据类型 (11) 3.3.8 获取返回结果 (12)

1准备工作 至https://www.360docs.net/doc/5314903328.html,/axis2/下载axis2的bin及war包,分别解压之,在环境变量中添加AXIS2_HOM,将axis2.war放置到tomcat/webapps目录下,启动tomcat,用浏览器打开http://localhost:8080/axis2,如下图所示: 2服务器端 2.1主程序 服务器端可以是任何一个程序,例如下面的例子: public class Test { // 此程序返回一个字符串 public String test1(String arg) { return arg + “测试”; } // 此程序返回一个一维数组 public String[] test2(String arg) { String[] result = new String[]{arg}; return result;

eclipse创建webservice的两种方法

在eclipse 中创建webservice项目 方法一:使用xfire支持 1.创建Dynamic Web Project 项目: 2.将编译路径改为项目/web-INF/classes; 3.将META-INF 文件夹移动到src下面,并在META-INF 中创建xfire文件夹,文件夹内放入services.xml文件; 4.添加xfire支持的jar包:

5.编写web.xml: 7.编写services.xml

可以存在多个service; 8.访问http://localhost:port/projectName/services/url-pattern?wsdl(蓝色字体均为相应的内容);方法二:使用Axis2支持 1.1Axis2发行包 Axis2以多个发行包发行。你需要哪个视你所需决定。 1.1.1标准二进制发行包 如果你正在开发服务和应用程序,你需要Axis2标准二进制发行包。这个发行包包括所有必要的*.jar文件,以及很多便于开发用的脚本。它具有以下结构。 Axis2标准二进制发行包目录的结构 bin axis2.bat axis2.sh axis2server.bat axis2server.sh java2wsdl.bat java2wsdl.sh wsdl2java.bat wsdl2java.sh setenv.sh lib activation-1.1.jar ... XmlSchema.jar repository modules modules.list addressing-1.1.mar ... services services.list version.aar ... samples ... webapp ... conf axis2.xml LICENSE.txt README.txt NOTICE.txt INSTALL.txt release-notes.html bin目录包括一些有用的脚本。它们包括axis2.bat(或者axis2.sh),这个文件可以让你在不手工添加Axis2 jar文件到类路径的情况下方便的执行Java命令;java2wsdl.bat(和.sh)和wsdl2java.bat(和.sh),它可以让你轻易的从一个WSDL文件生成Java代码,反之亦然;axis2server.bat(和sh),一个简易Web服务器,它可以让你早自己的应用程序中搭建Axis2

ESB部署WebService接口(统一用户和待办)

1 统一待办(WebService方式) 1.1 概述 门户系统做为用户访问各集成应用系统的统一入口,用户访问企业内部信息资源时只需要登录到门户系统,就可使用门户系统集成的各个应用,而待办做为各系统中用户需要处理的工作,门户系统需要提供收集建投内部应用系统中产生的待办信息,并且进行统一展现的功能,即统一待办功能。 统一待办应用业务涉及到的系统其中包括本期门户系统建设过程中所需集成的OA、WCM、EAM系统。 为保证门户系统接入各应用系统待办信息的规范性,现就各应用系统接入实现做统一要求,以确保门户系统统一待办功能实现的规范性、重用性及安全性。不满足本技术方案提供的接入规则的相关应用系统,应参考本文档完成对应用系统改造后方可进行门户系统统一待办接入工作。 统一待办实现共分为以下部分: 系统待办信息获取 系统待办信息展示 系统待办信息处理 1.2 待办信息获取 设计思路:应用系统通过门户系统提供的webservice接口向门户系统统一待办系统库写入代表信息,如下图

数据获取设计示意图 步骤如下: 1.应用系统需获得最新的待办信息。 2.应用系统通过门户接口,将获得的最新待办信息发送到门户系统。 3.统一待办系统将应用系统提供的待办信息展示给用户。 4.应用系统通过调用集成接口后获得信息,可以判断发送信息操作是否正常。 1.3 待办信息展示 设计思路:应用系统将最新的待办信息发送到统一待办系统中,并最终展示到门户首页上的待办栏目上,如下图 用户 待办栏目页面 待办集中展示设计示意图 场景如下:

在所有的待办类标题前加上”请办理”,待阅类标题前加上”请审阅”。此外,如果信息是未办或者未阅,用红色表示 1.4 待办信息处理 设计思路:用户点击门户系统上“待办栏目”里的一条待办时,弹出一个新页面,首先同应用系统实现SSO,然后跳转到应用系统的待办页面,完成待办处理后,由应用系统调用门户接口通知门户系统,并关闭弹出的待办处理页面,门户系统负责即时刷新门户待办页。如下图: 待办信息集中处理设计示意图

ESB部署WebService接口(统一用户和待办)

1统一待办(WebService方式) 1.1概述 门户系统做为用户访问各集成应用系统的统一入口,用户访问企业内部信息资源时只需要登录到门户系统,就可使用门户系统集成的各个应用,而待办做为各系统中用户需要处理的工作,门户系统需要提供收集建投内部应用系统中产生的待办信息,并且进行统一展现的功能,即统一待办功能。 统一待办应用业务涉及到的系统其中包括本期门户系统建设过程中所需集成的OA、WCM、EAM系统。 为保证门户系统接入各应用系统待办信息的规范性,现就各应用系统接入实现做统一要求,以确保门户系统统一待办功能实现的规范性、重用性及安全性。不满足本技术方案提供的接入规则的相关应用系统,应参考本文档完成对应用系统改造后方可进行门户系统统一待办接入工作。 统一待办实现共分为以下部分: 系统待办信息获取 系统待办信息展示 系统待办信息处理 1.2待办信息获取 设计思路:应用系统通过门户系统提供的webservice接口向门户系统统一待办系统库写入代表信息,如下图

数据获取设计示意图 步骤如下: 1.应用系统需获得最新的待办信息。 2.应用系统通过门户接口,将获得的最新待办信息发送到门户系统。 3.统一待办系统将应用系统提供的待办信息展示给用户。 4.应用系统通过调用集成接口后获得信息,可以判断发送信息操作是否正常。 1.3待办信息展示 设计思路:应用系统将最新的待办信息发送到统一待办系统中,并最终展示到门户首页上的待办栏目上,如下图 用户 待办栏目页面 待办集中展示设计示意图 场景如下:

在所有的待办类标题前加上”请办理”,待阅类标题前加上”请审阅”。此外,如果信息是未办或者未阅,用红色表示 1.4待办信息处理 设计思路:用户点击门户系统上“待办栏目”里的一条待办时,弹出一个新页面,首先同应用系统实现SSO,然后跳转到应用系统的待办页面,完成待办处理后,由应用系统调用门户接口通知门户系统,并关闭弹出的待办处理页面,门户系统负责即时刷新门户待办页。如下图: 待办信息集中处理设计示意图

webservice接口开发

Eclipse 关于接口系统的开发 我们做接口服务端: 小知识: 接口分为:服务端与客户端 服务端:即提供者,是为调用者提供数据的一方; 客户端:即调用者,是调用接口的一方; <一> 服务端的创建 步骤1. 在eclipse新建一个普通工程,例如:新建一个web project 工程。 步骤2.创建完成后,在刚才新建的工程里面,加入我们需要实现的类,和接口。在实现类里面编写客户端传入参数后,需要的相关信息。 例如: Public String sayHello(String word) { Return word; } 步骤3. 进入服务端代码的自动生成阶段,我们选中刚才编写的实现类或是创建的工程,右键。选择,new→project…→other→,如下图,选择web service 服务端。点击next

步骤4.根据下图,通过选择实现类,点击完成。自动生成服务端了。

步骤5 .前4步骤已经完成了webservice的服务端,并已经自动启动好了,我们进行如下测试,访问下自动产生的wsdl文件是否能访问到: 例如:访问wsdl地址示例 http://10.1.159.28:8082/ICTS/services/GetWorkflowListDaoImp?wsdl 其中:GetWorkflowListDaoImp 为自己创建的实现类名称 <二>客户端的创建,测试我们完成的服务端接口:

步骤1. 创建一个普通的web project 工程 步骤2. 创建完成后,选中,我们创建的工程,右键→,new→other→,创建web service cliet 客户端,完成后,点击finish。完成 步骤3。我们通过客户端进行调用,测试一下服务端是否正常。通过如下示例地址:http://10.1.159.28:8082/test1/sampleGetWorkflowListDaoImpProxy/TestClient.jsp, 这是客户端为我们自动建立的测试页面,我们只需输入参数,就可以进行测试了。界面如下:

WebService接口代码样例说明

WS接口代码样例 Java代码调用样例 参见WSTest_for_Java.rar附件,该附件为Eclipse工程代码。接口调用参见https://www.360docs.net/doc/5314903328.html,info.smsmonitor.Test C代码调用样例 参见WSTest_for_c.tar附件,该附件为标准C工程代码。 附录 Webservice消息发送接口报文样例: TaskID-003761653 8613301261178 106557503 1 This is test message 1 00:00-23:59

常用的webservice接口

商业和贸易: 1、股票行情数据WEB 服务(支持香港、深圳、上海基金、债券和股票;支持多股票同时查询) Endpoint:https://www.360docs.net/doc/5314903328.html,/WebServices/StockInfoWS.asmx Disco:https://www.360docs.net/doc/5314903328.html,/WebServices/StockInfoWS.asmx?disco WSDL:https://www.360docs.net/doc/5314903328.html,/WebServices/StockInfoWS.asmx?wsdl 支持香港股票、深圳、上海封闭式基金、债券和股票;支持多股票同时查询。数据即时更新。此中国股票行情数据WEB 服务仅作为用户获取信息之目的,并不构成投资建议。支持使用| 符号分割的多股票查询。 2、中国开放式基金数据WEB 服务 Endpoint:https://www.360docs.net/doc/5314903328.html,/WebServices/ChinaOpenFundWS.asmx Disco:https://www.360docs.net/doc/5314903328.html,/WebServices/ChinaOpenFundWS.asmx?disco WSDL:https://www.360docs.net/doc/5314903328.html,/WebServices/ChinaOpenFundWS.asmx?wsdl 中国开放式基金数据WEB 服务,数据每天15:30以后及时更新。输出数据包括:证券代码、证券简称、单位净值、累计单位净值、前单位净值、净值涨跌额、净值增长率(%)、净值日期。只有商业用户可获得此中国开放式基金数据Web Services的全部功能,若有需要测试、开发和使用请QQ:8698053 或联系我们 3、中国股票行情分时走势预览缩略图WEB 服务 Endpoint: https://www.360docs.net/doc/5314903328.html,/webservices/ChinaStockSmallImageWS.asmx Disco: https://www.360docs.net/doc/5314903328.html,/webservices/ChinaStockSmallImageWS.asmx?disco WSDL: https://www.360docs.net/doc/5314903328.html,/webservices/ChinaStockSmallImageWS.asmx?wsdl 中国股票行情分时走势预览缩略图WEB 服务(支持深圳和上海股市的全部基金、债券和股票),数据即时更新。返回数据:2种大小可选择的股票GIF分时走势预览缩略图字节数组和直接输出该预览缩略图。 4、外汇-人民币即时报价WEB 服务 Endpoint: https://www.360docs.net/doc/5314903328.html,/WebServices/ForexRmbRateWebService.asmx Disco:https://www.360docs.net/doc/5314903328.html,/WebServices/ForexRmbRateWebService.asmx?disco

Webservice的应用与开发试卷

南京工业大学WebService的应用与开发试题(A)卷班级学号姓名 一、判断题(正确的打勾,错误的打叉,每题2分) 1.SOAP(Simple Object Access Protocol)协议是一个基于Xml的协议。它描述了数据类型的消 息格式以及一整套串行化规则,包括结构化类型和数组。(o) 2.客户端与Xml Web服务进行异步通信,向服务端发出服务请求的方法与接收web服务返回 的结构在同一线程中(e) 3.基于消息的体系的分布式应用中,可以使用异步消息处理也可以使用同步消息处理(o) 4.Web服务中使用SOAP表示数据的优点是SOAP提供了一种所有平台都支持的中间表示方 式,客户端只要将SOAP类型转换为自身平台可以理解的类型即可(o) 5.分布式应用程序节点越多,单点失败的可能性越大,整个系统发生故障的可能性越大(o) 6.Apache CXF为java WebService的一个框架,可以用它提供的命令行工具wsdl2java生成客 户端的代理类(o) 7.Xml DTD提供了一种避免元素名冲突的方法(e) 8.所有Xml文件只有一个根元素且不分大小写(e) 9.每个Xml文档分为两个部分:序言和文档元素。(o) 10.都是WSDL文档的关键元素。( e ) 11.XML Web服务的交互可以使用Internet协议中所有的协议( e ) 12.对于Web服务的请求可以穿越防火墙( o ) 13.ajax可以跨域访问Web服务( o ) 14.元素在WSDL中用于描述操作的引用输入/输出消息( o ) 15.元素在WSDL中用于描述交互中已经被定义了类型的数据( o ) 二、选择题(单、多项选择,每题2分) 1.Web Service需要以下哪些技术、协议的支持(ABCD ) A.HTTP B.SOAP C.XML D. T CP/IP 2.下列选项中,哪个是XML合法的元素名(A ) A.TOM

webservice接口开发

Microsoft .NET体系结构中非常强调Web Service,构建Web Service接口对.NET Framework开发工具有很大的吸引力,因此很多讲建立Web Service机制的文章都是使用.NET Framework开发工具的。 在这篇文章中我们将谈论下面几个方面的问题 1、客户端怎样和Web Service通信的 2、使用已存在的Web Service创建代理对象 3、创建客户端。这包括: Web 浏览器客户端 Windows应用程序客户端 WAP客户端 最好的学习方法是建立一个基于真实世界的实例。我们将使用一个已存在的Web Service,这个Web Service从纳斯达克获得股票价格,客户端有一个简单的接口,该接口的外观和感觉集中了建立接口的多数语句。 客户端描述 三种客户端都接受客户输入的同一股票代码,如果请求成功,将显示公司名和股票价格,如果代码不可用,将显示一个错误信息。客户端都设置有"Get Quote" 和"Reset"按钮以初始化用户的请求。 开发中的注意事项 我使用visual https://www.360docs.net/doc/5314903328.html,作为我的集成开发环境,beta版没有结合.NET Mobile Web,因此,我们需要使用文本编辑器创建wap客户端,下一个版本的visual https://www.360docs.net/doc/5314903328.html, 将整合入.NET Mobile Web 。 客户端怎样与Web Service通讯 我们先复习一下Web Service的功能,在我得上一篇文章中曾展示一幅图(如图一),a点的用户将通过Internet执行远程调用调用b点web 服务器上的东西,这次通讯由SOAP和HTTP完成。

C# Webservice创建、发布、部署

WebService创建到发布 1.创建WebService 1.1.首先创建Webservice工程,图中以VS2010为例 a)如果选择.Net Framework 4,则找不到Web服务应用程序,此时选择https://www.360docs.net/doc/5314903328.html,空 Web应用程序。创建好空应用程序后,选择该工程右键添加Web服务 图1

图2 b)如果读者不想使用此方法,则选择.NET Framework 3.5、3.0、2.0,则会出现https://www.360docs.net/doc/5314903328.html, Web服务应用程序 1.2.创建好程序后默认会有一个HellWorld函数 c)WebService1.asmx文件中的代码 namespace WebApplication1 { ///

/// WebService1 的摘要说明

///

[WebService(Namespace = "https://www.360docs.net/doc/5314903328.html,/")] // webservice命名空间 [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [https://www.360docs.net/doc/5314903328.html,ponentModel.ToolboxItem(false)] // 若要允许使用 https://www.360docs.net/doc/5314903328.html, AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 // [System.Web.Script.Services.ScriptService] public class WebService1 : System.Web.Services.WebService { [WebMethod] public string HelloWorld() { return"Hello World"; } } } d)运行程序,如图1所示,列出了服务函数名,点击要调用的函数如图2所示,点击 调用后出现图3所示,图3所示中为函数返回值 图1

xml webService入门教程

Web Service 基本概念 Web Service也叫XML Web Service WebService是种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件(服务),使用WSDL文件进行(说明),并通过(UDDI)进行注册。 XML:(Extensible Markup Language)扩展型可标记语言。面向短期的临时数据处理、面向万维网络,是Soap的基础。 Soap:(Simple Object Access Protocol)简单对象存取协议。是XML Web Service 的通信协议。当用户通过UDDI找到你的WSDL描述文档后,他通过可以SOAP调用你建立的Web 服务中的一个或多个操作。SOAP是XML文档形式的调用方法的规范,它可以支持不同的底层接口,像HTTP(S)或者SMTP。 WSDL:(Web Services Description Language) WSDL 文件是一个XML 文档,用于说明一组 SOAP 消息以及如何交换这些消息。大多数情况下由软件自动生成和使用。 UDDI (Universal Description, Discovery, and Integration) 是一个主要针对Web服务供应商和使用者的新项目。在用户能够调用Web服务之前,必须确定这个服务内包含哪些商务方法,找到被调用的接口定义,还要在服务端来编制软件,UDDI是一种根据描述文档来引导系统查找相应服务的机制。UDDI利用SOAP消息机制(标准的XML/HTTP)来发布,编辑,浏览以及查找注册信息。它采用XML格式来封装各种不同类型的数据,并且发送到注册中心或者由注册中心来返回需要的数据。 概念补充: http soap关系 http:是一个客户端和服务器端请求和应答的标准(TCP)。http协议其目的是为了提供一种发布和接收htttp页面的方法 一http协议的客户端与服务器的交互:由HTTP客户端发起一个请求,建立一个到服务器指定端口(默认是80端口)的TCP连接。HTTP服务器则在那个端口监听客户端发送过来的请求。一旦收到请求,服务器(向客户端)发回一个状态行,比如"HTTP/1.1 200 OK",和(响应的)消息,消息的消息体可能是请求的文件、错误消息、或者其它一些信息。 soap 协议:它描述了一种在分散或分布式的环境中如何交换信息的轻量级协议。soap 在http协议的基础上,一个基于XML的协议。 不同:都是底层的通信协议,请求包的格式不同而已,soap包是XML格式,http纯文本格式。 关系:SOAP是个通信协议,SOAP在HTTP协议的基础上,把编写成XML的REQUEST 参数, 放在HTTP BODY上提交个WEB SERVICE服务器(SERVLET,ASP什么的) 处理完成后,结果也写成XML作为RESPONSE送回用户端,为了使用户端和WEB SERVICE可以相互对应,可以使用WSDL作为这种通信方式的描述文件,利用WSDL工具可以自动生成WS和用户端的框架文件,SOAP具备把复杂对象序列化捆绑到XML里去的能力。 Membrane SOAP Monitor,这个soap监听工具。这是德国的一家在线web服务注册公司predic8做的开源soap监听工具,简单好用。 windows下最新的版本为1.1.2版,下载地址: https://www.360docs.net/doc/5314903328.html,/membrane/monitor/win86/membrane-monitor-win86-1.1.2.zip 还有linux下的版本:

webservice接口文档

软件项目文档 无线条码库存管理系统 数据库设计报告 版本:<1.0>

版本历史

目录 1文档介绍 (4) 1.1 文档目的 (4) 1.2 文档范围 (4) 1.3 读者对象 (4) 1.4 参考文献 (4) 1.5 术语与缩写解释 (4) 2数据库环境说明 (4) 3数据库的命名规则 (4) 4逻辑设计............................................................................................................................ 错误!未定义书签。5物理设计.. (4) 5.0 表汇总......................................................................................................................... 错误!未定义书签。 5.1 表A ............................................................................................................................. 错误!未定义书签。 5.n 表N ............................................................................................................................. 错误!未定义书签。6存储过程、函数、触发器设计........................................................................................ 错误!未定义书签。7安全性设计........................................................................................................................ 错误!未定义书签。 7.1 防止用户直接操作数据库的方法............................................................................. 错误!未定义书签。 7.2 用户帐号密码的加密方法......................................................................................... 错误!未定义书签。 7.3 角色与权限................................................................................................................. 错误!未定义书签。8优化.................................................................................................................................... 错误!未定义书签。9数据库管理与维护说明.................................................................................................... 错误!未定义书签。

使用Myeclipse创建WebService实例

使用Myeclipse 开发基于JAX-WS的Web service实例 本文为Web service 开发入门篇,主要介绍在Myeclipse 环境下开发Web service的服务程序和客户端程序的基本流程。 在Weblogic 10.3.4 中部署Web service服务。 开发环境如下: JAVA IDE:Myeclipse Web server:Weblogic 开发Web service服务程序,需要了解以下相关内容,WSDL, SOAP, XML。这些是组成Web service 的基础。 在下开发Web service程序,目前系统支持的开发框架有3个, JAX-WS,REST(JAX-RS),XFire。其中系统建议不要使用XFire 的框架,可能是要被淘汰了(deprecated)。我们选择的是JAX-WS框架。这个需要Java EE 的支持。所以后面选择Web server容器的时候,是要能支持Java EE 的才可以部署成功。 (一)Web service服务端开发 1. 新建一个Web service project, 菜单File -> New -> Web Service Project,

在上面的框中输入项目名myWebSvc,框架选择JAX-WS, J2EE只能选择Java EE 。Finish完成项目新建。 2. 新建一个Java Bean, 就是一个普通的Class, File –> New -> Class,

包名输入类名输入SayHello, Finish 结束新建类。在类中加入一个方法sayHaha如下, package public class SayHello

WebService接口实例说明文档

WebService接口说明文档 文档说明 本文档主要讲述如何用CSharp创建一个简单的WebService接口,并使用Java调用这个WebService接口。 准备工作 系统环境:安装JDK1.6或更新版本 开发工具:Microsoft Visual Studio2012、MyEclipse10.5、axis2-1.6.2 C Sharp服务端 1.首先,创建一个Web Service项目。依次点击:文件—新建—项目,在弹出的新建项目窗口中选择 Web下的https://www.360docs.net/doc/5314903328.html, 空 Web应用程序。如下图: 2.接下来我们需要创建我们的WebService接口实现文件。鼠标右击我们的项目,依次点击:添加—新 建项,在弹出窗口中选择Web服务。可修改新建项的文件名,注意文件名后缀后.asmx。如下图:

新建完成后我们的项目结构如下: 3.打开我们新建的MyService.asmx下的MyService.asmx.cs文件,可以看到其中已经有默认的 HelloWorld方法。

我们可以直接运行查看下运行的效果,效果如下图: 点击HelloWorld,再点击调用可以看到页面返回:

4.接下来我们完善我们的WebService接口功能。主要对WebService接口进行参数类型的测试,文本型、 布尔型、数值型、类(Class)等。 新增Add()等运算方法: 新增strcat()连接字符串方法: 新增GetBool()返回布尔值方法: 新增GetTest()返回测试类,并新增Test类 运行我们的项目,可以看到我们的结果如下图:

点击add方法测试: 输入add的参数i和j点击调用按钮,可以看到返回计算结果: 5.到此为止我们C Sharp创建的WebService程序完成。接下来看Java如何调用我们的WebService接口。

做一个c#的webservice服务接口

这是一个用Java调用C#版WebService接口的例子: C#接口: using System; using System.Web; using System.Web.Services; using System.Web.Services.Protocols; using System.Web.Services.Description; [WebService(Namespace = " https://www.360docs.net/doc/5314903328.html,/ " )] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class Service : System.Web.Services.WebService { public Service () ... { // 如果使用设计的组件,请取消注释以下行 // InitializeComponent(); } [SoapRpcMethod(Action = " https://www.360docs.net/doc/5314903328.html,/Add " , RequestNamespace = " https://www.360docs.net/doc/5314903328.html,/T " , ResponseNamespace = " https://www.360docs.net/doc/5314903328.html,/T " , Use = SoapBindingUse.Literal)] [WebMethod] public int Add( int a, int b) ... { return a + b; } [SoapRpcMethod(Action = " https://www.360docs.net/doc/5314903328.html,/Hello " , RequestNamespace = " https://www.360docs.net/doc/5314903328.html,/T " , ResponseNamespace = " https://www.360docs.net/doc/5314903328.html,/T " , Use = SoapBindingUse.Literal)] [WebMethod] public String HelloWorld()

webservice数据传输系统设计说明书

X X X学院毕业 毕业设计 . 题目: _______ Web Service数据传输 系别:_____________ ______________ 专业:______________ ___________班级:_______________________ __姓名:___________________ ________指导老师:______________________ _____________

数据传输项目需求分析 1 系统概述 (2) 系统简介 (2) 系统功能简介 (2) 系统用户角色 (2) 2 系统假设 (3) 3 串口通信技术 (3) 串口通信的定义 (3) 串口通信与项目之间的联系 (3) 4 服务器与服务器之间的数据传输 (3) Web Service技术和数据库复制技术之间的优缺点 (3) Web Service技术和数据库复制技术之间的对比 (4) Web Service 技术和数据库复制技术的选择 (4) 5 分析和总结 (4) 6 文档历史 (5) 1 系统概述 系统简介 该系统主要是为了实现太阳神有限公司的数据交换传递。 系统功能简介 异构平台间的互通功能;数据备份功能。 系统用户角色 系统管理员:添加、删除普通管理员 普通管理员:可以查看数据库的数据;整理数据集合

2 系统假设 1)假定各公司设备完整,该系统开发时间和经费充足。 2)公司无其他新的功能要求; 3 串口通信技术 串口通信的定义 串口通信是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。现在比较普遍的串口通信是两个基于RS-232的串口之间的通信。 串口通信与项目之间的联系 串口通信是串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现较远距离通信。所以非常适合该项目单片机把数据传输到电脑上,也可以通过电脑把要执行的指令传输到单片机上。 4 Web Service技术和数据库复制技术 Web Service技术和数据库复制技术之间的优缺点 Web Service技术和数据库复制技术之间的对比

相关文档
最新文档