BizTalk开发系列(七) Hello World2

之前根据BizTalk的订阅原理,使用BizTalk管理控制台创建了第一个应用程序 Hello World。但是由于控制台的开发功能有限,绝大多数的BizTalk程序都是在集成开发环境Visual Studio下进行的。下面我们在Visual Studio下创建Hello World2程序。其功能是将源消息的两个字段组成第三个字段并保存到目标消息。[效果图如下]


  

  此程序主要是为要熟悉BizTalk相关的开发组件包括:Schema, Mapping , Pipeline, Orchestration的开发。Receive/Send Port的配置等。以下是开发的一些步骤:

  1.创建应用程序

    打开Visual Stuido,依次点击 文件->新建->项目. 在程序名称和路径中填上相应的名称和路径。点击确定创建应用程序

2.创建架构(Schema)

右击BizTalk项目,依次点击 添加->新建项. 在弹出的对话框中的左侧导航栏中选择Schema文件,在右侧的模板中选择Schema.在名称中选择输入Schema的名称。

   

在打开的Schema编辑器中右击Root.依次点击 Insert Schema Node->Child Field Element.

  依次创建两个子元素,并命名为:para1和para2(元素默认为字符串值)。Schema命名空间按默认值。

  

  按以上方法创建目标Schema.文件名为:TargetSchema.架构视图如下:

2. 创建映射(Map)

右击BizTalk项目,依次点击 添加->新建项. 在弹出的对话框中的左侧导航栏中选择Map 文件,在右侧的模板中选择Map.在名称中选择输入Map的名称。

在打开的编辑器的左侧窗口中点击 Open Source Schema 在打开的对话框中选择BTSHelloWorld2.SourceSchema.在右侧窗口点击Open Destination Schema. 在打开的对话框中选择BTSHelloWorld2.TargetSchema.

打开源与目标架构之后,依下图连接源与目标节点。目标架构的string节点是由para1和para2连接而。在map编辑的工具窗口选择String Concatenate Functoid.

3.创建业务流程(Orchestration)

3.1  如前所述。右击BizTalk项目,依次点击 添加->新建项. 在弹出的对话框中的左侧导航栏中选择Orchestration 文件,在右侧的模板中选择Orchestration.在名称中选择输入Orchestration的名称。

3.2 创建消息。打开Orchestration文件,在Orchestration
View窗口中新建两个消息分别为:SourchMsg和TrgetMsg。其类型分别为:BTSHelloWorld2.SourceShema和
BTSHelloWorld2.TargetSchema。如果当前编辑环境中没有Orchestration View可以在View->Other Windows->Orchestration View中打开视图

3.3 创建和配置业务流程

 如图中所示为已经配置完成的流程图形状,实现此流程需要做以下几步。

  • 从工具栏中选择Receive , Transform , Send 三个形状以图中所示位置排列好。
  • 在Receive形状的属性窗口的消息属性中选择刚才创建的SourceMsg。双击Transform在弹出的窗口中选择已存在映射并  在下拉框中选择BTSHelloWorld.StringMap.在SourceDestination中分别选择SourceMsgTargetMsg。在Send 形状的属性窗口的消息属性中选择刚才创建的TargetMsg
  • 在Receive形状的属性窗口的Active属性选择True.表示活动端口以激活业务流程实例
  • 创建接收端口:从工具栏中选择Port形状,拖放到左侧Port Surface中.在端口配置向导中按照提示分别输入:端口名称端口类型,“从此端口接收消息”“稍后配置”。
  • 创建发送端口:从工具栏中选择Port形状,拖放到右侧Port Surface中.在端口配置向导中按照提示分别输入:端口名称端口类型,“从此端口发送消息”“稍后配置”。

4 创建接收的发送管道(Pipeline)

  4.1 接收管道(Receive Pipeline)

如前所述。右击BizTalk项目,依次点击 添加->新建项. 在弹出的对话框中的左侧导航栏中选择Pipeline文件,在右侧的模板中选择Receive Pipeline.在名称中选择输入Pipeline的名称。

  打开Receive Pipeline 从工具箱中选择XML disassembler组件,拖放到Disassemble阶段。

4.2 发送管道(Send Pipeline)

 发送管道的创建方法和接收管道类似,只是在选择模板时选择发送管道。在Pipeline编辑器中选择 XML Assemble组件拖放到Assemble阶段。如下图所示:

5. 部署BizTalk项目

至此BizTalk的项目开发到这里就基本上完成了。可以生成项目文件看有没有错误信息。接下来需要将BizTalk项目部署到BizTalk
主机中。由于BizTalk的程序集需要安装到GAC(全局应用程序缓存)中。所以需要给程序集添加签名。方法是在Visual studio
的命名窗口中输入如下命令:

sn -k e:\projects\btshelloworld2\btshelloworld2.snk

 创建应用程序签名之后。在BizTalk应用程序的属性页的Assembly Key File里引用签名。

在配置属性的Build窗口里填上应用程序的名称,并验证服务器是否为本机。从别的机器上拷贝的程序需要注意这一点。

 养成良好的习惯,配置解决方案的配置将程序的部署选择上。这对于较大的BizTalk开发有帮助。通过解决方案部署Visual Studio会判断程序之间的关系先后部署。

 配置完之后右击解决方案。选择部署解决方案即可。

6. 配置和启动应用程序。

 应用程序部署完之后,就可以在BizTalk管理控制台上看到相应的程序。右击该程序,选择配置。在配置应用程序页中分别为程序配置主机接收端口发送端口

 6.1 创建接收端口

  由于接收端口稍微复杂一点。所以我们以创建接收端口为例。发送端口可参照接收端口的做法创建。首先在应用程序配置页的接收物理端口的下拉框中选择新建接收端口。在弹出的对话框中输入接收端口名称。在左边的导航栏中选择接收位置。在接收位置对话框中输入名称。接收管道选择自定义的接收管道名称(发送端口则选择自定义发送管道名称)类型选择FILE. 点击Config。在弹出的FILE传输对话框中输入接收位置

 

配置向导会显示相应完成的部分。都配置好之后,点击确定即可。

 

 6.2 启动应用程序

  右击应用程序点击启动。在弹出的对话框中再次点击启动。

7. 测试程序

 BizTalk程序部署完成了。那下一步就是需要测试程序。测试程序需要源数据,这个源数据不需要我们手动创建。我们可以借助Schema编辑器的生成实例功能生成源数据。右击SourceSchema.选择Generate Instance

 

在Visual Studio的输出窗口中可以查看到生成文件的地址,打开文件并更改相应的内容。(如果想指定输出文件的路径。可以右击SourceSchema选择属性在对话框中的输出文件里填上文件的路径即可。)

<ns0:Root xmlns:ns0="http://BTSHelloWorld2.SourceSchema">
<para1>Hello </para1>
<para2> World!</para2>
</ns0:Root>

 在配置的输出位置我们可以看到相应的输出文件。

8.总结

 至此我们完成了整个程序的开发。此Sample涵盖了Schema, Map, Pipeline, Orchestration的开发。BizTalk应用程序的部署及配置等。希望以此都够让你对BizTalk的开发有个大概的了解。

时间: 2024-10-09 07:05:00

BizTalk开发系列(七) Hello World2的相关文章

BizTalk 开发系列(四十一) BizTalk 2010 BAM 安装手记

使用64位系统可以支持更大的内存,现在服务器基本上都使用64位系统.微软从Windows Server 2008 R2开始服务器版的操作系统也只支持64位了,不过对于像BizTalk这种“繁杂的东西”在64位系统下确实增添了不少麻烦. 微软于9月底正式发布了面向企业SOA解决方案的最新产品BizTalk Server 2010.最新想搭一个最新的环境.本为装了BizTalk不下百遍的我,应该可以很快就搞起来.但是这次安装太纠结了.特别是在BAM方面,竟然耗了近 两天(白天上班)才搞定.是不是技术

S5PV210开发系列七_Nand驱动实现

S5PV210开发系列七 Nand驱动实现 象棋小子    1048272975 Nand flash具有大容量.改写速度快.接口简单等优点,适用于大量数据的存储,为固态大容量存储提供了廉价有效的解决方案.各种电子产品中如手机存储器.sd卡.u盘等均采用Nand flash存储,笔者此处就Nand驱动实现作一个简单的介绍. 1.  Nand flash概述 东芝公司在1989年最先发表Nand flash结构,强调降低每比特的成本,更高的性能,并且像磁盘一样可以通过接口轻松升级.随着Nand技术

BizTalk开发系列(三十三)BizTalk之Excel终极解决方案

Excel作为优秀的客户端数据处理程序得到了广泛的应用. 由于其简单又强大的功能在很多公司或个人的数据处理中占用非常重要的位置. 而BizTalk作为微软的SOA主打产品虽然免费提供了很多Adapter支持各种协议及应用程序. 不过非常可惜没有提供对富客户端程序Excel的"原生态"支持. 所以我们只能自己查找解决办法. 应用程序对Excel的支持网上已经有很多解决方案的,一部分是使用ODBC的excel驱动将Excel作为数据源进行处理,对于规范数据表之类的Excel文档这种方法比较

BizTalk开发系列(十八) 使用信封拆分数据库消息

之前写了一篇的<BizTalk开发系列(十七) 信封架构(Envelop)> 是关于信封架构及其拆装原理的,都是理论性的内容.信封在BizTalk开发过程中最常用的应该是在读取SQL Server 数据库的时候.一次性读取多条消息,提高了SQL Adapter对SQL Server的读取性能.今天就来做一下这个实例,增强对信封消息的理解. 数据库采用的是SQL Server 2005示例数据库:AdventureWorks 通过select * from Production.Culture选

【Qt编程】基于Qt的词典开发系列&lt;七&gt;--调用网络API

前面文章中我们实现了本地的词库设计,可以完成本地的查词功能,那么这篇文章主要讲一讲如何通过调用网络的api来实现词典的网络查词功能. 词典API的选择 基本上市面上做词典软件的公司都有对应的api,比如说有道.金山等等,不过一般都需要api key,有点麻烦,于是乎,我就找了个简单好用的扇贝网API:http://www.shanbay.com/help/developer/api/ 奇怪的是,该api说要停用了,可以从我去年暑假完成该软件制作,到如今为止,还能正常使用. 扇贝词典api的使用

BizTalk开发系列(二) &quot;Hello World&quot; 程序搬运文件

我们在<QuickLearn BizTalk系列之"Hello World">里讲到了如何快速的开发第一个BizTalk 应用程序.现在我们来讲一下如何把这个程序改成用于搬运文件的程序. 我们的设想是:不管文件的类型是什么,将文件从In 文件夹搬到 Out 文件夹.我们来看看应该怎么实现这个设想. 首先我们会发现"Hello World"程序在接收位置的文件名称是" *.XML ".也就是说它只接收XML文件类型的文件.既然它支持通配

BizTalk 开发系列(四十二) 为BizTalk应用程序打包不同的环境Binding

我们在使用微软或者其他公司提供的BizTalk应用程序MSI包的时候经常会有一个目标环境的选择选项.该选项可以在不同的环境下使用不同的绑定(BizTalk应用程序配置)感觉很高级. 其实这个非常的简单,只需要两个步骤: 第一, 针对不同环境配置不同的Binding文件,具体你可以先把BizTalk应用程序配置为开发环境(比如相应的路径.数据库连接等).然后导出Binding文件.然后再发为生产环境的配置再导出成Binding文件. 第二, 点击BizTalk Application的Resour

BizTalk开发系列(三十八)微软BizTalk Server定价和许可[解读]

做BizTalk的项目一段时间了,但是对BizTalk的价格和许可还不是很了解.给客户设计解决方案时大部分产品都是直接按照企业版的功能来设计,很 少考虑到价格和许可方面的因素,以为这个不是我们的事情或者认为使用企业版是应该的,企业软件的销售就是有意思,懂产品的和卖产品的一般不是一个人.懂产 品的一般是做技术的,学这个产品的时候就是用D版的或者是企业版,不会去关心不同产品的定价.当然在跟客户讲的时候就很少考虑版本及价格因素.而卖产品就 会添油加醋说要实现这样的平台您需要购买XX.YY产品,当然为要

BizTalk 开发系列(三十九) BizTalk Server 2009技术概览

BizTalk Server 2009已经发布一段时间了,之前Beta版发布的时候也写过一篇文章<BizTalk Server 2009 Beta初体验>, 当时比较了2006 R2与2009 Beta这两个版本之间的常见功能的开发.发现表现平平,没有什么太让人兴奋的地方.随着最近一段时间BizTalk Server 2009配套产品(组件)的陆续发布.对于新一代的BizTalk开发应用平台的认可逐渐清晰起来. BizTalk新一代的开发与应用平台除了操作系统.数据库及集成开发环境之外主要包括