浏览 1082 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2015-10-19
使用VisualRulesSolution规则配置器作为客户端调用WebService服务。 新建规则包Client 点击工程“test1”—“新建规则包”,并命名为Client,如下图: 点击规则包“Client”下的“对象库”—“添加web服务向导”,如下图: 弹出窗体,在wsdl地址对应的文本框中输入http://localhost/webService_cxf/webServices/typeService?wsdl,点击查找,勾选方法,如下图: 显示如下: 调用日期型接口 新建规则包“date”,添加web服务,选择如下服务,勾选参数,如下图: 勾选方法 对象库中参数定义,如下图: 规则配置如下,其中 参数赋值: 取值需要: 结果赋值: 测试结果 调用数组型接口 新建规则包“array”,添加web服务,选择如下服务,勾选参数,其中“arg2”参数类型为base64Binary需要手动修改成base64Binary[],修改后点回车键,如下图: 勾选方法 对象库中添加如下参数,其中unsignedShort[]和base64Binary[]类型是选择不出来的,我们可以手动写出这些类型,修改后点回车键,参数如下: 规则如下: 测试结果,unsignedShort[]和base64Binary[]类型初始输入值不需要逗号“,”分隔 调用 map型接口 新建规则包“map”,添加web服务,选择如下服务,勾选参数,如下图 勾选方法,其中返回结果集的方法的类型需要改成“map”,更改的方式是在属性中的“结果类型”和“返回值类型”对应的属性值修改为“map”,如下图: 设置如下参数,没有的类型,手动修改,在点击回车键,如arg3 规则配置如下图: 测试结果,其中arg3输入“男”得到的结果为“30007”,因此我们建议,尽量用String类型代替char类型,如下图: 调用 list<String>型接口 新建规则包“listString”,添加web服务,选择如下服务,勾选参数,如下图 勾选方法,myEclipse中编写的java方法,返回类型为List<String>,在这将以string[]作为返回类型,如下图: 规则编写如下: 测试结果 总结说明 char类型不能很好的应用,解决方法是用String类型代替。 char类型在VisualRules 中的web服务中unsignedShort,为了能匹配,在规则对象中定义参数的时候也许设置为unsignedShort。 byte类型在VisualRules 中的web服务中base64Binary,为了能匹配,在规则对象中定义参数的时候也许设置为base64Binary。 list<E>类型在VisualRules 中的web服务中自动转化成E[],如list<String>在web服务中String[]。 在VisualRules中的需要的类型如果选择不出来,可以手动修改,修改后点击回车键,web服务中返回值的类型需要在属性中修改。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |