• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
hhl_kf
博客园    首页    新随笔    联系   管理    订阅  订阅

IBM MB 调用外部Web Service封装为新的Web service

在WMB开发中,有时需要调用外部的Web service,并调用结果作些处理后,再返回响应。此时,MB发布的服务嵌套着外部其它服务。在此篇文章中,详细说明了调用的过程步骤。

      最近因为项目原因,初次接触IBM的MQ中间件,并且MB开发消息流项目。在开发中,用得最多的是MB自己发布一个Web Service,或是调用外部的Web Service并重新封闭成一个Web service。关于MQ,MB的介绍,在此就不多讲了,网上有很多资料,关于MB把消息流发布为Web Service,我在网上也找到一份详细却又简单的资料,在此公布链接出来。

WebSphere中间件技术论坛:http://www.webspherechina.net/club/

MB把消息流发布为Web Service:http://wenku.baidu.com/view/783300717fd5360cba1adb96.html

对外免费的Web Service:http://blog.sina.com.cn/s/blog_6ff1afa90100s49c.html

在这篇博客里重点是调用外部的Web Service 。

1、准备要调用的外部服务的wsdl文件。

      以腾讯QQ在线状态 WEB 服务:http://webservice.webxml.com.cn/webservices/qqOnlineWebService.asmx为例。

      在浏览器中输入http://webservice.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl可以看到服务对外公布的wsdl文件,

另存为此文件为qqOnlineWebService.wsdl到本地计算机上。

2、在MB中新建消息集qqmsp

3、定义消息文件。

a、选中第2步新建的消息集qqmsp,右键:新建->消息定义文件基于->WSDL文件。

b、选择第一步中准备好的wsdl文件,下一步。可以从工作空间选择文件,也可以从工作区外选择文件,选择浏览找到wsdl文件

c、选择wsdl绑定方式:一般对外公布的服务都有:http get,http post ,soap1.1,soap1.2四种方式,在MB中建议使用soap1.1,即只勾选Soap那一项。

 

完成后,可以看到MB自动生成了一些文件。

4、新建消息流项目qqmfp。右键:新建->消息流项目。下一步时,选择依赖消息集qqmsp

5、新建消息流。在第四步建的消息流项目中新建消息流qqmf.

6、拖动消息集qqmsp 中的可部署的WSDL到消息流qqmf中。

a、第一步拖动:选择web Service用途为:将消息流作为Web Service公开。

点击下一步。默认的节点类型为Soap节点,不用改变,点击完成。

b、第二步拖动:选择web Service用途为:从消息流调用Web Service。直接完成即可。

7、连接消息流中节点

8、设置节点公布wsdl:单击Soap Input节点,查看属性,在HTTP传输方法标签中勾选“是否启用对wsdl支持?”

9、归档,部署(略)

10、测试。

      MB提供测试。把MB视图切换为Java EE ,

使用Web service资料管理器测试

 

       但这时,测试的是http://webservice.webxml.com.cn/webservices/qqOnlineWebService.asmx,而不是本地进行包装后重新发布的服务。

可以使用SoapUI工具,进行测试。测试时输入地址为:http://127.0.0.1:7800/webservices/qqOnlineWebService.asmx

也可在SoapInput节点的HTTP传输方法中查看地址:URL的路径:

 

说明:本文为原创文章,转载引用请说明出处。

 

 

posted @ 2012-09-19 15:26  hhl_kf  阅读(1004)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3