您的位置:首页 > 编程语言 > Java开发

java中web.xml的url-pattern配置问题

2012-09-20 14:10 411 查看
web.xml配置问题

学习过mvc之后就不想让自己以前用jsp、servlet那般赤裸裸得存在了,于是打算用FrontController来控制前台页面的跳转,没想到在配置web.xml时崩溃了:

<servlet>

<servlet-name>frontcontroller</servlet-name>

<servlet-class>cn.com.web.FrontController</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>frontcontroller</servlet-name>

<url-pattern>/*.do</url-pattern>

</servlet-mapping>

报错:

严重: Parse error in application web.xml

java.lang.IllegalArgumentException: Invalid <url-pattern> /u2_Sec/*.do in servlet mapping


nm,配置过滤器时都没问题,如:

<filter-mapping>

<filter-name>encode</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

求助百度,没想到是“/*.do”的问题,好像是/和*.do不能同时使用,于是去掉”/”,世界太平了。

看来得研究一下web.xml的配置细节啊——

web.xml中<url-pattern>的3种写法
完全匹配

<url-pattern>/test/list.do</url-pattern>

目录匹配

<url-pattern>/test/*</url-pattern>

扩展名匹配

<url-pattern>*.do</url-pattern>

servlet-mapping的重要规则:

☆ 容器会首先查找完全匹配,如果找不到,再查找目录匹配,如果也找不到,就查找扩展名匹配。

☆ 如果一个请求匹配多个“目录匹配”,容器会选择最长的匹配。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: