我的tomcat可以运行,但是却不能运行servlet,我自己在webapps里面新建了一个myapps的项目,目录结构是这样D:\tomcat\webapps\myapps\WEB-INF\classes,web.xml文件也配置了,是这样配置的
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<servlet> <servlet-name> HelloServlet </servlet-name> <servlet-class> HelloServlet </servlet-class> </servlet>
<servlet-mapping>
<servlet-name> HelloServlet </servlet-name>
<url-pattern> /servlet </url-pattern>
</servlet-mapping> </web-app>请问这个为什么不能运行呢,有时候会出500错误,有时候是出404错误,还有出503的错误的时候,请指教,我为这个已经烦了三天了,谢谢了,
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<servlet> <servlet-name> HelloServlet </servlet-name> <servlet-class> HelloServlet </servlet-class> </servlet>
<servlet-mapping>
<servlet-name> HelloServlet </servlet-name>
<url-pattern> /servlet </url-pattern>
</servlet-mapping> </web-app>请问这个为什么不能运行呢,有时候会出500错误,有时候是出404错误,还有出503的错误的时候,请指教,我为这个已经烦了三天了,谢谢了,
解决方案 »
- 在UNIX下 找不到tomcat工程里的的jar包
- Java中怎么给SqlServer中的表创建触发器?
- jsf如何不刷新页面执行js问题,请各位大侠帮忙。
- (急急急,菜鸟请教,两天来都没有解决)一个关于hibernate的问题:org.hibernate.MappingException: Error reading resource: com/genui
- 用一台计算机可以设置为,既能运行ASP.net和JSP程序吗?
- 请问怎么用javascript操作(添,删,改,查)XML?
- jspsmartupload上传到数据库的问题
- java
- 关于socket
- 请教有几个关于javamail的问题?
- jsp 计时器
- velocity变量的属性和方法是通过java定义还是velocity可动态产生?
(2)出错的url是什么?
(3)把你的servlet放到某个包下面试试,不要放在顶级。
<servlet-class>包名.HelloServlet </servlet-class>
type Exception report message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Class HelloServlet is not a Servlet
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Thread.java:717)
root cause
java.lang.ClassCastException: HelloServlet cannot be cast to javax.servlet.Servlet
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Thread.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.
以前学的时候也手动部署过,但是后来用了MyEclipse就变得懒了。
现在,有点忘了。惭愧!
有没有搞错,看看你继承的是什么类,HttpServlet
Class HelloServlet is not a Servlet;java.lang.ClassCastException检查类的继承列表,异常提示造型错误。
java.lang.ClassCastException: HelloServlet cannot be cast to javax.servlet.Servlet应该是你的这个类没有继承HttpServlet这个类吧。
Class HelloServlet is not a Servlet好久灭有来这里说几句了,可能最近又比较闲了,楼主这个问题能困扰三天?我真是佩服你,呵呵,没有一点其他的意思,就是觉得,解决问题,你就直接往解决问题的方向考虑,他抛出了什么异常,一看就知道,这里当然不仅仅是从这里来说,不知道用的何种开发工具,你直接设置一个断点,一运行,能跳进断点吗?我想肯定不能,直接就不是这里的问题,是你引用有问题吧,web.xml写serverlet映射,希望检查一下。
javax.servlet.ServletException: Class HelloServlet is not a Servlet
HelloServlet 不是一个Servlet
java.lang.ClassCastException: HelloServlet cannot be cast to javax.servlet.Servlet
HelloServlet 不能转换成javax.servlet.Servlet这个类型你的代码有没有继承HttpServlet?或者继承GenericServlet?或者实现Servlet接口?
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloServlet extends HttpServlet { @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
System.out.println("HelloServlet!");
}
}
<servlet>
<servlet-name>ClassroomOP</servlet-name>
<servlet-class>
com.exlesson.servlet.enterprise.common.Operation
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ClassroomOP</servlet-name>
<url-pattern>/enterprise/classOP</url-pattern>
</servlet-mapping><servlet-class>里面写绝对路径
现在还是报javax.servlet.ServletException: Class HelloServlet is not a Servlet?
html也是在myapps中么?
还有你是怎么访问这个servlet的?url是怎么写的?
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5"> <display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description><servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
</web-app>
给分吧