环境:
jboss-4.2.3.GA
spring3.0.5
去jboss官方下载jboss服务器, http://www.jboss.org/jbossas/downloads/。建议下载jboss-4.2.3.GA这个版本的jboss,个人感觉还是这个版本的jboss比较稳定。
解压下载下来的jboss压缩文件,笔者解压到D:/jboss-4.2.3.GA
笔者以oracle数据库来说明如何在jboss下配置jndi 以及整合spring
第一步:拷贝oracle-ds文件
去D:/jboss-4.2.3.GA/docs/examples/jca目录下拷贝oracle-ds文件到D:/jboss-4.2.3.GA/server/default/deploy目录下即可。
大致内容如下:
jndi-name:不用多说了,当然是为该jndi取一名称这里使用OracleDS。
其他几个属性不做过多解释
use-java-context:属性默认为true,如未配置该属性或该属性配置为true,那么jboss在启动的时候jndi的名称前会加上java: 这里我们jndi的名称为OracleDS,那么未配置该属性或该属性为true的话,你在spring中使用jndi时指定的jndiName就应该为java:OracleDS;若配置为false,那么jboss服务器不会为你加上java: 你在spring中jndiName应当配置为OracleDS,即与jndi-name属性值等同。这里为了方便期间设置该属性为false。
第二步:拷贝oracle驱动
拷贝oracle驱动ojdbc14.jar到jboss的如下目录
D:/jboss-4.2.3.GA/lib
D:/jboss-4.2.3.GA/server/default/lib
切记数据库驱动拷贝到D:/jboss-4.2.3.GA/server/default/lib目录下,否则即使你jndi配置的再怎么正确都会报如下错误,该错误在jboss启动的时候并不会报出,只有在正式遇数据库进行交互的时候才会报此错误,大概错误是这样的。
第三步:配置spring配置文件
在applicationContext.xml中配置如下信息:
此种方式指定jndiName为OracleDS并未添加java:前缀,需要你手动在jboss的jndi配置文件中设置use-java-context属性为fasle;若未设置该属性或设置为true那么此处应该是这样子的:
在这里需要手动加上java:前缀后面跟jboss下配置的jndi的名称。
第四步:到此jboss下配置jndi 以及整合spring已经成功配置起来了,接下来就是一些细化了,大家可以去查询jboss的关于jndi配置的文档。
其实在jboss下配置jndi远远比在tomcat下配置jndi简单的多。
总结下来就这几步
拷贝jndi模板到server/default/deploy目录下,并做修改,这里面模板文件均是以数据库类型-ds.xml命名的。
拷贝数据库驱动到/server/default/lib目录和jboss安装目录/lib下即可。配置spring配置文件。