HTTP Status 405 - Request method 'POST' not supported (Spring MVC)

转载 2015年11月20日 11:43:34

HTTP Status 405 - Request method 'POST' not supported (Spring MVC)

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Insert title here</title>
            <style>
            .error { color: red; }
            </style>

        <script>
            function repopulate(){  
                document.deliveryForm.submit();
            }

            function setFalse(){
                document.getElementById("hasId").value ="false";
                document.deliveryForm.submit();
                // document.submitForm.submit(); (This was causing the error)

            }
        </script>

    </head>
    <body>

        <h1>Create New Delivery</h1>

        <c:url var="saveUrl" value="/test/delivery/add" />
        <form:form modelAttribute="deliveryDtoAttribute" method="POST" action="${saveUrl}" name="deliveryForm">
            <table>


                <tr>
                    <td><form:hidden id="hasId" path="hasCustomerName" value="true"/></td>
                </tr>

                <tr>
                    <td>Customer Name</td>
                    <td><form:select path="customerName" onChange="repopulate()">
                        <form:option value="" label="--- Select ---" />
                        <form:options items="${customerNameList}" />
                        </form:select>
                    </td>
                    <td><form:errors path="customerName" cssClass="error" /></td>
                </tr>

                <tr>
                    <td>Customer Country</td>
                    <td><form:select path="customerCountry">
                        <form:option value="" label="--- Select ---" />
                        <form:options items="${customerCountryList}" />
                        </form:select>
                    </td>
                    <td><form:errors path="customerCountry" cssClass="error" /></td>
                </tr>

        </form:form>

        <form:form name="submitForm">
        <input type="button" value="Save" onClick="setFalse()"/>
        </form:form>

    </body>
</html>

@RequestMapping(value = "/add", method = RequestMethod.GET)
    public String getDelivery(ModelMap model) {
        DeliveryDto deliveryDto = new DeliveryDto();

        model.addAttribute("deliveryDtoAttribute", deliveryDto);
        model.addAttribute("customerNameList",
                customerService.listAllCustomerNames());
        model.addAttribute("customerCountryList", customerService
                    .listAllCustomerCountries(deliveryDto.getCustomerName()));
        return "new-delivery";
    }

    // I want to enter this method if hasId=true which means that a value in the CustomerName 
    // drop down list was selected. This should set the CountryList to the corresponding values 
    // from the database. I want this post method to be triggered by the onChange in the jsp page

    @RequestMapping(value = "/add", method = RequestMethod.POST, params="hasCustomerName=true")
    public String postDelivery(
            @ModelAttribute("deliveryDtoAttribute") DeliveryDto deliveryDto,
            BindingResult result, ModelMap model) {


            model.addAttribute("deliveryDtoAttribute", deliveryDto);

            model.addAttribute("customerNameList",
                    customerService.listAllCustomerNames());
            model.addAttribute("customerCountryList", customerService
                    .listAllCustomerCountries(deliveryDto.getCustomerName()));

            return "new-delivery";
    }

    // This next post method should only be entered if the save button is hit in the jsp page

    @RequestMapping(value = "/add", method = RequestMethod.POST, params="hasCustomerName=false")
    public String postDelivery2(
            @ModelAttribute("deliveryDtoAttribute") @Valid DeliveryDto deliveryDto,
            BindingResult result, ModelMap model) {

        if (result.hasErrors()) {

            model.addAttribute("deliveryDtoAttribute", deliveryDto);

            model.addAttribute("customerNameList",
                    customerService.listAllCustomerNames());
            model.addAttribute("customerCountryList", customerService
                    .listAllCustomerCountries(deliveryDto.getCustomerName()));

            return "new-delivery";
        } else {

            Delivery delivery = new Delivery();

            //Setters to set delivery values

            return "redirect:/mis/home";
        }

    }




解决HTTP Status 405 - HTTP method POST is not supported by this URL 详解方案

报这个错误提示有两方面问题:1、在servlet中没有调用post()方法引起的2、在serlvet中跳转没有用外跳(response.sendRedirect())我在做项目时,遇到的是1的错误,在...
  • xiangsuixinsheng
  • xiangsuixinsheng
  • 2011年07月09日 15:09
  • 91554

在pring框架出现 405 request method post not supported 的解决方法

在pring框架中当使用post请求服务,然后请求成功转到一个静态文件,如html,htm等网页时。页面出现405 request method post not supported错误...
  • wang623145708
  • wang623145708
  • 2014年07月08日 14:47
  • 48442

HTTP Status 405 -- HTTP method POST is not supported by this URL

package web.filter; import java.io.IOException; import java.io.PrintWriter; import javax.servlet...
  • WlHelloWorld
  • WlHelloWorld
  • 2013年07月10日 16:43
  • 5941

jsp spring mvc 上传时HTTP Status 405 - Request method 'GET' not supported是什么原因

jsp spring mvc 上传时HTTP Status 405 - Request method 'GET' not supported是什么原因 405:用来访问本页面的 HTTP...
  • YINYANLI123456
  • YINYANLI123456
  • 2015年11月20日 09:54
  • 1555

Spring MVC出现POST 400 Bad Request &405 Request method 'GET' not supported

首先描述一下出现错误的情景: 我刚学springmvc,想做一个登录界面的东西。然后试着写了一个controller如下: @RequestMapping(value = "/login", me...
  • dingchenxixi
  • dingchenxixi
  • 2015年11月25日 11:16
  • 6960

springmvc中前台页面form表单提交方法为post,但是报HTTP Status 405 - Request method 'GET' not supported

今天被一个小bug给难住了,虽然最后解决了,但是很影响心情。所以记录一下,警醒自己 在springmvc中前台JSP页面用form方法提交到后台方法中,form的method设置为post,但是总是提...
  • dan_0926
  • dan_0926
  • 2017年12月04日 14:06
  • 83

request method 'post' not supported

最近做j2ee开发时,使用spring框架,用jquery的ajax方法提交表单时,遇到了request method 'post' not supported这个警告而且数据传送不成功,于是在百度上...
  • huanyingfengxing
  • huanyingfengxing
  • 2012年11月01日 10:29
  • 22800

从 MVC 到前后端分离

从 MVC 到前后端分离 1 理解 MVC MVC 是一种经典的设计模式,全名为 Model-View-Controller,即 模型-视图-控制器。 其中,模型 是用于封装数据的载体,例如,在...
  • z69183787
  • z69183787
  • 2016年11月09日 18:53
  • 536

vue中的axios.post使用json数据传输,出现请求头字段内容类型是不被允许的情况的解决方案

如何解决出现AXIOS的Request header field Content-Type is not allowed by Access-Control-Allow-Headers in pr...
  • qq_39985511
  • qq_39985511
  • 2018年01月01日 20:21
  • 178

METHOD的GET和POST属性的区别

1、Get 方法通过 URL 请求来传递用户的数据,将表单内各字段名称与其内容,以成对的字符串连接,置于 action 属性所指程序的 url 后,如[url]http://www.mdm.com/t...
  • fuyuehua22
  • fuyuehua22
  • 2014年08月21日 09:01
  • 4532
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HTTP Status 405 - Request method 'POST' not supported (Spring MVC)
举报原因:
原因补充:

(最多只允许输入30个字)