我的tomcat连接池配制总是不成功

ylfzly 2003-09-12 10:18:54
环境:win2003+sqlserver2000+tomcat4.1.24
---------------------------server.xml----------------------------------
<Context path="" docBase="d:\feng" debug="0">

<Resource name="jdbc/SqlServerDB" auth="Container" type="javax.sql.DataSource"/>

<ResourceParams name="jdbc/SqlServerDB">
<parameter>

<name>factory</name>

<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>

</parameter>

<parameter>

<name>driverClassName</name>

<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>

</parameter>

<parameter>

<name>url</name>

<value>jdbc:microsoft:sqlserver://localhost:1433;databaseName=test</value>

</parameter>

<parameter>

<name>username</name>

<value>sa</value>

</parameter>

<parameter>

<name>password</name>

<value>123456</value>

</parameter>

<parameter>

<name>maxActive</name>

<value>20</value>

</parameter>

<parameter>

<name>maxIdle</name>

<value>10</value>

</parameter>

<parameter>

<name>maxWait</name>

<value>-1</value>

</parameter>

</ResourceParams>

</Context>
------------------web.xml--------------------------------------
<resource-ref>
<description>sql
Datasource example</description>
<res-ref-name>jdbc/SqlServerDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
-----------------------------------------------------------------
SQL Server 2000 Driver for JDBC已安装,并把lib下的三个.jar拷到了tomcat里的common下的lib下了
--------------------------测试程序---------------------
<%@ page contentType="text/html;charset=GBK"%>
<%@ page import= "java.sql.* "%>
<%@ page import= "javax.naming.* "%>
<%
try{

Context initCtx = new InitialContext();

Context ctx = (Context) initCtx.lookup("java:comp/env");
//获取连接池对象

Object obj = (Object) ctx.lookup("jdbc/SqlServerDB");

//类型转换

javax.sql.DataSource ds = (javax.sql.DataSource)obj;

Connection conn = ds.getConnection();

Statement stmt = conn.createStatement();

String strSql = "insert into test(id,name) values('00001','holen')
";

stmt.executeUpdate(strSql);

strSql = " select id,name from test ";

ResultSet rs = stmt.executeQuery(strSql);
if(rs.next()){

out.println(rs.getString(1));


out.println(rs.getString(2));

}
}catch(Exception ex){

ex.printStackTrace();
throw new SQLException("cannot
get Connection pool.");
}
%>
<hr>
-----------------------------运行结果----------------------------
[javac] D:\tomcat\work\Standalone\localhost\_\feng_jsp.java:83: unclosed string literal
[javac] throw new SQLException("cannot
[javac] ^
[javac] D:\tomcat\work\Standalone\localhost\_\feng_jsp.java:84: unclosed string literal
[javac] get Connection pool.");
[javac] ^
[javac] D:\tomcat\work\Standalone\localhost\_\feng_jsp.java:84: ')' expected
[javac] get Connection pool.");
[javac] ^

-------------------------------------谢谢各位了--------------------------
...全文
21 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ylfzly 2003-09-13
  • 打赏
  • 举报
回复
.....................测试代码已改好了,现在显示另外的错误信息.....................

org.apache.jasper.JasperException: cannot get Connection pool.
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:254)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain
...........................................................................
<%@ page contentType="text/html;charset=GBK"%>
<%@ page import= "java.sql.* "%>
<%@ page import= "javax.naming.* "%>
<%
try{

Context initCtx = new InitialContext();

Context ctx = (Context) initCtx.lookup("java:comp/env");
//获取连接池对象

Object obj = (Object) ctx.lookup("jdbc/SqlServerDB");

//类型转换

javax.sql.DataSource ds = (javax.sql.DataSource)obj;

Connection conn = ds.getConnection();

Statement stmt = conn.createStatement();

String strSql = "insert into test(id,name) values('00001','holen')";

stmt.executeUpdate(strSql);

strSql = " select * from test ";

ResultSet rs = stmt.executeQuery(strSql);
if(rs.next()){

out.println(rs.getString(1));


out.println(rs.getString(2));

}
}catch(Exception ex){

ex.printStackTrace();
throw new SQLException("cannot get Connection pool.");
}
%>
<hr>
ylfzly 2003-09-13
  • 打赏
  • 举报
回复
我重启了机都不得行呀,
allan1031 2003-09-13
  • 打赏
  • 举报
回复
重新启动下TOMCAI看看
ylfzly 2003-09-13
  • 打赏
  • 举报
回复
怎么没人回答呀
eaglecoody 2003-09-13
  • 打赏
  • 举报
回复

throw new SQLException("cannot
get Connection pool.");
写到一行中 throw new SQLException("cannot get Connection pool.");
wangwd 2003-09-12
  • 打赏
  • 举报
回复
你的代码写得不完全,必要的封闭没有完成。get Connection pool.");重点检查。

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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