应用部署到JBOSS上遇到的问题

摘要:
原来应用在WAS7.0下,移植到JBOSSeap5.1.2下后,遇到了一些问题,特此记录:1、数据源配置在was中,datasource中获取数据源名称时,直接写was中配置的数据源名称即可。此时,需要在%JBOSS_HOME%/bin/run.conf下,最顶部添加如下jvm参数配置:setJAVA_OPTS=-Xms512m-Xmx1024m-XX:MaxNewSize=256m-XX:MaxPermSize=256m4、出现headsize异常可以通过指定最大堆大小来解决此问题即setJAVA_OPTS=-Xmx1024m4、jboss-web.xml默认情况下,应用中的某些jar包也jboss中的jar包冲突。

原来应用在WAS7.0下,移植到JBOSS eap5.1.2下后,遇到了一些问题,特此记录:

1、数据源配置

在was中,datasource中获取数据源名称时,直接写was中配置的数据源名称即可。而在jboss下,jndi的名称需要以java:+数据源名称开始。was下可以通过console去配置数据源,jboss中,将数据库驱动复制到%JBOSS_HOME%/server/default/lib/下,然后到JBoss的文档中寻找到数据源的配置模板,这个配置模板在docs/examples/jca目录下,在这目录下可以看到有各种数据库的配置模板,找到oracle的配置模板,oracle-ds.xml,将其复制到%JBOSS_HOME%/server/default/deploy/下。然后将数据库连接串、用户名、密码等写正确。

数据源发布成功之后,我们就可以进入JBoss的管理控制台,http://localhost:8080/jmx-console/, 找到jboss.jca这个栏目,会找到很多name=itcastDS.service=....的东西,当这个数据源在jboss.jca这个栏目列出来的时候,就证明我们的发布是成功的。

2、web.xml配置

在was7下,web.xml顶部必须有一个DOCTYPE声明,这个在jboss中不可以有,否则无法启动。

3、JVM配置

jvm的默认的permsize只有4M,当应用中jar包和类比较多时,会出现OutOfMemory:PermSize的异常。 此时,需要在%JBOSS_HOME%/bin/run.conf下,最顶部添加如下jvm参数配置:

set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

4、出现head size异常

可以通过指定最大堆大小来解决此问题 即set JAVA_OPTS=-Xmx1024m

4、jboss-web.xml

默认情况下,应用中的某些jar包也jboss中的jar包冲突。此时在web-inf下添加一个jboss-web.xml,即可正常启动,内容如下:

<!DOCTYPE jboss-web PUBLIC "-//JBoss//DTD Web Application 5.0//EN" "http://www.jboss.org/j2ee/dtd/jboss-web_5_0.dtd">
<jboss-web>
<class-loading java2ClassLoadingCompliance='true'>
<loader-repository>
com.example:archive=unique-archive-name
<loader-repository-config>
java2ParentDelegaton=true
</loader-repository-config>
</loader-repository>
</class-loading>
</jboss-web>

免责声明:文章转载自《应用部署到JBOSS上遇到的问题》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Notepad++常用命令——大大提升编码效率logstash使用supervisord下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

JBoss环境搭建及部署Web项目

http://blog.csdn.net/pop303/article/details/7210290 赶在年前学习了一下JBOSS,之前觉得JBOSS相关资料会有很多,不过现在发现很少,在亚马逊出也是很少,只有一个“JBoss实战:服务器配置指南 ”,不过我找到了英文版,有要的可以邮件给大家。我想从不会JBOSS开始进行,到我打包部署到JBOSS后能...

JBOSS未授权访问漏洞复现

目录 1.JBOSS是什么 2.JBOSS未授权访问是什么 3.漏洞环境搭建 4.漏洞复现 进入控制台 进入应用部署页面 上马 5.jexboss工具安装方法: 6.war的制作 1.JBOSS是什么 JBOSS是一个基于J2EE的开放源代码的应用服务器。 JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用。JBoss是一个管理...

JBOSS目录结构详细说明

一、下载与安装。 如何下载以及安装配置,请参考:Windows下JBOSS安装配置图文教程 二、现在主要了解一下JBOSS目录结构。 1. 主目录: E:jboosjboss-6.1.0.Final bin 开始和停止JBoss的地方。 其中有两个主要的批处理文件:run.bat和shutdown.bat。要启动JBoss只要执行run.bat文件即可;...

JBOSS 数据源配置并使用JNDI调用

-- 本文出自sleest (感谢yangjj ^_^) 场景分析: 某天系统的数据库维护方要求进行DG备库容灾演练,要把生产用RAC库模拟宕机并转移至DG备库上,由于是failover而不是switchover演练,于是期间不对外开放apache访问,要求服务启动时间较紧. 数据库的切换导致IP的变更,这样导致ap上正在跑的系统不得不重新配置数据库连接,...

解决JBoss只能通过localhost(127.0.0.1)而不能通过IP访问

原文地址:http://fanzhongyun.iteye.com/blog/1454967 刚开始测试访问远程EJB对象的时候,我的EJB是发布到我本人本机的JBoss6上的,所以请求的URL我写的是localhost(或者是本机回路地址:127.0.0.1),测试正常。但是当我将请求的URL改成:192.168.0.3(本人的局域网IP),再次测试的时...

Jboss

是一个基于J2EE的开放源代码的应用服务器。 JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用,而不用支付费用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。 产品特点 编辑 在J2EE应...