首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

依据一定规则的excel生成wsdl文件(工具源码)

2012-10-25 
根据一定规则的excel生成wsdl文件(工具源码)前一段时间,公司项目业务,需要通过提供Soap接口给第三方调用,

根据一定规则的excel生成wsdl文件(工具源码)

前一段时间,公司项目业务,需要通过提供Soap接口给第三方调用,由于接口较多,通过手写wsdl以及相关工具,都感觉不是那么如意,于是决定通过代码来生成WSDL。

?

(在这里提醒大家,搞websevice接口项目,一般第一步都是WSDL的定制;然后才用响应的服务端与客服端代码)

?

由于项目紧,工具写的比较粗糙而且是为我们项目定制的,用的时候请确定你的需求,下面我开始介绍工具的使用:

?

依据一定规则的excel生成wsdl文件(工具源码)

1.根据自己的需求填写适合自己的wsdl规则(wsdl_rule.xls里面包括:type与interface的定义):

?

?(这个例子的excel我放在工程的根目录的resource下)


依据一定规则的excel生成wsdl文件(工具源码)

依据一定规则的excel生成wsdl文件(工具源码)

?

(1)type表格这个就是wsdl的类型定义,类似于javaBean的定义VO(每个接口的参数),第一个圈里的是每个JavaBean对象名字,每个名字下面是它包含的属性(默认都是字符串类型)。

?

(2)例子里面得type定义只是一般情况的配置,属性也支持复数以及以及引用另一个javabean对象,eg:

?

??????? a. 在User1加一个useList属性:userList:User*表示:userList属性是一个复数,而且里面的每个元素类型是User对象。

?

??????? b. 在User加一个emailList属性:emailList*表示:属性是一个复数,而且里面的每个元素类型是String对象。

?


依据一定规则的excel生成wsdl文件(工具源码)

?

(1)Interface Name列是接口的名称,Request列是对应的接口请求参数,Respose列是对应的接口的请求参数。

?

(2)关于Request请求参数:可以是单个的参数,用' ,'号分隔;也可以是对象(在这里只需要把前面定义对象的名字,写在这里就可以了)。

?

(3)关于Response响应参数:可以返回是单个的参数,用' ,'号分隔;也可以返回是对象以及对象复数(在这里只需要把前面定义对象的名字,写在这里就可以了以及后面加*)。

?

注意:Excel解析的时候,帮边最好加几个空格,防止解析的时候报错。

?

2.根据上面定义的excel规则生成wsdl:(工具见附件,为源码,填好参数执行main函数就可以)

?

下面是org.main包下面得WsdlService.java文件

?


依据一定规则的excel生成wsdl文件(工具源码)

?

被注释的代码是根据wsdl生成服务端以及客户端的代码。

?

?

3.下面是消息请求头以及响应头在代码中的位置,默认已经被注释,如果需要可以打开注视:

?

(1)请求消息头:

?


依据一定规则的excel生成wsdl文件(工具源码)

(2)响应消息头:


依据一定规则的excel生成wsdl文件(工具源码)

?

?

?

?

注意:源码工程里的Axis2Jar包已经删除,请自己添加。

?

本来有个界面工具的,感觉不是太好,就自己上源码了,根据需求大家可以修改;在generatesoap包里面,是通过代码自动构造的服务端的Skeleton类,有兴趣可以看一下。

?

体会:能够工作的工具,胜过全面细致的文档。

?

?

2 楼 my_java_life 2011-12-23   我这边主要是适合大量soap接口的,因为SE出的规格都是以文档的形式输出的,我这边是解决是如何吧文档里面描述的接口,提取出来,形成真正的wsdl文件。就是根据excel解析生成wsdl文件。 3 楼 my_java_life 2011-12-23   wsdl文件才是我们真正需要的东西,根据它生成客户端与服务端的代码。就是用普通javaio写文件啊。

热点排行