新聞中心
首先先貼原代碼和報(bào)錯(cuò)提示
1.在web.xml配置文件中配置HiddenHttpMethodFilter,它的作用是能把POST請(qǐng)求轉(zhuǎn)換為PUT或DELETE請(qǐng)求。
HiddenHttpMethodFilter
org.springframework.web.filter.HiddenHttpMethodFilter
HiddenHttpMethodFilter
/*
2.配置視圖解析器
3.在JSP頁(yè)面中發(fā)送PUT或DELETE請(qǐng)求。注意表單中method必須為post,隱藏域中name和value屬性如下所示:
4.在目標(biāo)方法中接收請(qǐng)求。
@RequestMapping("/SpringMVC")
@Controller
public class SpringMVCTest {
private static final String Success = "Success";
@RequestMapping(value="/testRest/{id}", method=RequestMethod.PUT)
@ResponseBody
public String testRestPut(@PathVariable Integer id) {
System.out.println("testRest Put:"+id);
return Success;
}
@RequestMapping(value="/testRest/{id}", method=RequestMethod.DELETE)
public String testRestDelete(@PathVariable Integer id) {
System.out.println("testRest Delete:"+id);
return Success;
}
}無(wú)錫婦科醫(yī)院排行榜 http://mobile.chfk120.com
4.正常來(lái)說(shuō)是可以跳轉(zhuǎn)到Success.jsp頁(yè)面的,但是卻出現(xiàn)了錯(cuò)誤(我就只貼文字了)
HTTP Status 405 – Method Not Allowed
Type Status Report
消息 JSP 只允許 GET、POST 或 HEAD。Jasper 還允許 OPTIONS
描述 請(qǐng)求行中接收的方法由源服務(wù)器知道,但目標(biāo)資源不支持
Apache Tomcat/9.0.20
5.原因分析:JSP只支持GET與POST請(qǐng)求,而我們發(fā)起的是REST風(fēng)格的請(qǐng)求,同樣調(diào)用了PUT與DELETE方法,JSP無(wú)法解析。
6.解決方法:為controller里的testRestPut和tsetRestDelete方法添加**@ResponseBody注解**。如下所示:
@RequestMapping(value="/testRest/{id}", method=RequestMethod.PUT)
@ResponseBody
public String testRestPut(@PathVariable Integer id) {
System.out.println("testRest Put:"+id);
return Success;
}
@RequestMapping(value="/testRest/{id}", method=RequestMethod.DELETE)
@ResponseBody
public String testRestDelete(@PathVariable Integer id) {
System.out.println("testRest Delete:"+id);
return Success;
}
然后上網(wǎng)查閱了@responseBody注解的作用,這里大致貼一段:
-)將controller的方法返回的對(duì)象通過適當(dāng)?shù)霓D(zhuǎn)換器轉(zhuǎn)換為指定的格式之后,寫入到response對(duì)象的body區(qū),通常用來(lái)返回JSON數(shù)據(jù)或者是XML數(shù)據(jù)。添加此注解后,直接將數(shù)據(jù)寫入到輸入流,不會(huì)再走視圖處理器。他的效果等同于通過response對(duì)象輸出指定格式的數(shù)據(jù)。
添加注解之后順利解決問題。
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國(guó)云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。
網(wǎng)站欄目:SpringMVC處理Put或Delete請(qǐng)求報(bào)錯(cuò)及解決方法-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://www.dlmjj.cn/article/egcod.html