Jsf 过滤器在与OmniFacesView一起使用时停止工作
我使用的是Glassfish 4.1.1、JSF Mojarra 2.2、omnifaces 2.4、primefaces 6.0和EE7。 我有以下登录过滤器:Jsf 过滤器在与OmniFacesView一起使用时停止工作,jsf,servlet-filters,omnifaces,Jsf,Servlet Filters,Omnifaces,我使用的是Glassfish 4.1.1、JSF Mojarra 2.2、omnifaces 2.4、primefaces 6.0和EE7。 我有以下登录过滤器: @WebFilter(filterName = "LoginFilter", urlPatterns = {"/secure/*"}) public class LoginFilter extends HttpFilter { ... } 我开始使用Omnifaces无扩展URL,现在过滤器不再运行。My web.xml: org
@WebFilter(filterName = "LoginFilter", urlPatterns = {"/secure/*"})
public class LoginFilter extends HttpFilter {
...
}
我开始使用Omnifaces无扩展URL,现在过滤器不再运行。My web.xml:
org.omnifaces.FACES\u视图\u扫描\u路径
/*.xhtml
org.omnifaces.FACES\u视图\u扫描视图\u始终\u无扩展
真的
org.omnifaces.FACES\u视图\u扩展\u操作
将\u重定向到\u无扩展
我对/secure/home的请求不能方便地更改为/home。我不想将URL模式更改为“/*”。
我应该如何使用无扩展重新运行筛选器?我发布了一个答案,但我删除了它,因为根据目前提供的信息,这毕竟不是默认行为。也许您已经将
org.omnifaces.FACES\u VIEWS\u DISPATCH\u方法
上下文参数设置为FORWARD
?如果是,这意味着过滤器应配置为侦听dispatcherTypes=FORWARD
.Hi。谢谢回复。不,我的web.xml中没有设置此参数。我用DO_FILTER值添加了这个参数,但没有成功。我发布了一个答案,但我删除了它,因为根据目前提供的信息,这毕竟不是默认行为。也许您已经将org.omnifaces.FACES\u VIEWS\u DISPATCH\u方法
上下文参数设置为FORWARD
?如果是,这意味着过滤器应配置为侦听dispatcherTypes=FORWARD
.Hi。谢谢回复。不,我的web.xml中没有设置此参数。我用DO_FILTER值添加了这个参数,但没有成功。
<context-param>
<param-name>org.omnifaces.FACES_VIEWS_SCAN_PATHS</param-name>
<param-value>/*.xhtml</param-value>
</context-param>
<context-param>
<param-name>org.omnifaces.FACES_VIEWS_SCANNED_VIEWS_ALWAYS_EXTENSIONLESS</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>org.omnifaces.FACES_VIEWS_EXTENSION_ACTION</param-name>
<param-value>REDIRECT_TO_EXTENSIONLESS</param-value>
</context-param>