Java servlet不存在的过滤器';行不通
我想为一个特定的servlet使用一个过滤器。我的代码是:Java servlet不存在的过滤器';行不通,java,servlets,web-deployment,servlet-filters,Java,Servlets,Web Deployment,Servlet Filters,我想为一个特定的servlet使用一个过滤器。我的代码是: @WebFilter(dispatcherTypes = { DispatcherType.REQUEST, DispatcherType.FORWARD, DispatcherType.INCLUDE } , servletNames = { "myServlet" }) public class Im
@WebFilter(dispatcherTypes = {
DispatcherType.REQUEST,
DispatcherType.FORWARD,
DispatcherType.INCLUDE
}
, servletNames = { "myServlet" })
public class ImageProtect implements Filter
{
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException
{
System.out.println("Hello from Filter");
chain.doFilter(request, response);
}
}
我的问题是什么也没发生。不幸的是,在eclipse控制台中无法看到消息。servlet只是一个股票servlet。有什么问题吗?在web.xml文件中添加此筛选器
<filter>
<filter-name>ImageProtect</filter-name>
<filter-class>ImageProtect</filter-class>
</filter>
<filter-mapping>
<filter-name>ImageProtect</filter-name>
<url-pattern>/myServlet</url-pattern>
</filter-mapping>
图像保护
图像保护
图像保护
/myServlet
在web.xml文件中添加此筛选器
<filter>
<filter-name>ImageProtect</filter-name>
<filter-class>ImageProtect</filter-class>
</filter>
<filter-mapping>
<filter-name>ImageProtect</filter-name>
<url-pattern>/myServlet</url-pattern>
</filter-mapping>
图像保护
图像保护
图像保护
/myServlet
在web.xml文件中添加此筛选器
<filter>
<filter-name>ImageProtect</filter-name>
<filter-class>ImageProtect</filter-class>
</filter>
<filter-mapping>
<filter-name>ImageProtect</filter-name>
<url-pattern>/myServlet</url-pattern>
</filter-mapping>
图像保护
图像保护
图像保护
/myServlet
在web.xml文件中添加此筛选器
<filter>
<filter-name>ImageProtect</filter-name>
<filter-class>ImageProtect</filter-class>
</filter>
<filter-mapping>
<filter-name>ImageProtect</filter-name>
<url-pattern>/myServlet</url-pattern>
</filter-mapping>
图像保护
图像保护
图像保护
/myServlet
您应该尝试将此筛选器映射到每个网页@WebFilter(“/*”)
只需尝试在注释中添加此筛选器,而不是将筛选器映射到一个特定的servlet,即servletNames={“myServlet”}
。我想这可能会对您有所帮助您应该尝试将此筛选器映射到每个网页@WebFilter(“/*”)
只需尝试将其添加到注释中,而不是将筛选器映射到一个特定的servlet,即servletNames={“myServlet”}
。我想这可能会对您有所帮助您应该尝试将此筛选器映射到每个网页@WebFilter(“/*”)
只需尝试将其添加到注释中,而不是将筛选器映射到一个特定的servlet,即servletNames={“myServlet”}
。我想这可能会对您有所帮助您应该尝试将此筛选器映射到每个网页@WebFilter(“/*”)
只需尝试将其添加到注释中,而不是将筛选器映射到一个特定的servlet,即servletNames={“myServlet”}
。我想这可能会对您有所帮助为了在不使用web.xml的情况下实现这一点,您需要为servlet名称编写FQCN,而不仅仅是servlet名称“myServlet”。
如果您的“myServlet”文件位于“xxx.xxxx.xxxx”包中,则
不是“myServlet”,而是“xxx.xxxxx.xxxxx.myServlet”。
然后过滤器应该可以工作。为了在不使用web.xml的情况下工作,您需要为servlet名称编写FQCN,而不仅仅是servlet名称“myServlet”。 如果您的“myServlet”文件位于“xxx.xxxx.xxxx”包中,则 不是“myServlet”,而是“xxx.xxxxx.xxxxx.myServlet”。
然后过滤器应该可以工作。为了在不使用web.xml的情况下工作,您需要为servlet名称编写FQCN,而不仅仅是servlet名称“myServlet”。 如果您的“myServlet”文件位于“xxx.xxxx.xxxx”包中,则 不是“myServlet”,而是“xxx.xxxxx.xxxxx.myServlet”。
然后过滤器应该可以工作。为了在不使用web.xml的情况下工作,您需要为servlet名称编写FQCN,而不仅仅是servlet名称“myServlet”。 如果您的“myServlet”文件位于“xxx.xxxx.xxxx”包中,则 不是“myServlet”,而是“xxx.xxxxx.xxxxx.myServlet”。
然后过滤器应该可以工作。我甚至没有。我不知道这是否重要,但这是一个maven项目。您应该在项目的根目录(放置所有jsp文件等)中有一个
WEB-INF/WEB.xml
文件。本文说,我不需要对WEB.xml做任何事情就可以完成这项工作。那他们在撒谎吗?我还有我的过滤工作,过滤特定的jsp文件,而不是没有web.xml文件的servlers,我甚至没有。我不知道这是否重要,但这是一个maven项目。您应该在项目的根目录(放置所有jsp文件等)中有一个WEB-INF/WEB.xml
文件。本文说,我不需要对WEB.xml做任何事情就可以完成这项工作。那他们在撒谎吗?我还有我的过滤工作,过滤特定的jsp文件,而不是没有web.xml文件的servlers,我甚至没有。我不知道这是否重要,但这是一个maven项目。您应该在项目的根目录(放置所有jsp文件等)中有一个WEB-INF/WEB.xml
文件。本文说,我不需要对WEB.xml做任何事情就可以完成这项工作。那他们在撒谎吗?我还有我的过滤工作,过滤特定的jsp文件,而不是没有web.xml文件的servlers,我甚至没有。我不知道这是否重要,但这是一个maven项目。您应该在项目的根目录(放置所有jsp文件等)中有一个WEB-INF/WEB.xml
文件。本文说,我不需要对WEB.xml做任何事情就可以完成这项工作。那他们在撒谎吗?我还有我的过滤工作,它过滤特定的jsp文件,而不是servlers,甚至没有web.xml文件。如果您更喜欢在web.xml中配置您的WebFilters,那么这个解决方案可以工作。谢谢如果您不想在web.xml中配置WebFilters,那么这个解决方案可以工作。谢谢如果您不想在web.xml中配置WebFilters,那么这个解决方案可以工作。谢谢如果您不想在web.xml中配置WebFilters,那么这个解决方案可以工作。非常感谢。