`
kongshanxuelin
  • 浏览: 931339 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

JBoss ESB开发实践及笔记

阅读更多

基于JBoss的ESB开发网上中文资料很少,这几天因为工作的需要,研究了一下,希望用得着的朋友一起来讨论下!

 

必读资料:《JBoss SOA P 4.3.GA.ESB.Programmers_Guide.pdf》

如果要使用规则引擎,你还需要参考:《JBoss SOA P 4.3.GA.Rules_Reference_Guide.pdf》

 

分享的条目:

vSOA以及ESB相关概念
vJBoss ESB开发环境的搭建
vJBoss ESB Project以及结构说明
vESB服务端开发
vESB客户端调用
v高级主题 — Web Services支持
v高级主题 — Drools规则引擎*


概念性的东西我不作介绍了,只是将有关开发的东西和大家做些交流:

开发环境的搭建你必须要安装JDK 1.6+,Eclipse JEE 3.5+,JBoss SOA Server或JBoss ESB Server,Ant,JBoss Tools的Eclipse插件,要注意的是下载JBoss的有些东西需要在Redhat网站注册个账号才行哦!

ESB开发中涉及到的主要问题,客户端调用方式,你可以利用JMS或ServiceInvoker中的任何一种,其中ServiceInvoker的客户端类似调用代码如下:
System.setProperty("javax.xml.registry.ConnectionFactoryClass","org.apache.ws.scout.registry.ConnectionFactoryImpl");
String[] args = new String[]{"FirstServiceESB", "SimpleListener", "我是中文!hello world esb invoked"};
Message esbMessage = MessageFactory.getInstance().getMessage();	
esbMessage.getBody().add(args[2]);	    	
new ServiceInvoker(args[0], args[1]).deliverAsync(esbMessage);
在ESB服务的编写中可能会遇到的主要问题:

消息过滤,在jboss-esb.xml中类似的配置代码如下:
<service 
        	category="FirstServiceESB" 
        	name="MessageFilterListener" 
        	description="Filter a Message Based on Content">
            <listeners>
                <jms-listener name="gw-channel"
                    busidref="quickstartGwChannel"
                    is-gateway="true"
                />
                <jms-listener name="esb-channel"
                              busidref="quickstartEsbChannel"
                />
            </listeners>
            <actions mep="OneWay">
                <action class="org.jboss.soa.esb.actions.MessageFilter" name="MessageFilter">
                    <property name="ruleSet" value="FilterRules.drl"/>
                    <property name="ruleReload" value="true"/>
                    <property name="destinations">
                        <route-to destination-name="DemoDestination" service-category="Test" service-name="NextService"/>
                    </property> 
                    <property name="object-paths">
                    	<object-path esb="body.'org.jboss.soa.esb.message.defaultEntry'" />
                    </property>
                </action>
            </actions>
        </service>
 路由,在Action中可定义静态路由和动态路由(基于内容的规则引擎实现),其中静态路由的可能的配置代码如下:
<action name="srouteAction" class="org.jboss.soa.esb.actions.StaticRouter">
       <property name="destinations">
       	  <route-to service-category="FirstServiceESB" service-name="TwoSimpleListener"/>
       </property>
</action>
 你可能还需要处理通知,利用通知引擎来做些事情,比如当服务处理异常时,用邮件通知我,你可能的配置代码如下:
<property name="notification-details">
      <NotificationList type="err">
       <target class="NotifyEmail" from="allan119119@sina.com" sendTo="faqee@126.com" subject="message test" message="can resv?" >
          <attachment>c:\crm.log</attachment>
       </target>
      </NotificationList>
      <NotificationList type="ok">
       <target class="NotifyConsole"/>
      </NotificationList>
</property>
 你可能还需要处理些被动的侦听服务,那么你可以使用Schedule,支持Cron表达式,比如侦听文件服务器上的文件变动或文件内容变动等。
 
1
0
分享到:
评论

相关推荐

    jbossesb开发手册

    ### jbossesb开发手册知识点概述 #### 一、引言 JBoss ESB(Enterprise Service Bus)是一款开源的企业服务总线解决方案,旨在为应用程序之间的通信提供一个灵活且可扩展的基础架构。本手册旨在帮助初学者理解JBoss...

    JbossESB开发环境配置.docx

    JBoss ESB 4.9需要一个特定的服务器环境,你可以从官方网站下载D:\jboss-5.1.0.GA/jbossesb-server,这是一个包含大量示例的独立运行版本。这些示例可以通过Ant脚本进行部署和测试: - 使用`ant deploy`命令来部署...

    JBoss ESB 开发指南

    《JBoss ESB 开发指南》是一本专为开发者设计的详实教程,旨在提供关于最新版本JBoss ESB(企业服务总线)的全面编程和开发指导。JBoss ESB是一款开源的企业服务总线解决方案,它允许在分布式环境中集成各种服务和...

    JBoss ESB新手指南

    JBoss ESB(Enterprise Service Bus)是Red Hat公司开发的一款开源服务总线,它提供了一种中间件解决方案,用于构建松散耦合、灵活且可扩展的企业级应用。作为新手入门,理解JBoss ESB的基本概念、功能以及如何操作...

    JBossESB学习笔记(1-16全)

    JBossESB学习笔记 收集了网上1-16系列教程,笔记详细介绍了JBossESB各个组件的特性及配置文件的说明

    JbossESB4.6 程序开发

    根据给定文件的信息,我们可以提炼出关于JBoss ESB 4.6程序开发的重要知识点,主要包括SOA平台配置、协议转换以及基于JMS的SOA实现机制等方面。 ### JBoss ESB 4.6 程序开发 #### 1. SOA 平台配置 在构建基于...

    Jboss ESB简介及开发实例

    一、Jboss ESB的简介 1、 什么是ESB。 ESB的全称是Enterprise Service Bus,即企业服务总线。ESB是过去消息中间件的发展,ESB采用了“总线”这样一种模式来管理和简化应用之间的集成拓扑结构,以广为接受的开放...

    jboss esb 实例

    jboss esb 实例及讲解,我收集的资料整理做成书

    JBossESB学习笔记.rar_Jboss_ESB_esb和aop

    "JBossESB学习笔记"中可能涵盖了以下主题: - JBoss ESB的安装与配置 - 创建、部署和测试ESB服务 - 使用ESB进行消息路由和转换的实践 - AOP在JBoss ESB中的应用示例 - ESB的监控与故障排查 - 高级特性,如工作流...

    JBOSS_ESB_开发手册

    ### JBoss ESB 开发手册概览 #### JBoss ESB 的主要特性 JBoss ESB,即Enterprise Service Bus,是Red Hat JBoss家族中的一员,专注于企业级服务总线解决方案,旨在简化不同应用程序间的集成与通信。其核心功能...

    Jboss_ESB简介及开发实例

    JbossESB的开发实例展示了其在实际项目中的应用。例如,在一个复杂的供应链管理系统中,JbossESB被用来整合不同供应商、制造商和零售商之间的业务流程,实现订单、库存、物流等信息的实时同步,大大提高了供应链的...

    JBoss ESB学习笔记1-搭建ESB开发环境.docx

    2. 点击"Add…"按钮,选择"JBoss Community",然后在下拉列表中选择具体的JBoss ESB版本,例如"jbossesb-server-4.7"。 3. 接下来,指定JBoss ESB的安装路径,如果你已经下载并解压了JBoss ESB的安装包,直接指向...

    JBossTools实践系列:JBossESB服务开发入门

    JBossTools实践系列:JBossESB服务开发入门

    JBOSS_Esb学习资料

    4. **Spring整合**:《JBoss_ESB学习笔记13——第十个ESB应用Spring_AOP.doc》和《JBoss_ESB学习笔记12——第十个ESB应用Spring_helloworld.doc》涉及到Spring框架与ESB的结合,Spring AOP(面向切面编程)在ESB中的...

    JBoss ESB 学习笔记

    - jbossesb-server-4.7:JBoss ESB的具体版本,为实现企业服务总线功能提供了必要的运行环境。 - JBossTools-Update-3.1.1.v201006011046R-H111-GA:Eclipse插件,增强Eclipse的功能,特别是针对JBoss ESB的开发...

    JBOSS ESB程序员指南

    3.8. JBossESB和它与SOA的关系 11 4. 第二章 企业服务总线 13 4.1. 概述 13 4.2. 构建的必要条件 15 4.3. 注册和存储 16 4.4. 创建服务 16 4.5. 服务的版本化 16 4.6. 集成遗留系统 17 5. 第三章 什么时候使用JBoss...

Global site tag (gtag.js) - Google Analytics