0

私はしばらくの間、Tomcat 用のこの Web xml ファイルに苦労してきました。

<context-param>
    <param-name>name</param-name>
    <param-value>Bob</param-value>
</context-param>

<servlet>
    <servlet-name>test</servlet-name>
    <servlet-class>TestServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>test</servlet-name>
    <url-pattern>/servlet/*</url-pattern>
</servlet-mapping>

を使用してテストするとき、このファイルが読み取られていることを知っています

public class TestServlet extends HttpServlet{
public void doGet(HttpServletRequest req, HttpServletResponse res){
    res.setContentType("text/html");

    String name = getServletContext().getInitParameter("name");

    PrintWriter out = null;
    try{
        out = res.getWriter();
    }catch(Exception e){}

    out.println("<html><head></head><body><img src=\"/twitter.png\"><p>Hi my name is " + name + "</p></body></html>");
}

}

context-param に入れた名前を読み取ることができます。皆さんへの質問は、URL のサーブレットにアクセスするために /servlet/ を経由する必要がないように、URL マッピングを作成するにはどうすればよいですか? 次のようなURLパターンを作成しようとすると

/test/*、website/test/TestServletと言ってもサーブレットにアクセスできません。ブラウザから 404 Not Found エラーが表示される

4

1 に答える 1

1

サーブレット クラスをパッケージに入れ、依存しないでくださいInvokerServlet。Tomcat 5.5 から無効になり、Tomcat 7.0 で削除されました。

10 ~ 15 年前のチュートリアルや書籍は読まないでください。テクノロジーは毎年変化します。

以下も参照してください。

于 2012-04-29T04:58:58.913 に答える