(1)server.xml
在<host></host>中加入
<Context path="/gongjiao" docBase="gongjiao">
<Resource name="jdbc/test"
auth="Container"
type="javax.sql.DataSource"
/>
<ResourceParams name="jdbc/test" >
<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=MyJspTest</value>
</parameter>
<parameter>
<name>username</name>
<value>alex</value>
</parameter>
<parameter>
<name>password</name>
<value>234314</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>
</ResourceParams>
</Context >
(2)在web.xml中加入如下代码:
<resource-ref>
<description>
JNDI DataSource for example database
</description>
<res-ref-name>jdbc/test</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Sharable</res-sharing-scope>
</resource-ref>
(3).tomcat5.0\webapps\gongjiao\testpool.jsp 代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page import="javax.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD
HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<%
Context initContext = new InitialContext();
Context envContext = (Context) initContext.lookup("java:/comp/env");
DataSource db = (DataSource)envContext.lookup("jdbc/gongjiao");
Connection conn = db.getConnection( );
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM AllStation WHERE stationID =1");
while(rs.next()){
out.print(rs.getString("NO1")+" ");
}
rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
(4)当我运行页面的时候,出现如下错误提示:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Exception in JSP: /3.jsp:15
12: Context initContext = new InitialContext();
13: Context envContext = (Context) initContext.lookup("java:/comp/env");
14: DataSource db = (DataSource)envContext.lookup("jdbc/gongjiao");
15: Connection conn = db.getConnection( );
16: Statement stmt = conn.createStatement();
17: ResultSet rs = stmt.executeQuery("SELECT * FROM AllStation WHERE stationID =1");
18: while(rs.next()){
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
javax.servlet.ServletException: Cannot create JDBC driver of class '' for connect URL 'null'
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:858)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
org.apache.jsp._3_jsp._jspService(_3_jsp.java:78)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:780)
org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
org.apache.jsp._3_jsp._jspService(_3_jsp.java:60)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.17 logs.
--------------------------------------------------------------------------------
Apache Tomcat/5.5.17
在<host></host>中加入
<Context path="/gongjiao" docBase="gongjiao">
<Resource name="jdbc/test"
auth="Container"
type="javax.sql.DataSource"
/>
<ResourceParams name="jdbc/test" >
<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=MyJspTest</value>
</parameter>
<parameter>
<name>username</name>
<value>alex</value>
</parameter>
<parameter>
<name>password</name>
<value>234314</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>
</ResourceParams>
</Context >
(2)在web.xml中加入如下代码:
<resource-ref>
<description>
JNDI DataSource for example database
</description>
<res-ref-name>jdbc/test</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Sharable</res-sharing-scope>
</resource-ref>
(3).tomcat5.0\webapps\gongjiao\testpool.jsp 代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page import="javax.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD
HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<%
Context initContext = new InitialContext();
Context envContext = (Context) initContext.lookup("java:/comp/env");
DataSource db = (DataSource)envContext.lookup("jdbc/gongjiao");
Connection conn = db.getConnection( );
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM AllStation WHERE stationID =1");
while(rs.next()){
out.print(rs.getString("NO1")+" ");
}
rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
(4)当我运行页面的时候,出现如下错误提示:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Exception in JSP: /3.jsp:15
12: Context initContext = new InitialContext();
13: Context envContext = (Context) initContext.lookup("java:/comp/env");
14: DataSource db = (DataSource)envContext.lookup("jdbc/gongjiao");
15: Connection conn = db.getConnection( );
16: Statement stmt = conn.createStatement();
17: ResultSet rs = stmt.executeQuery("SELECT * FROM AllStation WHERE stationID =1");
18: while(rs.next()){
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
javax.servlet.ServletException: Cannot create JDBC driver of class '' for connect URL 'null'
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:858)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
org.apache.jsp._3_jsp._jspService(_3_jsp.java:78)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:780)
org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
org.apache.jsp._3_jsp._jspService(_3_jsp.java:60)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.17 logs.
--------------------------------------------------------------------------------
Apache Tomcat/5.5.17
解决方案 »
- java.io.I/OException在eclipse中
- Microsoft OWC 9 可以被 office xp, office 2003使用吗
- 使用tomcat定时调用java项目中的class文件
- struts2 权限问题
- struts里转向别的页时怎么带参数?
- javax.servlet.ServletException: [Microsoft][SQLServer 2000 Driver for JDBC]Object has been closed.什么意思
- 一道面试题?
- 求助:文件下载!
- jsp连接MYSQL的问题?在线等待!急#
- 空指针求助.请大神帮忙
- struts转向页怎么带参数???
- 如果想退出浏览器,如何实现?
docBase="D:/Tomcat 5.5/webapps/TestDBSource">
<Resource name="jdbc/TestJNi"
type="javax.sql.DataSource" auth="Container"
driverClassName="org.gjt.mm.mysql.Driver" maxActive="100"
maxIdle="30" maxWait="10000"
url="jdbc:mysql://localhost:3306/testDBSource?autoReconnect=true"
username="root" password="shit" />
</Context>
2.应用程序中WEB-INF\web.xml<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<resource-ref>
<description>connectDB test</description>
<res-ref-name>jdbc/TestJNi</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>3.再把mysql的JDBC驱动包放入tomcat安装目录下common\lib的目录下即可
而且在一般程序中都可以连接到SQL-SERVER2000
Connection conn = db.getConnection( );
getConnection后面的括号~~~~。
Tomcat/5.5.17 连接MSSQLserver的例子阿??
<Resource name="jdbc/j8BlogDB" auth="Container"
type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/j8BlogDB">
<parameter>
<name>username</name>
<value>dbuser</value>
</parameter>
<parameter>
<name>password</name>
<value>1234</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.gjt.mm.mysql.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://127.0.0.1/BlogDB</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>8</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>4</value>
</parameter>
</ResourceParams></Context>
只配置server.xml 就可以吧.
LZ请检查你的代码testpool.jsp
5.5以后配置有所不同,都写在一起了
<Context path="/gongjiao" docBase="gongjiao"
debug="5" reloadable="true" crossContext="true">
<Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000" username="alex" password="234314"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=MyJspTest"/>
</Context>