【问题标题】:How to create url mapping in web.xml如何在 web.xml 中创建 url 映射
【发布时间】:2012-03-29 00:05:57
【问题描述】:
我想创建导致在 jsf2 中过滤的 url 模式。
我试过这段代码
<filter-mapping>
<filter-name>filter</filter-name>
<url-pattern>www.mysite.com</url-pattern>
</filter-mapping>
但我没有进入我的过滤器。
你能帮我吗?
谢谢
【问题讨论】:
标签:
java
jsf-2
servlet-filters
web.xml
【解决方案1】:
您希望映射 URL 路径,即跟随主机和 Web 应用程序名称的 URL 部分。
这是完整 URL 的样子:
http://www.mysite.com:8080/myapp/path1/path2/path3
在哪里:
8080 是一个端口 - 可选 - 默认 80
myapp - Web 应用程序的上下文路径。如果您的应用程序是应用服务器上的默认 Web 应用程序,则它为空。
path1/path2/path2 路径。这就是您使用<filter-mapping> 标签映射的内容。
因此,例如,如果您想通过过滤器对 JSP 页面的所有请求说:
<url-pattern>*.jsp</url-pattern>
如果您的 UI 在目录 ui 下,并且您想过滤此类请求,请说:
<url-pattern>/ui/*</url-pattern>
等等
【解决方案2】:
我希望我做对了:
您想将一个 URL 指向您在 JSF 2.0 Web 应用程序中已经创建的 ServletFilter?
您必须在您的 webapps web.xml 文件中注册您的过滤器并将其映射到您想要的 URL,例如
<!-- register your filter -->
<filter>
<filter-name>YourFilterName</filter-name>
<filter-class>com.your.filter.class</filter-class>
</filter>
<filter-mapping>
<filter-name>YourFilterName</filter-name>
<!-- Mapped to any URL -->
<url-pattern>/*</url-pattern>
</filter-mapping>