在server.xml文件中找到
<!-- Tomcat Root Context -->
在这下面加就行了
<!-- Tomcat Root Context -->
在这下面加就行了
解决方案 »
- 多个表的主键共用@GeneratedValue生成关联表的问题
- 在线编辑器fckeditor的文件上传怎么弄?
- ibatis工程加入后log4j.properties后报错“弹出警告class not find the main class...”
- EJB stateless session bean
- 用JSP实现上传功能[申精]
- log4j1.2.8 在 Jboss4-0.5 + jdk5 下 一个奇怪的Exception
- 请教:在spring+hibernate+struts框架中如何在程序中处理数据库错误
- 100分急!hibernate2中的级联删除!
- Boolean有没有这样的方法?直接解析
- 帮忙看看怎么实现这个功能
- 500分,tomcat5.0.27连接池问题(oracle) 在线等待
- jndi程序调试问题,代码如下:解决问题关键所在100分,结帐
是不是与你的tomcat版本有关系阿
不同的版本配置有些不同的
你可以去网上搜一下
不过我也遇到类似的问题
我用的是access数据库,也造成tomcat不能启动
不过要先问一下,对access数据库能否在tomcat下配置数据库连接池呢?
翻了很多书,也在网上查了很多都没有看到用access数据库连接池的例子
把下面的配置文档放到了 </HOST> 的前面<Context path="/booklend" reloadable="true" docBase="D:\booklend\webapp" workDir="D:\booklend\work" >
<Loader className="org.apache.catalina.loader.DevLoader" reloadable="true" debug="1"/><Resource name="jdbc/myoracle" auth="Container"
type="javax.sql.DataSource"/> <ResourceParams name="jdbc/myoracle">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.10.1:1521:RJZXORA</value>
</parameter>
<parameter>
<name>username</name>
<value>hasi</value>
</parameter>
<parameter>
<name>password</name>
<value>hasi</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>
2、配置D:\booklend\webapp\WEB-INF\web.xml文件,内容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd"><web-app> <display-name>book lend servlet</display-name>
<description>
book lend servlet
</description>
<resource-ref>
<description>Oracle Datasource example</description>
<res-ref-name>jdbc/myoracle</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
3、把classes12.jar放到D:\booklend\webapp\WEB-INF\lib 目录下,(也在TOMCAT的common\lib下放过)
并加到classpath里了(D:\booklend\webapp\WEB-INF\lib\classes12.jar)
4、建立一个jsp文件 (D:\booklend\webapp\test\show.jsp)
文件内容如下:
<%@ page import="javax.naming.Context" %>
<%@ page import="javax.sql.DataSource,java.util.*"%>
<%@ page import="javax.naming.InitialContext"%>
<%@ page import="java.sql.*"%>
<%
DataSource ds = null;
Connection con=null;
try{
Context ctx = new InitialContext();
ds = (DataSource)ctx.lookup("java:comp/env/jdbc/myoracle");
Hashtable t=ctx.getEnvironment();
out.print("<BR>ctx.getEnvironment() = "+t);
out.print("<BR>ds = "+ds);
if(ds!=null){
try {
con = ds.getConnection();
if(con!=null){
DatabaseMetaData dbmeta=con.getMetaData() ;
out.print("<br><b>数据库产品:</b>"+dbmeta.getDatabaseProductName());
out.print("<br><b>数据库版本:</b>"+dbmeta.getDatabaseProductVersion());
out.print("<br><b>用户名:</b>"+dbmeta.getUserName());
out.print("<br><b>测试 连接池 连接成功 ! 连接程序无误。测试完成</b>");
try{con.close();}catch(Exception e){}
}
else
out.print("<br><b>连接失败2:</b>不明原因 !");
}catch(Exception e){out.print("<br>ERR=="+e);}
}
else
out.println("Fail!");
}catch(Exception ne){ out.println(ne);}
%>
把下面的配置文档放到了 </HOST> 的前面<Context path="/booklend" reloadable="true" docBase="D:\booklend\webapp" workDir="D:\booklend\work" >
<Loader className="org.apache.catalina.loader.DevLoader" reloadable="true" debug="1"/><Resource name="jdbc/myoracle" auth="Container"
type="javax.sql.DataSource"/> <ResourceParams name="jdbc/myoracle">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.10.1:1521:RJZXORA</value>
</parameter>
<parameter>
<name>username</name>
<value>hasi</value>
</parameter>
<parameter>
<name>password</name>
<value>hasi</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>
2、配置D:\booklend\webapp\WEB-INF\web.xml文件,内容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd"><web-app> <display-name>book lend servlet</display-name>
<description>
book lend servlet
</description>
<resource-ref>
<description>Oracle Datasource example</description>
<res-ref-name>jdbc/myoracle</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
3、把classes12.jar放到D:\booklend\webapp\WEB-INF\lib 目录下,(也在TOMCAT的common\lib下放过)
并加到classpath里了(D:\booklend\webapp\WEB-INF\lib\classes12.jar)
4、建立一个jsp文件 (D:\booklend\webapp\test\show.jsp)
文件内容如下:
<%@ page import="javax.naming.Context" %>
<%@ page import="javax.sql.DataSource,java.util.*"%>
<%@ page import="javax.naming.InitialContext"%>
<%@ page import="java.sql.*"%>
<%
DataSource ds = null;
Connection con=null;
try{
Context ctx = new InitialContext();
ds = (DataSource)ctx.lookup("java:comp/env/jdbc/myoracle");
Hashtable t=ctx.getEnvironment();
out.print("<BR>ctx.getEnvironment() = "+t);
out.print("<BR>ds = "+ds);
if(ds!=null){
try {
con = ds.getConnection();
if(con!=null){
DatabaseMetaData dbmeta=con.getMetaData() ;
out.print("<br><b>数据库产品:</b>"+dbmeta.getDatabaseProductName());
out.print("<br><b>数据库版本:</b>"+dbmeta.getDatabaseProductVersion());
out.print("<br><b>用户名:</b>"+dbmeta.getUserName());
out.print("<br><b>测试 连接池 连接成功 ! 连接程序无误。测试完成</b>");
try{con.close();}catch(Exception e){}
}
else
out.print("<br><b>连接失败2:</b>不明原因 !");
}catch(Exception e){out.print("<br>ERR=="+e);}
}
else
out.println("Fail!");
}catch(Exception ne){ out.println(ne);}
%>