`
brucezhu
  • 浏览: 5763 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

JBoss ESB Tomcat 部署

    博客分类:
  • Web
阅读更多

最近一段时间在使用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

 

分享到:
评论
2 楼 lihuaxajh 2009-07-30  
对,我按照楼主修改ANT文件后也报一样的错误,javac doesn't support the nested "fileset" element
另外,楼主即使在tomcat上部署成功,怎么向tomcat上部署ES的项目呢?
1 楼 ossd_小羊 2009-02-18  
楼主我按照你说的操作报如下错误:BUILD FAILED
:\jbossesb-4.4.GA\install\build.xml:212: javac doesn't support the  nested "fileset" element.

相关推荐

    jboss administration guide

    OpenSSO是一个强大的身份管理解决方案,指南中提供了在Tomcat中安装和配置OpenSSO的方法,并进一步指导如何将OpenSSO配置为与JBoss Enterprise SOA Platform协同工作。 在集群和故障转移支持方面,指南详细说明了...

    ESB DEMO

    ESB实例通常需要部署在特定的服务器环境中,如Tomcat或JBoss。源码中可能包含部署配置文件,揭示了如何在实际环境中部署和管理ESB服务。 通过深入学习和分析"ESB DEMO"提供的源码,开发者可以更好地理解和掌握ESB...

    mule-standalone-3.2.0.zip

    首先,"standalone"意味着这个版本是自包含的,不需要额外的服务器环境如JBOSS或Tomcat,可以单独运行。Mule ESB 3.2.0版本是一个稳定且成熟的产品,为开发者提供了丰富的API和工具,简化了集成复杂性的管理。 在...

    jbpm-5.0.0-installer.zip_jbpm_jbpm 5.0_jbpm installer

    4. **服务器配置**:可能包含部署到应用服务器(如Jboss或Tomcat)的相关配置文件和指导。 通过这个安装包,开发者可以快速搭建jbpm开发环境,进行流程设计、实现和测试,进一步提升企业业务流程的自动化水平。 ...

    Mule MMC监控管理平台

    - 类似于Tomcat的步骤,但需要遵循JBoss特定的部署流程。 - 在WebLogic下运行: - WebLogic有其独特的部署方式,需要按照官方文档进行操作。 3. **管理服务器** - 包括启动、停止、重启服务器等基本操作。 - ...

    jBPM 帮助文档,帮助文档

    **2.2 Tomcat部署** 对于希望将jBPM部署在Tomcat服务器上的用户,需要按照官方提供的指导进行操作,例如添加jBPM相关的jar文件到Tomcat的lib目录等。 **2.3 JBoss部署** 对于希望将jBPM部署在JBoss服务器上的用户...

    基于CXF实现WebService开发.pdf

    Apache CXF还支持与多种Java EE应用服务器的集成,例如WebSphere、JBoss、WebLogic和Tomcat等,这意味着开发的服务可以轻松部署到不同的应用服务器环境。 服务集成总线(ESB)概念在文档中被提及,它是一种实现服务...

    (完整word版)软件项目投标技术标书.pdf

    8. Web服务器和中间件:文档提到了多种Web服务器和应用服务器,例如Apache、IIS、WebLogic、JBoss、Tomcat、Nginx等。这些服务器软件负责处理客户端请求、运行Web应用,并提供安全、负载均衡等服务。 9. 编程语言和...

    JBPM5.4及Eclipse流程插件安装

    8. **编译和部署**:将流程项目打包成JAR或WAR,部署到支持JBPM的服务器上,如Tomcat或JBoss。 9. **测试与调试**:利用Eclipse的调试工具,可以启动流程实例,查看任务状态,设置断点进行调试。 最后,**学习资源...

    Soa Using Java WebService

    2. **服务部署**:将开发好的服务部署到应用服务器中,例如Apache Tomcat或JBoss等。服务部署后,会生成WSDL文件,该文件包含了服务的所有必要信息,如接口、消息格式和通信地址。 3. **服务调用**:客户端可以...

    osesb-开源

    1. **跨平台支持**:osESB可以在多种J2EE应用服务器上运行,例如Tomcat、JBoss、WebLogic等。 2. **服务编排**:允许开发者组合多个服务,创建新的业务流程。 3. **API管理**:提供API生命周期管理,包括创建、发布...

    WebService_CXF范例.

    部署方面,CXF非常灵活,可以轻松部署到轻量级容器(如Tomcat)或JBI容器(如ServiceMix),也能集成到J2EE应用服务器(如Geronimo、JOnAS、JBoss、WebLogic和WebSphere)。此外,CXF的Java客户端和服务端具有很好的...

    liferayPortal

    - JBoss - JOnAS - JRun 4 Updater - Oracle Application Server - Orion - Pramati - Rex IP - SUN Java System Application Server - WebLogic - WebSphere 这种广泛的兼容性使得Liferay能够在不同的环境中部署和...

    数据中心应用系统集成设计方案.docx

    - 应用服务器:如Tomcat、JBoss等,作为应用部署的基础,提供集成环境。 - 消息队列:如RabbitMQ、Kafka,用于异步处理和解耦通信。 2.5 集成总体设计 - 整体规划:确定集成范围、目标、技术选型等,确保方案的可行...

    java WebService soa

    3. **服务部署**:将服务部署到应用服务器(如Tomcat、JBoss或WebLogic)。 4. **服务注册**:通过UDDI或类似机制,使服务可以在企业内部或外部被发现。 5. **服务消费**:使用Java客户端或者任何支持Web服务标准的...

    WebService_CXF学习.doc

    - **轻量级部署**:可以部署到Tomcat或任何支持Spring的容器中。 - **JBI整合**:可以部署到JBI容器中,如ServiceMix、OpenESB或Petals。 - **J2EE集成**:可以部署到J2EE应用服务器,如Geronimo、JOnAS、JBoss、...

    JAVA开源软件分类

    - **Tomcat/JBOSS/Jetty/GlassFish**:广泛使用的应用服务器,适合不同规模的应用。 - **P2:高级应用服务器** - **SOA服务器**:如JBoss EAP,提供更丰富的服务导向架构支持。 - **Web应用服务器**:如Apache ...

Global site tag (gtag.js) - Google Analytics