想着練習一下創建restful風格的網站呢,結果發現在jsp頁面上並不能靈活使用put和delete提交方式.下面我的解決辦法
一. form 只支持post和get兩種提交方式,只支持get提交方式##
二. 使用過濾器+form隱藏標簽的方式在后台改變form提交方式
a)在web.xml文件中添加過濾器###
<filter>
<filter-name>HiddenHttpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>HiddenHttpMethodFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
注意:web.xml文件的標簽有嚴格的前后順序,標簽的位置不能放錯,不然會提示
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,servlet-
mapping*,session-config?,mime-mapping*,welcome-file-list?,error-page*,taglib*,resource-env-
ref*,resource-ref*,security-constraint*,login-config?,security-role*,env-entry*,ejb-ref*,ejb-local-ref*)".
b)在jsp頁面的form中增加隱藏節點###
<input type="hidden" name="_method" value="put" />
value的值可以為"delete,put,get"等http允許的提交方式名