无意下了一个jboss 4.2,想给它配jndi却百思不得,网上也没攻略,前天终于搞定了,做一下总结:
首先,我们得需要jdbc driver。。。我用的是DB2,我就传db2jcc.jar和db2jcc_license_cu.jar到我的server/lib下面
然后到docs/examples/jca/里面找自己的数据库所属的文件,放到/server/default/deploy里面,再修改一下,如
<datasources>
<local-tx-datasource>
<jndi-name>DB2DS</jndi-name>
<connection-url>jdbc:db2://你的数据库IP:你的数据库端口/你的数据库
</connection-url>
<driver-class>com.ibm.db2.jcc.DB2Driver</driver-class>
<user-name>你的用户名</user-name>
<password>你的密码</password>
<min-pool-size>0</min-pool-size>
<!-- sql to call when connection is created
<new-connection-sql>some arbitrary sql</new-connection-sql>
-->
<!-- sql to call on an existing pooled connection when it is obtained from pool
<check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>
-->
<!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml -->
<metadata>
<type-mapping>DB2</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
再修改/server/default/conf里的standardjbosscmp-jdbc.xml文件,把java:/DefaultDS改成java:/ DB2DS
最后,修改server/default/conf里的login-config.xml文件,在最后添加 <application-policy name = "DB2Realm">
<authentication>
<login-module code =
"org.jboss.resource.security.ConfiguredIdentityLoginModule"
flag = "required">
<module-option name ="principal">DB2DS</module-option>
<module-option name ="userName">用户名</module-option>
<module-option name ="password">密码</module-option>
<module-option name ="managedConnectionFactoryName">
jboss.jca:service=LocalTxCM,name=DB2DS
</module-option>
</login-module>
</authentication>
</application-policy>
好了,我们配置完毕,新建一个jsp让我们测试一下功能。。。
用eclipse新建一个动态工程,在默认index.jsp上写:
<%@ page import="javax.sql.DataSource" %>
<%@ page import="javax.naming.*"%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<body>
<%
out.print("测试DB2DS连接<br/>");
try{
InitialContext initCtx = new InitialContext();
DataSource ds = (DataSource)initCtx.lookup("java:/DB2DS
Connection conn = ds.getConnection();
out.print("DB2 connection pool runs perfectly!");
conn.close();
}
catch(Exception ex){
out.println("error");
e.printStackTrace();}
%>
</body>
本文详细介绍了如何为JBoss 4.2配置JNDI以便连接DB2数据库,包括部署数据库驱动、配置数据源、调整登录配置文件等步骤,并提供了一个简单的测试示例。
1万+

被折叠的 条评论
为什么被折叠?



