これは簡単な質問ですが、簡単な答えが見つかりませんでした。ユーザーが以下のいずれかの URL を要求すると、サーブレット BaseServlet が作成されました。
host
host/
host/BaseServlet
常に同じサーブレットを参照し、ホームページにリダイレクトする必要があります。
私が設定したとき
@WebServlet({"/BaseServlet", ""})
それだけ
host/
host/BaseServlet
作品
私が設定した場合
@WebServlet({"/BaseServlet", "", "/"})
BaseServlet は常にループでリクエストされます ...
なんで?
編集: BaseServlet は WEB-INF フォルダーの index.html hid に転送し、それだけです。
getServletContext().getRequestDispatcher("/WEB-INF/index.html").forward(request,response);
サーブレットの仕様には、「/ 文字のみを含む文字列は、アプリケーションの「デフォルト」サーブレットを示します」と記載されています。したがって、BaseServlet をデフォルトにしたいと考えています。うまくいかないのはなぜですか?