如何在tomcat4。1上让自己的servlet运行?急急急啊(在线等待)

pingju 2002-04-18 09:36:08
我安装了tomcat4.1 在webapps/root 下建立了一个test目录,里面自己创建的test1.jsp能够正确 运行,可再创建一个Tservlet.java就不能够javac.错误提示说包 javax.servlet 不存在,包 javax.servlet.http 不存在 不能编译,

我在server.xml中加入了

<!-- mydir Context -->
<Context path="/test" docBase="webapps/test" debug="0" reloadable="true" trusted="false" />
已经设置了JAVA_HOME环境变量,还需要做什么工作。
...全文
18 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
pingju 2002-04-18
  • 打赏
  • 举报
回复
加完了,放完了,还是不行啊,我快崩溃了,一上午啊。这点问题我都没搞定!
iamzhan 2002-04-18
  • 打赏
  • 举报
回复
在tomcat/common/lib下。
pingju 2002-04-18
  • 打赏
  • 举报
回复
还是不行,再说 我也没看到哪有servlet.jar 文件啊?
ralpher2017 2002-04-18
  • 打赏
  • 举报
回复
那时你的引用的类没有找到,你在classpath中加入C:\jdk1.3.1\src.jar后再试试,如果不行,再看看你的servlet.jar放的位置对不?把它考到C:\jdk1.3.1\jre\lib\ext下试试,还不行? 我就技穷了。
pingju 2002-04-18
  • 打赏
  • 举报
回复
我的源代码如下:

import java.util.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class TestServlet extends HttpServlet {

public void service(HttpServletRequest request,

HttpServletResponse response)

throws IOException, ServletException

{

response.setContentType("text/html");

ServletOutputStream out = response.getOutputStream();

out.println("<html>");

out.println("<head>");

String title = "Hello World";

out.println("<title>" + title + "</title>");

out.println("</head>");

out.println("<body bgcolor='white'>");

out.println("<body>");

out.println("<h1>" + title + "</h1>");

out.println("</body>");

out.println("</html>");

}

}

编译错误是:

C:\Program Files\Apache Tomcat 4.0\webapps\ROOT\test\servlet\TestServlet.java:7: 包 javax.servlet 不存在
import javax.servlet.*;
^
C:\Program Files\Apache Tomcat 4.0\webapps\ROOT\test\servlet\TestServlet.java:9: 包 javax.servlet.http 不存在
import javax.servlet.http.*;
^
C:\Program Files\Apache Tomcat 4.0\webapps\ROOT\test\servlet\TestServlet.java:11: 不能解析符号
符号:类 HttpServlet
位置:类 in TestServlet
public class TestServlet extends HttpServlet {
^
C:\Program Files\Apache Tomcat 4.0\webapps\ROOT\test\servlet\TestServlet.java:13: 不能解析符号
符号:类 HttpServletRequest
位置:类 in TestServlet
public void service(HttpServletRequest request,
^
C:\Program Files\Apache Tomcat 4.0\webapps\ROOT\test\servlet\TestServlet.java:15: 不能解析符号
符号:类 HttpServletResponse
位置:类 in TestServlet
HttpServletResponse response)
^
C:\Program Files\Apache Tomcat 4.0\webapps\ROOT\test\servlet\TestServlet.java:17: 不能解析符号
符号:类 ServletException
位置:类 in TestServlet
throws IOException, ServletException
^
C:\Program Files\Apache Tomcat 4.0\webapps\ROOT\test\servlet\TestServlet.java:23: 不能解析符号
符号:类 ServletOutputStream
位置:类 in TestServlet
ServletOutputStream out = response.getOutputStream();
^
7 个错误

Tool completed with exit code 1
iamzhan 2002-04-18
  • 打赏
  • 举报
回复
把下面这段加到环境变量里看一看,c:\Program Files\Apache Tomcat 4.0\common\lib\servlet.jar;
第二个问题,你是建在webapps/root/test下,你却在server.xml写的是webapps/test,应该是这里有误吧。
ralpher2017 2002-04-18
  • 打赏
  • 举报
回复
那把你的编译错误信息拿来看看
pingju 2002-04-18
  • 打赏
  • 举报
回复
tolkman:重起n 次了,不行
tostupid:tomcat 4.1中哪有servlet.jar文件啊,你看看,在哪个目录下?
编译不能通过,不是放哪的问题
pingju 2002-04-18
  • 打赏
  • 举报
回复
jdk1.3的环境当然是设置好了的。我的jrun 什么都好使的。
干脆我把我所设置的环境变量都给你,你看缺什么?
用户变量 classpath
.;d:\jdk1.3.1\lib;d:\jdk1.3.1\lib\tools.jar;d:\jdk1.3.1\lib\dt.jar;d:\jdk1.3.1\lib;c:\Program Files\Apache Tomcat 4.0\webapps\ROOT\WEB-INF\classes;c:\Program Files\Apache Tomcat 4.0\lib;

JAVA_HOME:
d:\jdk1.3.1;

TOMCAT_HOME:
c:\Program Files\Apache Tomcat 4.0;
stupidball 2002-04-18
  • 打赏
  • 举报
回复
将servlet.jar加近classpath里,在root里建立web-inf/classes文件夹,将Tservlet连包放进去,敲http://localhost:8080/servlet/Tservlet的包加上".Tservlet"就行了。
ralpher2017 2002-04-18
  • 打赏
  • 举报
回复
呵呵,重启一下Tomcat试试。

刚学,不要着急,我也是刚学的。
pingju 2002-04-18
  • 打赏
  • 举报
回复
又出现了一个奇怪的问题(不是tomcat有病,就是我有病)

我想建立两个虚拟目录,一个建到webapps/root/test 该目录里存放一些jsp文件。
另一个是d:/myweb 存放一些jsp文件。

我在server.xml中加入了
<!-- mydir1Context -->
<Context path="/test" docBase="webapps/test" debug="0" reloadable="true" trusted="false" />

<!-- mydir2 Context -->
<Context path="/myweb" docBase="d:/myweb" debug="0" reloadable="true" trusted="false" />

为什么在ie下敲入:http://speed001:8080/test/test1.jsp 不好使,说找不到
而敲入http://speed001:8080/myweb/test1.jsp能运行。
(迷惑)???

ralpher2017 2002-04-18
  • 打赏
  • 举报
回复
你的jdk环境设置好了没有啊,编译一个简单的Helloworld试试,你吧Tomcat里的例子里的源代码考过来,编译,看能通过不?
pingju 2002-04-18
  • 打赏
  • 举报
回复
已经在classpath中设置了c:\Program Files\Apache Tomcat 4.0\lib;还是不行啊?
tolkman: 现在是连servlet的源文件编译都过不去,还不是位置,怎么运行啊?
ralpher2017 2002-04-18
  • 打赏
  • 举报
回复
再工作目录(即你的test目录)中建立一个目录名为(servlet),必须为servlet。
再建立一个目录名为(Web-inf),再在(Web-inf)目录中建立一个classes目录即可,

将编译过的文件放在该CLASSES目录下就行了

先后打入http://localhost:8080/test/yourTestServletName 就行了
scarab 2002-04-18
  • 打赏
  • 举报
回复
还需要设置javax.servlet的包路径啊
例如set classpath=d:\tomcat\lib
ralpher2017 2002-04-18
  • 打赏
  • 举报
回复
不需要该server.xml 的
应该可以了阿。

你先放到Tomcat下example/servlet/web-inf/classes中,打入
localhost:8080/example/servlet/yourServletName试试,看出来没有
pingju 2002-04-18
  • 打赏
  • 举报
回复
上面打错了,是在test目录中建立了WEB-INF/classes
pingju 2002-04-18
  • 打赏
  • 举报
回复
在各位的帮助下,servlet可以编译通过了,可
访问
http://机器名:8080/test/TestServlet说找不到文件啊?再帮帮忙。
我在test建立了一个目录servlet,里面有一个TestServlet.java.我编译成了TestServlet.class.
我在test目录下建立了一个目录classes,里面放着我刚编译过的TestServlet.class.
为什么不行?请帮忙?
运行servlet用在server.xml中写东西吗

81,091

社区成员

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

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