Java Servlet处理它不应该处理的请求
我有一个非常简单的servlet,可以处理对我应用程序根目录的请求。 它被部署到IBMWebSphere上 基本上,每次用户请求我的应用程序时,我都希望返回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
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,每个请求都将得到处理。@Akshayjainmyapp
是一个上下文根。你确定我需要将其添加到我的url模式吗?@Akshayjain我知道我可以添加类似于/home
的内容,然后它会被http://localhost:8888/myapp/home
,但这不是我的情况。我只需要请求我的应用程序的根目录。什么发布/维护级别?对于根目录页,您不需要此doget url模式方法,它将自动搜索index.jsp页面或在web.xml中添加此代码index.jsp
[