Java servlet:frontController的URL模式`/`覆盖默认的静态文件服务
我正在使用tomcat的gretty和running应用程序
我唯一的servlet是:
@WebServlet(name = "frontServlet", urlPatterns = arrayOf("/"))
class FrontServlet : HttpServlet() {
override fun doGet(req: HttpServletRequest, resp: HttpServletResponse) {
Router.doGet(req, resp)
}
...
}
我的静态资产在WebContent/public
下
但任何请求(包括指向资产的路径)都由FrontServlet处理
如果我将FronServlet的url模式设置为特定的模式,则默认静态服务可以工作(但我需要它来捕获除对静态文件的请求之外的所有请求)
我应该怎么做?有没有办法从自定义servlet调用服务器的默认静态文件处理程序
# 1 楼答案
在与如此古老的技术进行斗争并使用其他一些答案后,我找到了两种解决方案: 1.在FrontServlet doGet方法中:
@WebFilter(filterName=“frontFiletr”,urlPatterns=arrayOf(“/*”)
类FrontFilter:筛选器{
}