将 BizTalk 业务流程发布为 Web Service

一.简介

BizTalk 中的 Web Services 支持分为两类: 使用或调用 Web Service,以及发布或创建 Web Service。

使用 Web Service
可以从业务流程中使用(调用)Web Services。 可以将若干 Web Services 聚合成单个业务流程以完成整个业务流程。

发布 Web Service
可以使用 Web Service 发布向导发布 Web Service。 业务流程和发送适配器可以使用这些已发布 Web Services。

前者的使用方式和一般的适配器使用方式相似,因此本文仅介绍如何使用后者,即如何将 BizTalk 业务流程发布为 Web Service。

将 BizTalk 业务流程发布为 Web Service 本质上指的是将业务流程所使用的接收端口发布为 Web Service。此后,其它程序可以通过调用该 Web Service 来向 BizTalk 发送数据,Web Service 实际上是一个或者一组公开的函数调用。当使用 请求响应接收端口 时,公开的 Web Service 函数将包含返回值,该返回值即是 BizTalk 向 请求响应接收端口 传回来的返回值。

二.创建并发布 BizTalk 项目

首先需要在 VS 中创建一个  BizTalk项目——BizTalk 2006 R2 对应VS 2005 SP1 而 BizTalk 2009 则对应 VS 2008 SP1,并为其添加一个业务流程。然后依次向该业务流程中添加接收模块、构造消息模块、转换模块、发送模块、接收端口、输入消息的架构、输出消息的架构,以及映射。接收端口使用“请求-响应”通信模式,并将访问限制设置为“公有-无限制”。输入和输出消息的架构以及映射的定义如下图所示:

image

image 

image

image 

向该项目中添加强签名,然后编译并部署到 BizTalk 中。

三.将发布业务流程发布为 Web Service

在开始菜单中选择“BizTalk Web Services 发布向导”,在弹出的窗口中点击 下一步;在 创建 Web Services 界面中选择 “将 BizTalk 业务流程发布为 Web Services”并点击 下一步;在 BizTalk 程序集 界面中点击 浏览 并选择前面工程所编译的 DLL 文件,然后连着点击三次 下一步;在 Web Services 项目 界面中,选上“允许匿名访问 Web Services”,然后选上“在以下应用程序中创建 BizTalk 接收位置”并选择刚才工程所部署至的 BizTalk 应用程序(默认为  BizTalk Application 1),点击 下一步;点击 创建

配置并启动该BizTalk 应用程序。

在 Windows 中新建一个账户,如:MyUser,然后将该账户添加到 BizTalk Isolated Host UsersIIS_WPG 用户组。

打开 IIS 管理工具,为刚才添加的用户新建一个 应用程序池

打开 IIS 管理工具,在 默认网站 下找到刚才部署的 Web 服务 MyBTSProj_Proxy,打开其属性窗口。在页面“目录”中,将其执行权限改为“脚本和可执行文件”,将应用程序池改为刚才创建的应用程序池。在页面“目录安全性”中,点击 身份验证和访问控制 下的 “编辑”按钮,然后选上“启用匿名访问”。

image

image

四.调用 Web Service

在 BizTalk 管理控制台 中展开所使用的应用程序,双击所布置的接收位置,复制其 URI 地址,如:“/MyBTSProj_Proxy/MyBTSProj_MyOrch_My2WayRecvPort.asmx”。在 VS 中创建一个 C# 控制台工程,为其添加 Web 引用,引用的地址即为 “http://localhost” + 刚才所复制的 URI 地址,如:“http://localhost/MyBTSProj_Proxy/MyBTSProj_MyOrch_My2WayRecvPort.asmx”。下面是调用该 Web Service 的实例代码:

输出如下:

Name : Jackie
Is older than 18 ? : True

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值