首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到我的servlet

找不到我的servlet
EN

Stack Overflow用户
提问于 2013-10-14 09:54:46
回答 3查看 81关注 0票数 0

我第一次尝试使用servlet (在业余时间,我是一个非常糟糕的web开发人员)。

我创建了一个servlet,并将它与所有其他类(javabean)放在一个文件夹中。我把我的课程放在这里的包叫做Jeans。

我创建了一个页面,在servlet提交时调用它(在按下submit按钮之后)。

代码语言:javascript
复制
<form action="prova" method="post" id="FormNews" name="FormNews">
//prova is the name of the servlet

我可以看到在web.xml中有我的servlet

代码语言:javascript
复制
   <servlet>
    <description></description>
    <display-name>prova</display-name>
    <servlet-name>prova</servlet-name>
    <servlet-class>prova</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>prova</servlet-name>
    <url-pattern>/prova</url-pattern>
  </servlet-mapping>

但是,当我试图在浏览器上看到servlet时,我会得到以下错误

代码语言:javascript
复制
javax.servlet.ServletException: Wrapper cannot find servlet class prova or a class it depends on
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    java.lang.Thread.run(Unknown Source)

我应该怎么做才能使用servlet?也许我得找个地方走它的路。可能TomCat看不到我的servlet在my _web_application_name/牛仔裤文件夹中

谢谢你们

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-10-14 10:28:45

代码语言:javascript
复制
The package where i put my classes is called Jeans  

然后是servlet prova.java的第一行。

代码语言:javascript
复制
 package jeans; //use small case package name

 public class Prova extends HttpServlet { //see the class name, this is by java naming conventions
 ....
 .......
 }

还有,web.xml

代码语言:javascript
复制
 <servlet>
  <description></description>
  <display-name>Prova</display-name>
  <servlet-name>Prova</servlet-name>
  <servlet-class>jeans.Prova</servlet-class>
 </servlet>
<servlet-mapping>
  <servlet-name>Prova</servlet-name>
  <url-pattern>/Prova</url-pattern>
</servlet-mapping>

有用链接:

  1. java-命名-约定
  2. servlets信息
票数 0
EN

Stack Overflow用户

发布于 2013-10-14 10:21:17

您的类在类路径中不可用。确保它的可用性。如果放入包,请确保使用包声明对其进行编译。手动复制类文件后,重新启动应用程序服务器。在Web.xml中,用包名声明类。

您可能需要一个关于如何编写servlet的教程。http://www.mkyong.com/servlet/a-simple-servlet-example-write-deploy-run/

票数 0
EN

Stack Overflow用户

发布于 2013-10-14 10:23:05

您必须将完全限定的class名称放入<servlet-class>

例子:

代码语言:javascript
复制
  <servlet-class>examples.servlets.HelloWorld</servlet-class>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19357635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档