Java Servlet处理它不应该处理的请求

Java Servlet处理它不应该处理的请求,java,jsp,servlets,websphere,Java,Jsp,Servlets,Websphere,我有一个非常简单的servlet,可以处理对我应用程序根目录的请求。 它被部署到IBMWebSphere上 基本上,每次用户请求我的应用程序时,我都希望返回index.jsp,如: 代码如下: @WebServlet(urlPatterns = {"", "/"}) public class MainPageController extends HttpServlet { public void doGet(HttpServletRequest req, HttpServlet

我有一个非常简单的servlet,可以处理对我应用程序根目录的请求。 它被部署到IBMWebSphere上

基本上,每次用户请求我的应用程序时,我都希望返回
index.jsp
,如:

代码如下:

@WebServlet(urlPatterns = {"", "/"})
public class MainPageController extends HttpServlet {

    public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.getServletContext().getRequestDispatcher("/index.jsp").forward(req, resp);
    }
}
它可以正常工作(我正在获取JSP),但是当返回JSP页面时,JSP请求JS、CSS文件和那些请求(示例)都会被该servlet捕获

为什么我的servlet应该只处理
/
,还处理其他请求(比如
/js/main.js


web.xml
中没有什么特别之处。没有servlet映射,没有其他servlet,没有欢迎文件列表声明。

只使用以下URL模式:

@WebServlet(urlPatterns={”“})


它将只处理对应用程序上下文根的请求,而不是css或任何其他子文件夹。不要添加任何带有
/
的模式。

您必须将您的urlPattern限制为
urlPatterns={/myapp”}
或类似的内容,因为现在您只提供了“/”mns,每个请求都将得到处理。@Akshayjain
myapp
是一个上下文根。你确定我需要将其添加到我的url模式吗?@Akshayjain我知道我可以添加类似于
/home
的内容,然后它会被
http://localhost:8888/myapp/home
,但这不是我的情况。我只需要请求我的应用程序的根目录。什么发布/维护级别?对于根目录页,您不需要此doget url模式方法,它将自动搜索index.jsp页面或在web.xml中添加此代码
index.jsp
[