关于tomcat6.0连接池的配置问题

大明哥_
Java领域优质创作者
博客专家认证
2011-10-10 03:47:24
在配置tomcat6.0连接池时:出现了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
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.lookup(Unknown Source)
at com.dbUtil.DbUtil.getcon(DbUtil.java:21)
at com.dbUtil.T.main(T.java:11)
的错误:
下面是关于tomcat/conf/context.xml的配置:
<Resource
name="jdbc/sqlserver"
auth="Container"
type="javax.sql.DataSource"
maxActive="50"
maxIdle="30"
maxWait="10000"
logAbandoned="true"
username="sa"
password="SQL2005"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;databasename=blog"/>

然后是web。xml的配置:
<description>DBConnection</description>
<res-ref-name>jdbc/sqlserver</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>

然后是使用:
Context ctx = new InitialContext();
//获取连接池对象
DataSource dSource = (DataSource) ctx.lookup("java:comp/env/jdbc/sqlserver");
con = dSource.getConnection();
出错是DataSource dSource = (DataSource) ctx.lookup("java:comp/env/jdbc/sqlserver");
这行代码
...全文
144 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
大明哥_ 2011-10-10
  • 打赏
  • 举报
回复
我的是myeclipse!!
我是放在tomcat的conf/context.xml下啊!!
应该是没有错误的。。
oO临时工Oo 2011-10-10
  • 打赏
  • 举报
回复
那段<Resource... 的配置放在哪了,如果是eclipse工程,要放在META-INF目录下
风尘中国 2011-10-10
  • 打赏
  • 举报
回复
你有没有把sqlserver的JDBC驱动包放到tomcat的lib目录下面?

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧