HTTP状态400-所需的字符串参数'xx'不存在

我正在尝试制作一个简单的 应用程序。

这是我的 HelloController

package com.springapp.mvc;

import org.springframework.stereotype.Controller;

import org.springframework.ui.ModelMap;

import org.springframework.web.bind.annotation.PathVariable;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.bind.annotation.RequestParam;

@Controller

@RequestMapping("/")

public class HelloController {

@RequestMapping(method = RequestMethod.GET)

public String printWelcome(ModelMap model,@RequestParam(value = "xx",required

=true)String xx) {

model.addAttribute("message", "Hello Mahdi");

return "hello";

}

}

和 文件:

<html>

<body>

<h1>${message}</h1>

<form action="/" method="GET">

<input type="text" name="xx">

<button type="submit">submit</button>

</form>

</body>

</html>

尝试运行应用程序时出现以下错误:

HTTP Status 400 - Required String parameter 'xx' is not present

我是 新手,请帮助。

回答:

您的用例需要执行以下两项操作:

  1. 查看和编辑 <form>
  2. 提交 <form>

这应该映射到两个处理程序方法

@RequestMapping(method = RequestMethod.GET)

public String getForm() {

model.addAttribute("message", "Hello Mahdi");

return "hello"; // assume hello.jsp

}

@RequestMapping(params={"submit"}, method = RequestMethod.GET)

public String printWelcome(ModelMap model, @RequestParam(value = "xx",required=true) String xx) {

/*

Do something with submitted parameter

and return some view name

*/

}

当您想要访问表单时,您可以进行GET

/。提交表单时,您也可以对进行GET操作/,但是您还需要其他方法来区分请求。在这里,我用过params="submit"。因此,您需要将提交输入更改为

<input type="submit" name="submit">submit</button>

或者只是将您已经在使用的参数(params={"xx"})放进去。

以上是 HTTP状态400-所需的字符串参数&#39;xx&#39;不存在 的全部内容, 来源链接: utcz.com/qa/422397.html

回到顶部