servlet问题,我写了一个servlet在resin一切正常,但在tomcat5.0下不能运行,请教各位...

bluemoon0001 2005-11-06 06:04:39
我写了一个serverlet(SampleServlet1.java)原文件如下:

package ch7;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class SampleServlet1 extends HttpServlet {
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
response.setContentType("text/html; charset=GB2312");
PrintWriter out = response.getWriter();

out.println("<html>");
out.println("<head><title>一个简单的Servlet</title></head>");
out.println("<body>");
out.println("大家好!<br>");
out.println("这是一个简单的Servlet!");
out.println("</body>");
out.println("</html>");
out.close();
}
}

我把SampleServlet1.java放到站点根目录下的ch7\WEB-INF\classes\ch7 中,用resin服务
我在IE中输入:http://lsl:8080/ch7/sampleservlet1 这时resin自动把java文件编译成class文件,显示结果运行正常

我有tomcat(端口为8081)服务在IE中输入:http://lsl:8081/ch7/sampleservlet1 报如下错误:
HTTP Status 404 - /ch7/sampleservlet1

--------------------------------------------------------------------------------

type Status report

message /ch7/sampleservlet1

description The requested resource (/ch7/sampleservlet1) is not available.


--------------------------------------------------------------------------------

Apache Tomcat/5.0.28

我以为resin编写的不能用到tomcat5.0下,所以我又重新按照书上说的tomcat下的编译方法重新编译一次,再运行,还是报上面的错误,可是用resin还是好好的。

我的tomcat的配置如下:

<Host name="localhost" debug="0" appBase="d:\jsp_web"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="/lyb" docBase="d:\jsp_web\lyb" debug="0" reloadable="true" crossContext="true"></Context>
<Context path="/ch7" docBase="d:\jsp_web\ch7" debug="0" reloadable="true" crossContext="true"></Context>
</Host>

我的ch7\WEB-INF\下的web.xml内容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>Servlet</display-name>
<servlet>
<servlet-name>SampleServlet1</servlet-name>
<servlet-class>ch7.SampleServlet1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SampleServlet1</servlet-name>
<url-pattern>/SampleServlet1</url-pattern>
</servlet-mapping>
</web-app>


请问是什么原因啊,请大家帮我看一下,如果50分不够的话,我可以再加分。
...全文
230 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
bluemoon0001 2005-11-06
  • 打赏
  • 举报
回复
interhanchi(Stallman'fans)
刚才我的tomcat莫名其妙的又好了,你说的没错,看到你的贴子后,我再再看,后来确实用的是SampleServlet1(这次是我复制的类文件名,没看你的贴子前我还没有找到为什么好了的原因),可是我用resin的时候根本不要分大小写,全小写一样可以的,真的搞不懂tomcat了,他好象比resin吊一点,呵呵。

我主要想学两种环境下通用的方法,谢了
AndyZhange 2005-11-06
  • 打赏
  • 举报
回复
重启tomcat试一下,或者你使用ant进行配置发布也可以
FYI
interhanchi 2005-11-06
  • 打赏
  • 举报
回复
这里错了:
http://lsl:8081/ch7/sampleservlet1

注意类名的大小写,应该是http://lsl:8081/ch7/SampleServlet1

81,092

社区成员

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

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