基于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支持
概念性的东西我不作介绍了,只是将有关开发的东西和大家做些交流:
开发环境的搭建你必须要安装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表达式,比如侦听文件服务器上的文件变动或文件内容变动等。
分享到:
相关推荐
### jbossesb开发手册知识点概述 #### 一、引言 JBoss ESB(Enterprise Service Bus)是一款开源的企业服务总线解决方案,旨在为应用程序之间的通信提供一个灵活且可扩展的基础架构。本手册旨在帮助初学者理解JBoss...
JBoss ESB 4.9需要一个特定的服务器环境,你可以从官方网站下载D:\jboss-5.1.0.GA/jbossesb-server,这是一个包含大量示例的独立运行版本。这些示例可以通过Ant脚本进行部署和测试: - 使用`ant deploy`命令来部署...
《JBoss ESB 开发指南》是一本专为开发者设计的详实教程,旨在提供关于最新版本JBoss ESB(企业服务总线)的全面编程和开发指导。JBoss ESB是一款开源的企业服务总线解决方案,它允许在分布式环境中集成各种服务和...
JBoss ESB(Enterprise Service Bus)是Red Hat公司开发的一款开源服务总线,它提供了一种中间件解决方案,用于构建松散耦合、灵活且可扩展的企业级应用。作为新手入门,理解JBoss ESB的基本概念、功能以及如何操作...
JBossESB学习笔记 收集了网上1-16系列教程,笔记详细介绍了JBossESB各个组件的特性及配置文件的说明
根据给定文件的信息,我们可以提炼出关于JBoss ESB 4.6程序开发的重要知识点,主要包括SOA平台配置、协议转换以及基于JMS的SOA实现机制等方面。 ### JBoss ESB 4.6 程序开发 #### 1. SOA 平台配置 在构建基于...
一、Jboss ESB的简介 1、 什么是ESB。 ESB的全称是Enterprise Service Bus,即企业服务总线。ESB是过去消息中间件的发展,ESB采用了“总线”这样一种模式来管理和简化应用之间的集成拓扑结构,以广为接受的开放...
jboss esb 实例及讲解,我收集的资料整理做成书
"JBossESB学习笔记"中可能涵盖了以下主题: - JBoss ESB的安装与配置 - 创建、部署和测试ESB服务 - 使用ESB进行消息路由和转换的实践 - AOP在JBoss ESB中的应用示例 - ESB的监控与故障排查 - 高级特性,如工作流...
### JBoss ESB 开发手册概览 #### JBoss ESB 的主要特性 JBoss ESB,即Enterprise Service Bus,是Red Hat JBoss家族中的一员,专注于企业级服务总线解决方案,旨在简化不同应用程序间的集成与通信。其核心功能...
JbossESB的开发实例展示了其在实际项目中的应用。例如,在一个复杂的供应链管理系统中,JbossESB被用来整合不同供应商、制造商和零售商之间的业务流程,实现订单、库存、物流等信息的实时同步,大大提高了供应链的...
2. 点击"Add…"按钮,选择"JBoss Community",然后在下拉列表中选择具体的JBoss ESB版本,例如"jbossesb-server-4.7"。 3. 接下来,指定JBoss ESB的安装路径,如果你已经下载并解压了JBoss ESB的安装包,直接指向...
JBossTools实践系列:JBossESB服务开发入门
4. **Spring整合**:《JBoss_ESB学习笔记13——第十个ESB应用Spring_AOP.doc》和《JBoss_ESB学习笔记12——第十个ESB应用Spring_helloworld.doc》涉及到Spring框架与ESB的结合,Spring AOP(面向切面编程)在ESB中的...
- jbossesb-server-4.7:JBoss ESB的具体版本,为实现企业服务总线功能提供了必要的运行环境。 - JBossTools-Update-3.1.1.v201006011046R-H111-GA:Eclipse插件,增强Eclipse的功能,特别是针对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...