第一步配置server.xml
在server.xml文件中找到
<!-- Tomcat Root Context -->
<!--
<Context path="" docBase="ROOT"
debug="0"/>
-->
将其改为
<!-- Tomcat Root Context -->
<Context path=""
docBase="ROOT" debug="0">
<Resource name="jdbc/OracleDB" auth="Container"
type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/OracleDB">
<parameter>
<name>user</name>
<value>holen</value>
</parameter>
<parameter>
<name>password</name>
<value>holen</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>driverName</name>
<value>jdbc:oracle:thin:@192.168.0.50:1521:oradb</value>
</parameter>
</ResourceParams>
</Context>我按照我的配置,把他提供的192.168.0.50:1521:oradb修改成
localhost:1521:study
他的用户名holen和密码holen修改成sys/sysasdf
之后,保存
在server.xml文件中找到
<!-- Tomcat Root Context -->
<!--
<Context path="" docBase="ROOT"
debug="0"/>
-->
将其改为
<!-- Tomcat Root Context -->
<Context path=""
docBase="ROOT" debug="0">
<Resource name="jdbc/OracleDB" auth="Container"
type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/OracleDB">
<parameter>
<name>user</name>
<value>holen</value>
</parameter>
<parameter>
<name>password</name>
<value>holen</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>driverName</name>
<value>jdbc:oracle:thin:@192.168.0.50:1521:oradb</value>
</parameter>
</ResourceParams>
</Context>我按照我的配置,把他提供的192.168.0.50:1521:oradb修改成
localhost:1521:study
他的用户名holen和密码holen修改成sys/sysasdf
之后,保存
解决方案 »
- request.getRequestDispatcher 跳转不了
- 关于连接Oracle数据库
- JSF action
- 十万火急啊!如何编写日志文件!
- 密码登陆问题?(高手指教)
- 求助。让人崩溃的NullPointerException(有图)
- jsp中 class 文件的位置
- SmartUpload如何实现传输过程将文件压缩,或是高手有别的实现方案
- 简单问题
- 如何得到服务器变量 In Jsp(Like In Asp).
- 我在使用javabean中,它老是找不到class类
- 在bean中该怎样声明一个request对象,就想在JSP和Servlet中的request一样,我是这么写的:HttpServletRequest request=new HttpServletRe
我于是找到9.0.1的jdbc驱动该名成classes12.jar,拷贝到相应目录
之后我启动OracleOraHome90ManagementServer服务。然后用sysman登录到
localhost的ManagementServer网页上有测试页,我按照他的要求
Create table test(id varchar2(12),name varchar2(30))
我于是建立了个表完全按照他的要求接着下面写了一个JSP文件testdb.jsp,并将testdb.jsp置于webapps/ROOT
testdb.jsp内容如下:<%@ 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/OracleDB");
//类型转换
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>
由于排版问题造成的语法错误我已经改成后,放入jsp文件
一切都做好以后
我兴高采烈的启动了tomcat
打开http://localhost:18080/testdb.jsp
(刚才为了防止冲突,把8080改成18080了)
提示:
Apache Tomcat/4.0.6 - HTTP Status 500 - Internal Server Error
type Exception reportmessage Internal Server Errordescription The server encountered an internal error
(Internal Server Error) that prevented it from fulfilling this request.
org.apache.jasper.JasperException:
Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated.
D:\Tomcat\common\lib\jdbc2_0-stdext.jar(javax/sql/DataSource.java):
Public interface javax.sql.DataSource must be defined in a file called "DataSource.java".
1 error, 1 warningat org.apache.jasper.compiler.Compiler.compile(Compiler.java:285)
at org.apache.jasper.servlet.JspServlet.loadJSP(JspServlet.java:548)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary(JspServlet.java:176)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:188)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:381)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:473)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125)
at java.lang.Thread.run(Thread.java:534)为什么会这样呢?????????!!!!!!!!
其中我有几个问题。
1是否因为我的操作系统和他的不同,并且oracle版本不同造成的异常
2网页说的:JNDI名设为jdbc/OracleDB
这句话是什么意思,路经时候因为版本不同而不同呢?
3我应该怎么样解决这样的异常呢?我看到提示
org.apache.jasper.JasperException:
Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated.
D:\Tomcat\common\lib\jdbc2_0-stdext.jar(javax/sql/DataSource.java):
Public interface javax.sql.DataSource must be defined in a file called "DataSource.java".
大概意思是说
某个东西不能编译,在什么路下缺少什么类库呢?
- Readme for NT
- Readme for Solaris
The following files are all 100% pure Java and are used with both the Thin and OCI drivers. To use the OCI driver you must also download the appropriate shared library or DLL files.
For use with JDK 1.2 and JDK 1.3
classes12.zip - JDBC classes( 1,081 kb)
ocrs12.zip - Additional RowSet support (34 kb)
nls_charset12.zip - Additional National Language character set support ( 11,760 kB)
For use with JDK 1.1
classes111.zip - JDBC classes ( 936 kB)
nls_charset11.zip - Additional National Language character set support ( 1,363 kB)
这么多驱动我选哪个?找不到jdk1.4的驱动程序。可选择的只有classes12.zip
Apache Tomcat/4.0.6 - HTTP Status 500 - Internal Server Error
type Exception reportmessage Internal Server Errordescription The server encountered an internal error
(Internal Server Error) that prevented it from fulfilling this request.
org.apache.jasper.JasperException:
Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated.
D:\Tomcat\common\lib\jdbc2_0-stdext.jar(javax/sql/DataSource.java):
Public interface javax.sql.DataSource must be defined in a file called "DataSource.java".
1 error, 1 warning
这样的错误?
你东西太长,没看完。不过上面这句好像在说你没有配制数据库联接工厂。
就是在web.xml中编辑<resource-ref>