如何打开一个servlet页面webapps \ classes \ HelloWorld?

时间:2013-10-08 19:17:25

标签: java html5 servlets tomcat7 web.xml

我已将HTML页面放在Tomcat的webapps\root\WebForte文件夹中。我想打开一个servlet页面webapps\classes\HelloWorld

我已在web.xml中提到过以下内容:

<servlet>
    <servlet-name>HelloWorld</servlet-name>
    <servlet-class>HeloWorld</servlet-class>
 </servlet>
 <servlet-mapping>
    <servlet-name>HelloWorld</servlet-name>
    <url-pattern>/classes/HelloWorld</url-pattern>
 </servlet-mapping>

并从以下

调用该类
<form  id="docContainer" action = "HelloWorld" method="POST">

我收到HTTP Status 404 - /WebForte/HelloWorld错误。有人可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

我认为您不需要根目录,只需将您的webapp放在“webapps”

根据你的web.xml访问yor servlet,你需要这个url:

/类/ HelloWorld的

换句话说,只要tomcat看到“/ classes / HelloWorld”,它就会将它映射到你的servlet并在那里发送请求。

我的猜测是根据404错误你的网址应该是/ WebForte / classes / HelloWorld

还要记住“/ classes / HelloWorld”是任意的,你把wahtever放在那里

要弄清楚正在发生什么,请尝试使用浏览器中的网址

The directory structure should look like this

webapps     
| 
- WebForte
  |
  - WEB-INF
    |
     -web.xml
     -classes
       |
         -HelloWorld.class

答案 1 :(得分:0)

您需要将参数<display-name>放在您的定义中,如下所示:

 <servlet>
        <display-name>HelloWorld</display-name>
        <servlet-name>HelloWorld</servlet-name>
        <servlet-class>com.yourpackage.servlet.HelloWorld</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>HelloWorld</servlet-name>
        <url-pattern>/HelloWorld</url-pattern>
    </servlet-mapping>

并且可以看到您的servlet。