现在的项目中自定义了很多共通的jar包,这些jar包如何导入到JBoss的运行时环境中,有好几种做法:
(1)将使用的jar包打到工程的war或ear包中,随他们一起发布。
(2)编辑JBOSS_HOME/bin/run.bat,在classpath中加载这些jar,如下:
set JBOSS_CLASSPATH=%JBOSS_CLASSPATH%;C:/MyLib/common01.jar set JBOSS_CLASSPATH=%JBOSS_CLASSPATH%;C:/MyLib/common02.jar
(3)将这些jar放到JBOSS_HOME/server/default/lib下,随JBoss的jar一起加载。
对于以上3中方式,第一种直接否掉,既然是共通的jar包,那就有很多工程需要引用,不可能在每一个工程的war或ear中都加入这些jar。对于第二种,看似没有问题,但实际运行时发现,发布的war或ear可以找到这些jar,但这些jar中的类却无法使用JBoss环境提供的各种jar(例如:servlet.jar),查了一下,好像是JBoss ClassLoader的特性引起的,否掉。第三种是OK的,既不会造成jar包重复,也不会找不到JBoss的jar。
但是,使用第三种方式,直接将自定义jar跟JBoss的jar混在一起,从jar包的管理上来讲,又不太方便合理。有没有更加优雅一点的方式那?
调查了一下,发现JBoss启动时,加载哪些jar包,以及从哪里加载,都是可以在default/conf/jboss-service.xml中配置的,如下:
<!-- Load all jars from the JBOSS_DIST/server/<config>/lib directory. This can be restricted to specific jars by specifying them in the archives attribute. --> <classpath codebase="${jboss.server.lib.url:lib}" archives="*"/>
这样就简单了,可以将自定义的jar包如法炮制,使之随JBoss的jar一起导入,但又不必混杂在一起。修改后如下:
<classpath codebase="${jboss.server.lib.url:lib}" archives="*"/> <classpath codebase="file:/C:/MyLib" archives="*"/>
这样,就可以将工程的jar包放到磁盘的任何地方,便于规整管理。类似的,还可以将工程的war,ear以及配置文件等资源进行整理,当然,方法有所区别。
Tomcat:
最简单的方法是把所有相关的类和jar包复制到tomcat/lib目录。还可以修改catalina.properties实现,如下:
上面的代码让tomcat载入自定目录里面所有的jar文件。
相关推荐
apache 集成 jboss 或者 tomcat 必须文件,window下专用
本示例利用JBoss提供的JAAS支持,通过很简单的代码实现了登录和访问控制,能够很好的从一个应用移植到另一个应用(当然仅限JBoss环境),只要修改一些xml和数据库的配置就可以了。 本示例用了一些hibernate的东西读取...
JBOSS4.2 自定义服务器(同一IP启动多个实例) 配置方法
TOMCAT项目转成JBOSS项目的步骤
JBOSS+TOMCAT集成开发环境。完整版
JBoss+Tomcat已经成为一个免费的开源的稳定的J2EE服务器,虽然在JBoss中部署J2EE没有商用J2EE服务器那么方便,基本都是通过手工编写XML配置文件,但是这样可以让我们更容易理解J2EE的来龙去脉。本文以Jboss 2为例,...
web工程从TOMCAT移植到JBOSS中
Apache Jboss/Tomcat集群(手稿) Apache Jboss/Tomcat集群(手稿) Apache Jboss/Tomcat集群(手稿) Apache Jboss/Tomcat集群(手稿) Apache Jboss/Tomcat集群(手稿)
jBoss+tomcat学习笔记大全,jBoss+tomcat的帮助文档
Tomcat应用也算非常广泛的web 服务器,支持部分j2ee,免费,出自 apache基金组织 JBoss开源的应用服务器,比较受人喜爱,免费(文档要收费) weblogic应该说算是业界第一的app server,全部支持j2ee1.4, 对于...
Servlet引擎:JBoss与Tomcat、Jetty协同工作
Jboss与Tomcat服务器的SSL配置Jboss与Tomcat服务器的SSL配置
JBOSS\Tomcat最大连接数配置和jvm内存配置,解决内存溢出问题 Java中OutOfMemoryError(内存溢出)的情况 第一种OutOfMemoryError: PermGen space 第二种OutOfMemoryError: Java heap space
JBoss 引用自定义 Module 的示例
java项目tomcat迁移到jboss 出现的问题
公司需要做 Apache Tomcat集群,研究了数日,终配置成功,把研究结果共享一下。 最下面的红色字体[在一台机器上启动两个JBoss服务器],不同机器端口和路径不同,可根据自己情况适当修改。
jboss4版本下,jbossweb-tomcat55.sar升级包,修复Apache Tomcat DIGEST身份验证多个安全漏洞(CVE-2012-3439) 升级包中的jar来源于tomcat5.5.36 使用方法:直接替换jboss中旧的jbossweb-tomcat55.sar
tomcat 和jboss 的区别基于Tomcat内核基于Tomcat内核的JBoss在J2EE应用服务器领域已成为发展最为迅速的应用服务器Tomcat的区别又在哪里
如何将代码从Tomcat迁移到JBoss
tomcat转化为jboss之前遇到过,弄了很久终于解决了,现在把所有资料整理到了一起,包括解决在集成中会遇到的问题,所要添加的jar包、删除的jar包等等