小编典典

Java Spring @RequestParam JSP

jsp

当前控制器代码:

    @RequestMapping(value = "/city", method = RequestMethod.POST)
public String getWeather(@RequestParam("city") int city_id,
                             @RequestParam("text") String days, //this gives errrors, when i remove this line, then it is okay
                             Model model) {
    logger.debug("Received request to show cities page");
    //int city =

    // Attach list of subscriptions to the Model
    model.addAttribute("city",  service.getCity(city_id));

    // This will resolve to /WEB-INF/jsp/subscribers.jsp
    return "city";
}

这是我的JSP文件(视图):

    <form method="post" action="/spring/krams/show/city">
Vali linn
<select name="city">
    <c:forEach items="${cities}" var="city">
        <option value="<c:out value="${city.id}" />"><c:out value="${city.city}" /></option>
    </c:forEach>
</select><br>
Vali prognoos N päeva kohta(kirjuta 1 hetkese ilma jaoks)
<input type="text name="text">
<input type="submit" value="Test" name="submit" />
</form>

我想从名为TEXT的文本框中获取一个值,但是当我按下Submit按钮时,我得到了

HTTP Status 400 - The request sent by the client was syntactically incorrect ().

阅读 280

收藏
2020-06-10

共1个答案

小编典典

我正在添加此答案,以便您可以接受它,正如Bozho建议的那样:)

HTML中似乎有一个问题: <input type="text name="text">

将其更改为 <input type="text" name="text">并尝试。

我认为语法上不正确意味着在@RequestParam批注中指定的名称与请求参数名称不匹配…可能是由于上述HTML错误。

2020-06-10