0

私はサーブレットの初心者です。Eclipse で動的 Web プロジェクトを作成しました。私のプロジェクトには次のファイルがあります

home.html validateServlet.java

検証済みのサーブレットを home.html フォームのアクションとして定義しました。ただし、実行すると、httpステータス404が表示されます。以下は私のプロジェクトの階層です

Project
Java Resources
   src
     com.servlets
    ValidateServlet.java
build
WebContent
    META-INF
    WEB-INF
        web.xml
    hello.html

私の web.xml の内容は次のとおりです。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web- app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>Website</display-name>
<servlet>
<description></description>
<display-name>ValidateServlet</display-name>
<servlet-name>validate</servlet-name>
<servlet-class>com.oracle.coen235.servlets.ValidateServlet</servlet-class>
</servlet>
</web-app>

私の hello.html では、アクションは次のように指定されています。

問題は何ですか?サーブレットのクラス ファイルを生成できないと思います。誰でもこの問題を解決できますか?

4

1 に答える 1

1

あなたは物事を混同しているようです。

<servlet-class>com.oracle.coen235.servlets.Validate</servlet-class>

完全なクラス名をリストする必要があります。パッケージ名が表示されません。

そのはず

<servlet-class>com.oracle.coen235.servlets.ValidateServlet</servlet-class>

またはあなたのパッケージ名が何であれ。

サーブレットをパスにマッピングしていますか? 次のようになります。

 <servlet-mapping>
      <servlet-name>validate</servlet-name>
      <url-pattern>/validate</url-pattern>
 </servlet-mapping>

または、サーブレット クラスに直接注釈を追加します。

于 2012-11-24T23:02:27.517 に答える