原来应用在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上遇到的问题的更多相关文章

  1. jboss部署出现jboss.naming.context.java.rmi找不到错误

    最近,在机器人程序中使用jmx,准备做个远程调用,客户端是web,部署在jboss上,本地测试的都好好的,发到预发布上就是不行, 错误描述: Failed to retrieve RMIServer ...

  2. VS2013中的MVC5模板部署到mono上的艰辛历程

    部署环境:CentOS7 + Mono 3.10 + Jexus 5.6 在Xamarin.Studio创建的asp.net项目,部署过程非常顺利,没有遇到什么问题:但在VS2013中创建的asp.n ...

  3. 基于Flask的Web应用部署到SAE上遇到的问题

    我的应用底层数据库用的是MySQL,利用Flask-SQLALchemy实现接口操作.我遇到的问题是: 在我把代码部署到SAE上后,当数据向数据库insert的时候总是出现“2006,MySQL ha ...

  4. jboss上的soap web service开发示例

    以下示例,由jboss quickstart示例代码得来: 一.创建一个常规的dynamic web项目,建议支持maven ,项目的关键属性参考下图: 二.定义服务接口及参数对象 HelloWorl ...

  5. WCF Service部署在IIS上

    环境vs2010,WCF应用程序.如何将WCF部署在IIS上. 第一步:右键点击项目,选择生成部署包. 第二步:在你项目所在的文件目录下找到Package文件夹,这就是我们的部署包所在的地方.在这个p ...

  6. JAX-WS(三)构建简单webservice部署到tomcat上

    前言: 虽然构建本地的jax-ws的webservice很简单,但要部署到tomcat上要绕过点弯. tomcat本身和jdk都没有jaw-ws的API,所以部署的时候需要额外做点事情,有两种选择 1 ...

  7. hexo部署到gitcafe上静态博客

    http://zanderzhang.gitcafe.io/2015/09/17/hexo部署到gitcafe上静态博客/ hexo这些事儿,zippera's blog,之类的,这些都说的很清楚了. ...

  8. WCF服务部署到IIS上,然后通过web服务引用方式出现错误的解决办法

    本文转载:http://www.cnblogs.com/shenba/archive/2012/01/06/2313932.html 昨天在用IIS部署一个WCF服务时,碰到了如下错误: 理解了文档内 ...

  9. MVC 4.0项目部署在IIS上无法浏览的解决方案

    本文属于原创,转载请标明出处! MVC 4.0发布后部署到IIS上可能出现无法浏览的问题,浏览器报403的错误. 解决方法是:只需在web.config配置文件里的<system.webServ ...

随机推荐

  1. Oracle游标练手实例

    --声明游标:CURSOR cursor_name IS select_statement --For循环游标 --(1)定义游标 --(2)定义游标变量 --(3)使用for循环来使用这个游标 de ...

  2. 用PHP判断远程图片(文件)是否存在

    <?php function check_remote_file_exists($url) { $curl = curl_init($url); // 不取回数据 curl_setopt($cu ...

  3. 新增PHP经典笔记

    [设置编码] header("Content-type: text/html; charset=utf-8"); 1. parse_url - 解析 URL,返回其组成部分 $ua ...

  4. 在ECSHOP后台的订单列表中显示配送方式

    熟悉ECSHOP后台的人都知道,只有点击某个具体的订单,进入订单详细页面才能看到该订单的配送方式,最模板修改的目的,是想让管理者在订单列表页面 就能看到该订单的配送方式. 下面是修改方法:首先来修改 ...

  5. StringUtils中 isEmpty 和isBlank的区别

    StringUtils方法的操作对象是java.lang.String类型的对象,是JDK提供的String类型操作方法的补充,并且是null安全的(即如果输入参数String为null则不会抛出Nu ...

  6. 错误描述: 抱歉,该商品的交易金额与原先的不一致,请重新创建交易付款。 错误代码: TRADE_TOTALFEE_NOT_MATCH

    由于在支付宝最后支付,出现了问题导致未能支付成功,而支付宝已经记录了当前的网站订单号(out_trade_no),所以下次再以同一张订单进行支付时,就必须与之前的金额一致,否则就报上面的错. 解决方法 ...

  7. c#之xml

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.X ...

  8. HDU(3790),最短路二级标准

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3790 最短路径问题 Time Limit: 2000/1000 MS (Java/Others)    ...

  9. PoJ(2263),Floyd,最小值中的最大值

    题目链接:http://poj.org/problem?id=2263 题意:题中给出相连通不同城市之间的载货量,要求找到一条从指定起点到终点的路径,并满足载货量最大. #include <io ...

  10. Radar之获取排列的UITexture数组

    1.定义UITexture二维数组 public UITexture[,] m_UITexture; 2.在 void start() 中分配内存 m_UITexture = , ]; 3.遍历排列的 ...