频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

7.9.3 配置SU、SA、jbi.xml、servicemix.xml、xbean.xml

作者: 梁爱虎 出处:电子工业出版社  2008-04-25 11:08    砖    好    评论   进入论坛
阅读提示:《SOA思想、技术与系统集成应用详解》第7章为您讲述的是基于JBI的ServiceMix服务总线,本节为您介绍的是配置SU、SA、jbi.xml、servicemix.xml、xbean.xml。

7.9.3  配置SU、SA、jbi.xml、servicemix.xml、xbean.xml

本小节的实例因为要运行BPEL,所以配置更为复杂,包括配置3个SU单元,一个SA。其中3个SU单元分别如下。

su (jms):通过xbean.xml创建JMS监听端口,接收外部服务请求消息;
su (bpel):创建房屋贷款BPEL流程管理服务,含有houseloanbroker.bpel文件,其中包括Houseloanbroker.wsdl(为BPEL的接口文件),Houseloanagency.wsdl(房屋贷款中介的WSDL),Bank.wsdl(银行业务的WSDL);
su (lwcontainer):创建基本服务Houseloanagency和Bank。

图7-12显示了ServiceMix的房屋贷款BPEL运行模块的配置。

 
图7-12  ServiceMix的房屋贷款BPEL运行模块
开发的结构如下。
Hosue-loan-bpel
|――build.xml, servicemix.xml
|—-build  (包括编译之后的Classes文件)
|――data   (运行ServiceMix后所产生的一些运行文件,运行之前可以清理掉)
|――deploy  (运行ServiceMix所需要的zip包,发布文件夹)
|――loan-broker-sa-3.1-incubating
|――install  
|――servicemix-bpe-3.1-incubating-installer.zip 运行BPEL的库
|――servicemix-jms-3.1-incubating-installer.zip 运行JMS的库
|――servicemix-lwcontainer-3.1-incubating-installer (运行lwcontainer所需要的)
|――servicemix-shared-3.1-incubating-installer (运行ServiceMix的共享库)
|――src (Java源程序和配置文件)
|――client (客户端Java源程序)
|―― components 服务器端源程序,将会被发布到服务总线
|―― bpe-su
|――bank.wsdl、creditagency、loanbroker、loanbroker.bpel
|――META-INF
|――jbi.xml
|―― jms-su 
|――xbean.xml
|――META-INF
|――jbi.xml (JBI配置文件)
|―― lw-su
|――servicemix.xm
|――lib
|――servicemix-components-3.1-incubating.zip
|――META-INF
|――jbi.xml
|――sa
|――META-INF
|――jbi.xml

本例将会创建下面的配置文件。


SA目录下面的jbi.xml,配置整个服务的SA服务集成模块;
lw-su目录配置下的servimix.xml、jbi.xml,主要用来运行Java服务;
jms-su目录下面的xbean.xml、jbi.xml,主要用来配置JMS的监听端口;
bpe-su目录下面的jbi.xml,主要用来运行BPEL服务;
根目录下面的servicemix.xml。

1.SA目录下面的jbi.xml
SA目录下面的配置文件jbi.xml负责配置运行在ServiceMix运行环境中的SA(Service Assembly)“服务集成模块”。
整个运行模块只能有一个SA,可以有多个SU。每个SU将会打包成一个单独的SU包,然后将多个SU的zip包打成一个SA包来运行,本SA将运行3个SU的运行单元,所创建的jbi.xml文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<jbi xmlns="http://java.sun.com/xml/ns/jbi" version="1.0">
<service-assembly>
<identification>
<name>loan-broker-sa</name>
<description>ServiceMix :: Samples :: Loan Broker :: SA</description>
</identification>
<service-unit>
<identification>
<name>loan-broker-bpe-su</name>
<description>ServiceMix is an open source ESB based on the Java Business
Integration framework - JSR-208</description>
</identification>
<target>
<artifacts-zip>loan-broker-bpe-su-3.1-incubating.zip</artifacts-zip>
<component-name>servicemix-bpe</component-name>
</target>
</service-unit>
<service-unit>
<identification>
<name>loan-broker-lw-su</name>
<description>ServiceMix is an open source ESB based on the Java Business
Integration framework - JSR-208</description>
</identification>
<target>
<artifacts-zip>loan-broker-lw-su-3.1-incubating.zip</artifacts-zip>
<component-name>servicemix-lwcontainer</component-name>
</target>
</service-unit>
<service-unit>
<identification>
<name>loan-broker-jms-su</name>
<description>ServiceMix is an open source ESB based on the Java Business
Integration framework - JSR-208</description>
</identification>
<target>
<artifacts-zip>loan-broker-jms-su-3.1-incubating.zip</artifacts-zip>
<component-name>servicemix-jms</component-name>
</target>
</service-unit>
</service-assembly>
</jbi>

2.lw-su目录下的servimix.xml、jbi.xml
lw-su目录下面的servimix.xml负责配置服务单元。jbi.xml负责配置JBI运行环境。
lw是light weight的缩写,表示服务将会运行在Service开发的轻量级运行环境lwcontainer中。

3.lw-su目录下面的servimix.xml
w-su目录下面的配置servimix.xml负责创建基本服务HouseLoanAgency和4个Bank服务。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:sm="http://servicemix.apache.org/config/1.0"
xmlns:lb="urn:logicblaze:soa:loanbroker"
xmlns:ca="urn:logicblaze:soa:houseloanagency">

<!-- 创建房屋贷款服务 -->
<sm:serviceunit id="jbi">
<sm:activationSpecs>

<sm:activationSpec id="houseLoanAgency"
interfaceName="ca:HouseLoanAgency">
<sm:component>
<bean class="loanbroker.HouseLoanAgency" />
</sm:component>
</sm:activationSpec>

<!-- 创建Bank服务,配置银行贷款利率和贷款首付 -->
<sm:activationSpec id="bank0">
<sm:component>
<bean class="loanbroker.Bank">
<constructor-arg value="0" />
<property name="rate" value="6.0"/>
<property name="firstPaidRatio" value="20.0"/>
</bean>
</sm:component>
</sm:activationSpec>

<sm:activationSpec id="bank1">
<sm:component>
<bean class="loanbroker.Bank">
<constructor-arg value="1" />
<property name="rate" value="6.5"/>
<property name="firstPaidRatio" value="30.0"/>
</bean>
</sm:component>
</sm:activationSpec>

<sm:activationSpec id="bank2">
<sm:component>
<bean class="loanbroker.Bank">
<constructor-arg value="2" />
<property name="rate" value="7.0"/>
<property name="firstPaidRatio" value="40.0"/>
</bean>
</sm:component>
</sm:activationSpec>

<sm:activationSpec id="bank3">
<sm:component>
<bean class="loanbroker.Bank">
<constructor-arg value="3" />
<property name="rate" value="7.5"/>
<property name="firstPaidRatio" value="50.0"/>
</bean>
</sm:component>
</sm:activationSpec>

</sm:activationSpecs>
</sm:serviceunit>
</beans>

4.lw-su目录下面的配置jbi.xml
jbi.xml服务配置基本服务的JBI运行环境。
 <?xml version="1.0" encoding="UTF-8"?>
<jbi xmlns="http://java.sun.com/xml/ns/jbi" version="1.0">
<services binding-component="false"/>
</jbi>

5.jms-su目录下面的xbean.xml、jbi.xml

jms-su目录下面的xbean.xml配置JMS的运行环境,jbi.xml负责配置JBI运行环境。
(1)jms-su目录下面的xbean.xml
jms-su目录下面的xbean.xml主要用来配置JMS的端口来监听各种服务请求。定义服务器端口“endpoint”、服务名称“lb:LoanBrokerService”等。定义defaultMep默认的消息模式,这里采用的是in-out模式。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
xmlns:lb="urn:logicblaze:soa:loanbroker">
  <jms:endpoint service="lb:LoanBrokerService"
endpoint="endpoint"
targetService="lb:LoanBrokerService"
defaultOperation="lb:getLoanQuote"
role="consumer"
connectionFactory="#jmsFactory"
destinationStyle="queue"
jmsProviderDestinationName="demo.org.servicemix.source"
defaultMep="http://www.w3.org/2004/08/wsdl/in-out" />
  <bean id="jmsFactory" class="org.apache.activemq.pool.PooledConnectionFactory">
<property name="connectionFactory">
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="tcp://localhost:61616" />
</bean>
</property>
</bean>
</beans>
2)jms-su目录下面的jbi.xml
jbi.xml配置JMS的JBI运行环境。
<?xml version="1.0" encoding="UTF-8"?>
<jbi xmlns="http://java.sun.com/xml/ns/jbi" version="1.0">
<services binding-component="false" xmlns:lb="urn:logicblaze:soa:loanbroker">
<consumes service-name="lb:LoanBrokerService"/>
</services>
</jbi>

6.bpe-su目录下面的jbi.xml

bpe-su目录下面的jbi.xml负责配置BPEL的运行环境。BPEL的houseloanbroker.bpel、Houseloanbroker.wsdl、Houseloanagency.wsdl、Bank.wsdl已经在第6章做了详细的介绍。下面的jbi.xml配置JBI的运行环境。

<?xml version="1.0" encoding="UTF-8"?>
<jbi xmlns="http://java.sun.com/xml/ns/jbi" version="1.0">
<services binding-component="false"/>
</jbi>
7.根目录下面的servicemix.xml
根目录下面的servicemix.xml用来运行整个房屋贷款服务SA,事实上是一个通用的servicemix.xml。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:sm="http://servicemix.apache.org/config/1.0">

<bean id="jndi" class="org.apache.xbean.spring.jndi.SpringInitialContextFactory"
factory-method="makeInitialContext" singleton="true" />

<!-- JMX 服务器-->
<sm:jmxServer id="jmxServer" locateExistingServerIfPossible="true" />

<import resource="classpath:activemq.xml" />

<!-- JBI 容器 -->
<sm:container id="jbi"
rootDir="./data/smx"
installationDirPath="./install"
deploymentDirPath="./deploy"
flowName="seda">
<sm:activationSpecs>
</sm:activationSpecs>
</sm:container>
</beans>

【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节
专题
北漂技术人90天求职纪实
2008年春季英特尔信息技术峰会(IDF)
技术人求职简历完备手册
VMware技术应用
开源虚拟化技术Xen
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
首届中国IT工程师生态调查十大发现
首届中国IT工程师生态调查十..
视频访谈:网管员如何踏上高薪之路
视频访谈:网管员如何踏上高薪..
2008年上半年全国软考冲刺辅导
2008年上半年全国软考冲刺辅导
· 2008年上半年全国软考..
· 企业数据恢复指南
· 微软出价446亿美元收购..
· Linux——从菜鸟到高手
· 交换机故障解决指南
· OSPF路由协议专栏
· 勇闯IT培训黑色围城
· 见证中国网络安全二十年
· 技术人求职简历完备手册
· 华为员工自杀频频拷问..
· 思科全球CEO钱伯斯第七..
· 北漂技术人90天求职纪实
· 2007年互联网大会
· 龙芯要做中国的“奔腾”
· IPv6协议--拓展网络无..
· 国际文档格式标准开战
ARP攻击防范与解决方案
ARP攻击防范与解决方案
iSCSI应用与发展
iSCSI应用与发展
SQL Server 2008/2005全解
SQL Server 2008/2005全解
· SQL Server 2008/2005..
· SOA 面向服务架构
· SQL Server 2008/2005..
· iSCSI应用与发展
· RAID——磁盘阵列基础
· 中间件应用技术专题
· SQL Server入门到精通
· 国际文档格式标准开战
· 路由器设置与口令恢复
· Linux防火墙
· 打造安全服务器
· SOA 面向服务架构
· PHP开发应用手册
· ADSL应用面面俱到
· 入侵防护系统(IPS)初探
· 企业数据恢复指南
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
iSCSI应用与发展
iSCSI应用与发展
· iSCSI应用与发展
· 中间件应用技术专题
· SQL Server入门到精通
· SQL Server 2008/2005..
· SOA 面向服务架构
· iSCSI应用与发展
· RAID——磁盘阵列基础
· 企业数据恢复指南
· 路由器设置与口令恢复
· SOA 面向服务架构
· 了解统一威胁管理(UTM)..
· ADSL应用面面俱到
· ADSL应用面面俱到
· PHP开发应用手册
· 中间件应用技术专题
· 交换机故障解决指南