最近一段时间在使用JBoss ESB,如果将其部署在JBoss上,先下载jbossesb-4.4.GA.zip文件,将install/deployment.properties-example文件复制更名成deployment.properties,再将其中的属性org.jboss.esb.server.home指向JBoss服务器的路径,如:org.jboss.esb.server.home=D:/jboss-4.2.3.GA,最后在install目录下运行ANT即可,还是很简单的。如果要将其部署在Tomcat上就要破费一番周折。
系统环境:
Java:v1.5.0.12
Tomcat:v5.5.27
JBoss ESB:v4.4GA (jbossesb-4.4.GA.zip,不必下载server版本)
1. 解压jbossesb-4.4.GA.zip文件
2. 将install/deployment.properties-example文件复制更名成deployment.properties
3. 将其中的属性org.jboss.esb.tomcat.home指向Tomcat服务器的路径
例:org.jboss.esb.tomcat.home=D:/apache-tomcat-5.5.27
注意:请不要使用\,要用/表示路径
4. 此时理论上可以执行ANT部署,但是执行ANT时发生编译错误,所以需要修改install/build.xml
原文
<!-- Tomcat war deployment -->
<path id="classpath">
<fileset dir="${org.jboss.esb.dist.lib}" includes="**/*jar"/>
<fileset dir="${org.jboss.esb.tomcat.lib}" includes="**/*jar"/>
</path>
<target name="tomcat.compile">
<mkdir dir="build"/>
<javac srcdir="./tomcat/src"
debug="true"
destdir="tomcat/war/WEB-INF/classes/">
<classpath refid="classpath"/>
</javac>
</target>
修改后
<!-- Tomcat war deployment -->
<path id="classpath">
<fileset dir="${org.jboss.esb.dist.lib}" includes="**/*jar"/>
<fileset dir="${org.jboss.esb.tomcat.lib}" includes="**/*jar"/>
</path>
<target name="tomcat.compile">
<mkdir dir="build"/>
<javac srcdir="./tomcat/src"
debug="true"
destdir="tomcat/war/WEB-INF/classes/">
<fileset dir="${org.jboss.esb.dist.lib}" includes="**/*jar"/>
<fileset dir="${org.jboss.esb.tomcat.lib}" includes="**/*jar"/>
</javac>
</target>
我没有看出原文有什么语法问题,但是就是编译报错,如果有人知道原因,请指点。
修改\install\tomcat\src\org\jboss\soa\esb\servlet\ConfigListener.java文件,这是JBoss的一个Bug。
在方法contextInitialized的第一句之前加上
System.setProperty("javax.xml.registry.ConnectionFactoryClass", "org.apache.ws.scout.registry.ConnectionFactoryImpl");
修改后如下
public void contextInitialized(final ServletContextEvent servletContextEvent)
{
System.setProperty("javax.xml.registry.ConnectionFactoryClass", "org.apache.ws.scout.registry.ConnectionFactoryImpl");
final ServletContext servletContext = servletContextEvent.getServletContext() ;
servletContext.log("Initialising ESB Configuration Controller") ;
final String catalinaHome = System.getProperty("catalina.home") ;
如果不加这句,tomcat启动会报错。
5. 在install目录下执行命令行 ant tomcat
注意:在此步骤之前要先设置好ANT_HOME以及将ANT_HOME/bin添加到PATH中
6. 发布完成,检查tomcat服务器webapps目录下,出现jbossesb的目录,说明部署成功
7. 创建一个数据库实例,oracle或者是MySql都可以,其他的也行。
8. 找到/webapps/jbossesb/WEB-INF/lib/juddi-2.0rc5.jar,解压后找到/juddi-sql/{database}/create_database.sql,将文件中的所有${prefix}删除,然后在数据库中执行,创建所有表。然后在原先jboss esb的下载包中找到 lib\jbossesb.sar\juddi-sql\{database}\import.sql,将文件中的所有${prefix}删除,然后在数据库中执行
9. 修改/webapps/jbossesb/META-INF/context.xml文件中的数据库连接参数,只修改名为jdbc/juddiDB的Resource,另一个jdbc/JBossesbDS直接注释掉
修改后文件
<Resource name="jdbc/juddiDB" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000" username="esb"
password="esb" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.101.148:1521:orcl" />
10. 最后一步,添加jar包,但是有很多要添加,在jboss esb的下载包中都能找到,列表如下
commons-codec-1.3.jar
commons-httpclient-3.1.jar
commons-io-1.3.jar
commons-lang-2.1.jar
commons-logging-1.1.jar
commons-net-2.0.0-652071.jar
commons-ssl-0.3.4.jar
javassist-3.6.0.GA.jar
jboss-aop-jdk50-1.5.6.GA.jar
jboss-cache-1.2.4.SP2.jar
jbossall-client-4.2.2.GA.jar
jbossesb-config-model-1.0.1.jar
jbossesb-rosetta.jar
jbossts-common.jar
jgroups-all.jar
jsr173_1.0_ri.jar
juddi-2.0rc5.jar
juddi-client-2.0rc5.jar
log4j-1.2.14.jar
quartz-1.5.2.jar
scout-1.0rc1.jar
stax-api-1.0.1.jar
trove.jar
wstx-asl-3.2.0.jar
xbean-2.2.0.jar
xercesImpl-2.8.0.jar
xmlpublic-2.2.0.jar
xstream-1.2.2.jar
注意:将数据库的jdbc包放到tomcat的common/lib下
11. 启动Tomcat
分享到:
相关推荐
OpenSSO是一个强大的身份管理解决方案,指南中提供了在Tomcat中安装和配置OpenSSO的方法,并进一步指导如何将OpenSSO配置为与JBoss Enterprise SOA Platform协同工作。 在集群和故障转移支持方面,指南详细说明了...
ESB实例通常需要部署在特定的服务器环境中,如Tomcat或JBoss。源码中可能包含部署配置文件,揭示了如何在实际环境中部署和管理ESB服务。 通过深入学习和分析"ESB DEMO"提供的源码,开发者可以更好地理解和掌握ESB...
首先,"standalone"意味着这个版本是自包含的,不需要额外的服务器环境如JBOSS或Tomcat,可以单独运行。Mule ESB 3.2.0版本是一个稳定且成熟的产品,为开发者提供了丰富的API和工具,简化了集成复杂性的管理。 在...
4. **服务器配置**:可能包含部署到应用服务器(如Jboss或Tomcat)的相关配置文件和指导。 通过这个安装包,开发者可以快速搭建jbpm开发环境,进行流程设计、实现和测试,进一步提升企业业务流程的自动化水平。 ...
- 类似于Tomcat的步骤,但需要遵循JBoss特定的部署流程。 - 在WebLogic下运行: - WebLogic有其独特的部署方式,需要按照官方文档进行操作。 3. **管理服务器** - 包括启动、停止、重启服务器等基本操作。 - ...
**2.2 Tomcat部署** 对于希望将jBPM部署在Tomcat服务器上的用户,需要按照官方提供的指导进行操作,例如添加jBPM相关的jar文件到Tomcat的lib目录等。 **2.3 JBoss部署** 对于希望将jBPM部署在JBoss服务器上的用户...
Apache CXF还支持与多种Java EE应用服务器的集成,例如WebSphere、JBoss、WebLogic和Tomcat等,这意味着开发的服务可以轻松部署到不同的应用服务器环境。 服务集成总线(ESB)概念在文档中被提及,它是一种实现服务...
8. Web服务器和中间件:文档提到了多种Web服务器和应用服务器,例如Apache、IIS、WebLogic、JBoss、Tomcat、Nginx等。这些服务器软件负责处理客户端请求、运行Web应用,并提供安全、负载均衡等服务。 9. 编程语言和...
- 轻量级:可以将服务部署到 Tomcat 或任何支持 Spring 的容器中。 - JBI 整合:可以在 JBI 容器(如 ServiceMix, OpenESB, Petals)中部署服务引擎。 - J2EE 集成:可以将服务部署到 J2EE 应用服务器(如 ...
8. **编译和部署**:将流程项目打包成JAR或WAR,部署到支持JBPM的服务器上,如Tomcat或JBoss。 9. **测试与调试**:利用Eclipse的调试工具,可以启动流程实例,查看任务状态,设置断点进行调试。 最后,**学习资源...
2. **服务部署**:将开发好的服务部署到应用服务器中,例如Apache Tomcat或JBoss等。服务部署后,会生成WSDL文件,该文件包含了服务的所有必要信息,如接口、消息格式和通信地址。 3. **服务调用**:客户端可以...
1. **跨平台支持**:osESB可以在多种J2EE应用服务器上运行,例如Tomcat、JBoss、WebLogic等。 2. **服务编排**:允许开发者组合多个服务,创建新的业务流程。 3. **API管理**:提供API生命周期管理,包括创建、发布...
部署方面,CXF非常灵活,可以轻松部署到轻量级容器(如Tomcat)或JBI容器(如ServiceMix),也能集成到J2EE应用服务器(如Geronimo、JOnAS、JBoss、WebLogic和WebSphere)。此外,CXF的Java客户端和服务端具有很好的...
CXF框架的部署十分灵活,既可在轻量级容器如Tomcat或Spring支持的容器中运行,也可整合到JBI容器如ServiceMix、OpenESB或Petals中,甚至在J2EE应用服务器上部署,如Geronimo、JOnAS、JBoss、WebLogic及WebSphere。...
- JBoss - JOnAS - JRun 4 Updater - Oracle Application Server - Orion - Pramati - Rex IP - SUN Java System Application Server - WebLogic - WebSphere 这种广泛的兼容性使得Liferay能够在不同的环境中部署和...
- 应用服务器:如Tomcat、JBoss等,作为应用部署的基础,提供集成环境。 - 消息队列:如RabbitMQ、Kafka,用于异步处理和解耦通信。 2.5 集成总体设计 - 整体规划:确定集成范围、目标、技术选型等,确保方案的可行...
3. **服务部署**:将服务部署到应用服务器(如Tomcat、JBoss或WebLogic)。 4. **服务注册**:通过UDDI或类似机制,使服务可以在企业内部或外部被发现。 5. **服务消费**:使用Java客户端或者任何支持Web服务标准的...
- **轻量级部署**:可以部署到Tomcat或任何支持Spring的容器中。 - **JBI整合**:可以部署到JBI容器中,如ServiceMix、OpenESB或Petals。 - **J2EE集成**:可以部署到J2EE应用服务器,如Geronimo、JOnAS、JBoss、...
- **Tomcat/JBOSS/Jetty/GlassFish**:广泛使用的应用服务器,适合不同规模的应用。 - **P2:高级应用服务器** - **SOA服务器**:如JBoss EAP,提供更丰富的服务导向架构支持。 - **Web应用服务器**:如Apache ...