【发布时间】:2014-08-18 08:31:33
【问题描述】:
我无法在 jBoss 中配置数据源。以下是jboss web.xml
中的配置<jboss-web>
<resource-ref>
<res-ref-name>jdbc/testDataSource</res-ref-name> <!-- matches web.xml -->
<jndi-name>java:jdbc/testDataSource</jndi-name> <!-- matches oracle-ds.xml -->
<res-type>javax.sql.DataSource</res-type>
</resource-ref>
</jboss-web>
我们创建了 oracle-ds.xml,其中包含:
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>jdbc/testDataSource</jndi-name>
<connection-url>jdbc:oracle:thin:@11.120.184.77:1521:starsdev</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>cmsusr</user-name>
<password>cmsusr</password>
<min-pool-size>2</min-pool-size>
<max-pool-size>20</max-pool-size>
<idle-timeout-minutes>5</idle-timeout-minutes>
<track-statements/>
<metadata>
<type-mapping>Oracle10g</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
我创建了一个 servlet,它在服务方法中包含以下代码:
Context initialContext = new InitialContext();
Context envContext = (Context) initialContext.lookup( "java:comp/env" );
DataSource ds = (DataSource) envContext.lookup( "jdbc/testDataSource" );
PrintWriter pw = response.getWriter();
pw.print(ds);
当我运行我的 servlet 时,它显示以下错误:
[STDOUT] javax.naming.NameNotFoundException: jdbc 未绑定
【问题讨论】:
-
您运行的是哪个版本的 JBoss AS?
-
尝试将
<use-java-context>false</use-java-context>添加到oracle-ds.xml。 -
@user3757014 我们使用的是 jBoss 版本 4
-
@cy3er 我在元数据标记下面插入了提到的行: ....
Oracle10g false 仍然面临同样的错误
标签: java servlets jboss oracle10g jndi