jboss设置jndi数据源
1. 把docs/examples/jca/oracle-ds.xml文件复制到/server/default/deploy目录下,改一下oracle-ds.xml.
在jndi-name后,要添加:
<use-java-context>false</use-java-context>
2.修改standardjaws.xml 或jaws.xml配置文件,并把<datasource>和<type-mapping>元素这只为下面这样:
<jaws>
<datasource>java:/OracleDS</datasource>
<type-mapping>Oracle 9i</type-mapping>
</jaws>
3.修改standardjbosscmp-jdbc.xml 或 jbosscmp-jdbc.xml配置文件,置<datasource>和 <datasource-mapping>元素使用Oracle :
<datasource-mapping>
<defaults>
<datasource>java:/OracleDS</datasource>
<datasource-mapping>Oracle 9i</datasource-mapping>
</defaults>
</datasource-mapping>
4.最后我们需要修改login-config.xml文件来使用Oracle,下面是login-config.xml文件的<application-policy>元素:
<application-policy name = "OracleDbRealm">
<authentication>
<login-module code = "org.jboss.resource.security.ConfiguredIdentityLoginModule"
flag = "required">
<module-option name = "principal">scott</module-option>
<module-option name = "userName">scott</module-option>
<module-option name = "password">tiger</module-option>
<module-option name ="managedConnectionFactoryName">
jboss.jca:service=LocalTxCM,name=OracleDS
</module-option>
</login-module>
</authentication>
</application-policy>
//测试代码:
<%
Context initialContext = new InitialContext();
DataSource ds = (DataSource) initialContext.lookup("java:/OracleDS");
java.sql.Connection conn = null;
try {
conn = ds.getConnection();
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery(" select t.id,t.name from stu t where t.age=21 ");
while(rs.next()) {
System.out.println("name is "+rs.getString("name"));
out.print("name is "+rs.getString("name"));
out.print("<br>");
}
} finally {
if(conn!=null) {
conn.close();
}
}
//while(rs.)
%>
jboss jndi的配置
猜你喜欢
转载自kaminlee.iteye.com/blog/1068245
今日推荐
周排行