Forms 使用rest服务时,表单无法将参数传递到requestparam

Forms 使用rest服务时,表单无法将参数传递到requestparam,forms,jsp,rest,spring-mvc,Forms,Jsp,Rest,Spring Mvc,我试图将表单中的一些值发送到响应库,以便对这些值执行一些操作。但这些值根本没有被转发到该处理程序。我找不到理由。 这里有什么问题 我的经纪人 @RequestMapping(value=“/redemptionRedirect1/{userId}”,method=RequestMethod.GET) @应答器 公共事务提交请求(@PathVariable(“userId”)长userId、@RequestParam(value=“amount”)字符串amount1、@RequestParam(

我试图将表单中的一些值发送到响应库,以便对这些值执行一些操作。但这些值根本没有被转发到该处理程序。我找不到理由。 这里有什么问题

我的经纪人

@RequestMapping(value=“/redemptionRedirect1/{userId}”,method=RequestMethod.GET) @应答器 公共事务提交请求(@PathVariable(“userId”)长userId、@RequestParam(value=“amount”)字符串amount1、@RequestParam(“bankaccount”)int bankaccount、@RequestParam(“demataccount”)int demataccount) { 布尔标志; 双倍金额=Double.parseDouble(amount1); 事务=新事务(); transaction.setBankAccount(transactionService.getBank(bankaccount)); transaction.setDematAccount(transactionService.getDemat(demataccount)); 交易量。设置交易量(金额); Authentication auth=SecurityContextHolder.getContext().getAuthentication(); 字符串名称=auth.getName(); User=userService.getUser(名称); transaction.setUser(用户); flag=transactionService.addRedemptionTransactions(交易); 退货交易; } 我的JSP


在此处插入标题
数量:
银行账户:
Demat账户:

表单通过每个输入的name属性进行自身序列化。

因此,首先,您可以运行浏览器的开发人员工具功能,检查值是否添加到请求中,或者(这仅适用于GET请求)检查值是否在提交后添加到URL中。如果没有-为每个相应的输入添加name属性。

您的表中是否有NOTNULL属性?我想您现在是正确的,值正在传递到url中,但错误已更改为此。此请求标识的资源只能根据请求“accept”标头生成具有不可接受特征的响应。太好了!这意味着这条路是正确的。你能试着用POST代替GET吗?(在这两种情况下,JSP端和Handler方法属性) @RequestMapping(value="/redemptionRedirect1/{userId}", method=RequestMethod.GET) @ResponseBody public Transaction submitRedemption(@PathVariable("userId") long userId,@RequestParam(value="amount") String amount1,@RequestParam("bankaccount") int bankaccount,@RequestParam("demataccount") int demataccount) { boolean flag; Double amount=Double.parseDouble(amount1); Transaction transaction=new Transaction(); transaction.setBankAccount(transactionService.getBank(bankaccount)); transaction.setDematAccount(transactionService.getDemat(demataccount)); transaction.setTransactionAmount(amount); Authentication auth = SecurityContextHolder.getContext().getAuthentication(); String name = auth.getName(); User user=userService.getUser(name); transaction.setUser(user); flag = transactionService.addRedemptionTransactions(transaction); return transaction; }
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form  action="redemptionRedirect1/${user.userId}.htm" method="get">
<table>
 <tr><td>Amount: </td><td><input id="amount" type="text" maxlength="5" value='<c:out     value="${amount}"/>' placeholder='<c:out value="${amount}"/>'/></td></tr>
 <tr><td>
 Bank Accounts: </td><td><select id="bankaccount" >
 <c:forEach items="${baccounts}" var="account">
  <option value='<c:out value="${account.accountNumber}"/>'>
 <c:out value="${account.name}"/>
 </option>
 </c:forEach>
 </select>
 </td></tr>
   <tr><td>Demat Account: </td><td><input  id="demataccount" type="text"  placeholder='<c:out value="${daccount.dematName}"/>' value='<c:out  value="${daccount.dematAccountNumber}"/>'/></td></tr>
 <tr><td><input type="submit" value="Confirm"/></td></tr>
 </table>
 </form>
 </body>
 </html>