0

こんにちは、jetty サーブレットを使用しています。私は次の構造を持っています。

戦争/web-inf/web.xml

war/classes/servlet.class (呼び出したいサーブレット)

戦争/*.html

問題:

ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);

    context.setContextPath("/");
    context.addServlet(new ServletHolder(new GreetingServiceImpl()), "/*");
    server.setHandler(context);
    try {
        server.start();

誰かがcontextPathがどうあるべきか教えてもらえますか? http エラー 404 が表示されます: アクセスに問題があります ./

私は助けが必要です。ありがとうございました

4

1 に答える 1

1

これは、Web アプリケーションがリッスンするドメインの後の URL 内のパスです。

コンテキスト パスを に設定すると、Web アプリケーションはhttp://example.com/foo/fooでリッスンし、すべてのページ/サーブレットが./foo

ここでは、コンテキストを/に設定しています。これは、webapp がhttp://example.comでリッスンする必要があることを意味します。また、すべてのリクエストをインターセプトする新しいサーブレットも作成しています ( /*)。したがって、 http://example.comを通過するすべてのリクエストは、このサーブレットを通過します。

404 が返された場合は、リクエスト URL が間違っているか、サーブレットが起動に失敗しています。

于 2010-08-10T11:47:48.507 に答える