tomcat中配置oracle数据源的问题~

baggio785 baggio785 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
环境:tomcat5.0.28,jdk1.4.2,oracle9i,eclipse3.1,myeclipse4.1GA

server.xml文件中数据源的配置如下:
<ResourceParams name="jdbc/javablogorl">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>

<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>

<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>

<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>

<parameter>
<name>username</name>
<value>javablog</value>
</parameter>
<parameter>
<name>password</name>
<value>javablog</value>
</parameter>

<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>

<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.0.104:1521:baggio</value>
</parameter>
</ResourceParams>

站点目录下的web.xml文件相关配置如下:
<resource-ref>
<description>Oracle Datasource example</description>
<res-ref-name>jdbc/javablogorl</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>

DbPool.java相关代码如下:
import javax.naming.*;
import javax.sql.*;
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource db = (DataSource)envCtx.lookup("jdbc/javablogorl");

运行出错,错误代码为javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial。

只保留Context initCtx = new InitialContext();这一句,不会报错,但是加上Context envCtx = (Context) initCtx.lookup("java:comp/env");就会出错,请问是什么问题啊?

oracle的驱动已经copy到lib下

补充一下,以上代码在jsp中可以正常运行~
...全文
评论 2
收藏 已收藏
分享
返回顶部
baggio785
Web 开发 81,108 成员 341,721 内容