BizTalk开发系列(一) "Hello World"
学习开发语言的时候很喜欢输出“Hello World”作为第一个程序。今天我们也在BizTalk 上创建一个简单的 "Hello World" 程序。
BizTalk的时候有很多文章都是教你如何使用Visual Studio开发BizTalk 的第一个应用程序的。今天我们来换一种思路开发基于BizTalk的"Hello World"应用程序。也就是直接通过BizTalk 管理控制台创建应用程序。
BizTalk Server 管理控制台
安装和配置BizTalk之后就可以通过BizTalk控制台管理BizTalk Server 及应用程序。其中有几个概念先了解一下:
- BizTalk Group: BizTalk Server 的逻辑概念,可以将多台BizTalk Server加入一个Group进行管理。
- Applications: 开发BizTalk应用程序之后它在此节点下。
- Platform Setting :BizTalk运行环境的配置比如BizTalk实例(BizTalk运行时的进程),BizTalk适配器等的配置。
![]()
看了这些概念可能还是云里雾里的。不过没关系BizTalk不是那么好理解,特别是刚开始学习的时候。因为它的开发理念和程序语言有点不太一样。它是面向 消息的开发理念。之前跟一些学习BizTalk新人聊的时候。常常会听到“我学习BizTalk一个星期了,还不知道它干嘛用。”。 而后来跟一位BizTalk MVP聊的时候我提到了这一点。他也很搞笑的说“我当时搞了三个月了还不知道是干嘛用的”。所以不要急于求成。
开始开发
1. 首先打开BizTalk 服务器管理控制台,在Applications节点右击选择新建->应用程序.在弹出的对话框的名字栏里填上应用程序名称:Hello Word
2. OK,应和程序Hello World已经建了,只不过它什么都干了了。我们会在Hello World节点下看到很多节点。每个应和程序都会有这么多的节点。这些节点都跟BizTalk的架构的关的,暂时先不用了解那么细致。
![]()
3. BizTalk像是一个盒子用于处理消息。因为就需要有进入的消息和出来的消息。那样我们首先创建一个接收的端口用于接收消息。
在Receive Port 节点右键->新建->单一方向端口,在常规选项卡里写上端口名称:ReceiveFiles。
![]()
4. 端口是BizTalk的逻辑概念,真正接收的地方是在 "Receive Location"节点下配置的。在Receive Locations节点下右键->新建->单一方向接收地址.在"选择接收端口"的对话框中选择刚才新建的端 口"ReceiveFiles"。
5. 在接收位置的配置页,填上接收位置的名称。在类型中选择File, 接收管道选择PassThruReceive。
6. 点击类型的Config按钮,弹出File的配置对话框配置接收位置,以及相应的文件名称。
![]()
7. 创建好了接收端口,接下来我们来创建发送端口。发送端口直接指定发送的物理位置和发送方式。多个发送端口使用Send Group进行管理。
右击Send Ports 节点->新建->Static One-Way Send Port
![]()
8. 在发送端口配置菜单中参照下图分别配置:发送端口名称,类型,相应类型的发送位置。
![]()
9. OK,现在端口已经全部创建完成了。现在是万事俱备只欠东风。现在你会不会有这样一个问题:怎么让接收到的消息由 发送端口发送出去?也许你会认为它们同在一个应用程序下面直接就可以实现了。但同一个应用程序下面可以创建许许多多的发送的接收端口那BizTalk怎么 去判断消息从哪接收又发送到哪呢?。
呵呵,带着问题,我们来看看可能怎么将接收端口和发送端口关联起来。再次打开发送端口配置对话框,我们会注意到左边的菜单项中有一个叫“Filter”(过滤)。我们就用这个来实现发送端口与接收端口的关联。在条件表达式中设置: BTS.ReceivePortName == ReceiveFiles
![]()
10. 启动BizTalk 应用程序验证程序
右击Hello World应用程序选择Start。打开刚才配置的接收文件夹。将测试XML文件 QuickLearn.CN.Msg.XML拷贝到接收文件夹In中。
![]()
在Out 文件夹中查看输出
![]()
我们的第一个BizTalk 程序已经成功运行了,感觉怎么样。是不是很神奇。虽然很多理论性的东西没有讲到。但是对于初学者来讲往往兴趣更重要。另外这个程序还可以改为用于搬运文件,或者不需要走流程的业务中。它的专业术语叫“直通流程”。我是在学习BizTalk三个月之后才知道这个东西的。记住这个Sample,在以后的BizTalk学习过程中慢慢理解这个Sample以及BizTalk的架构思想。
BizTalk开发系列(一) "Hello World"的更多相关文章
- BizTalk 开发系列(四十一) BizTalk 2010 BAM 安装手记
使用64位系统可以支持更大的内存,现在服务器基本上都使用64位系统.微软从Windows Server 2008 R2开始服务器版的操作系统也只支持64位了,不过对于像BizTalk这种“繁杂的东西” ...
- BizTalk开发系列(三十三)BizTalk之Excel终极解决方案
Excel作为优秀的客户端数据处理程序得到了广泛的应用. 由于其简单又强大的功能在很多公司或个人的数据处理中占用非常重要的位置. 而BizTalk作为微软的SOA主打产品虽然免费提供了很多Adapte ...
- BizTalk开发系列(二十八) MSMQ 适配器
MSMQ(MicroSoft Message Queue,微软消息队列)是在多个不同的应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同一台机器上,也可以分布于相连的网络空间 中的任一 ...
- BizTalk开发系列(二十二) 开发自定义Map Functoid
尽管 BizTalk Server 提供许多Functoid以支持一系列不同的操作,但仍可能会遇到需要其他方法的情况.<BizTalk开发系列 Map扩展开发>介绍了通过使用自定义 XSL ...
- BizTalk开发系列(十八) 使用信封拆分数据库消息
之前写了一篇的<BizTalk开发系列(十七) 信封架构(Envelop)> 是关于信封架构及其拆装原理的,都是理论性的内容.信封在BizTalk开发过程中最常用的应该是在读取SQL Se ...
- BizTalk开发系列(二十五) SQL Adapter
SQL Server 是.NET开发的首选数据库.当然开发BizTalk应用程序很多也离不了SQL Server.针对SQL Server的数据操作BizTalk 提供了SQL Adapter作为与数 ...
- BizTalk开发系列(七) Hello World2
之前根据BizTalk的订阅原理,使用BizTalk管理控制台创建了第一个应用程序 Hello World.但是由于控制台的开发功能有限,绝大多数的BizTalk程序都是在集成开发环境Visual S ...
- BizTalk开发系列(二) "Hello World" 程序搬运文件
我们在<QuickLearn BizTalk系列之"Hello World">里讲到了如何快速的开发第一个BizTalk 应用程序.现在我们来讲一下如何把这个程序改成用 ...
- BizTalk 开发系列(四十二) 为BizTalk应用程序打包不同的环境Binding
我们在使用微软或者其他公司提供的BizTalk应用程序MSI包的时候经常会有一个目标环境的选择选项.该选项可以在不同的环境下使用不同的绑定(BizTalk应用程序配置)感觉很高级. 其实这个非常的简单 ...
- BizTalk 开发系列(四十) BizTalk WCF-SQL Adapter读取SQL Service Broker消息
SQL Service Broker 是在SQL Server 2005中新增的功能.Service Broker 为 SQL Server 提供队列和可靠的消息传递,可以可用来建立以异步消息为基础的 ...
随机推荐
- Linux解压文件
zip: 解压:unzip filename 解压到tmp文件夹:unzip filename.zip -d /tmp 查看压缩文件而不解压:unzip filename.zip -v tar.gz: ...
- flex弹性布局
Flex 布局教程:语法篇 原文地址:http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html?utm_source=tuicool 作者: ...
- Codeforces Round #355 (Div. 2)-A
A. Vanya and Fence 题目连接:http://codeforces.com/contest/677/problem/A Vanya and his friends are walkin ...
- BZOJ4435 : [Cerc2015]Juice Junctions
最大流=最小割,而因为本题点的度数不超过3,所以最小割不超过3,EK算法的复杂度为$O(n+m)$. 通过分治求出最小割树,设$f[i][j][k]$表示最小割为$i$时,$j$点在第$k$次分治过程 ...
- df卡住问题解决
windows的share文件挂载到linux/mnt/share下,当windows重启,会导致df卡住. 运行 1 umount -l /mnt/share 2 killall ...
- hadoop2.2.0 + hbase 0.94 + hive 0.12 配置记录
一开始用hadoop2.2.0 + hbase 0.96 + hive 0.12 ,基本全部都配好了.只有在hive中查询hbase的表出错.以直报如下错误: java.io.IOException: ...
- float使内联支持宽高
float使内联元素支持了宽高,可以设置宽高属性:float消除内联元素的空格:
- 20145304 Java第九周学习报告
20145304<Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 JDBC全名Java DataBase Connectivity,是Java联机数据库的标准规范.定义了 ...
- ThinkPHP3.2.2 Widget扩展以及widget demo实例
Widget扩展一般用于页面组件的扩展. 先说明Widget被调用的方法,你只需要在你的模板文件中使用这样的语法:{:W("Demo/demo_widget_method",arr ...
- HDU 5877 dfs+ 线段树(或+树状树组)
1.HDU 5877 Weak Pair 2.总结:有多种做法,这里写了dfs+线段树(或+树状树组),还可用主席树或平衡树,但还不会这两个 3.思路:利用dfs遍历子节点,同时对于每个子节点au, ...