I am new to spring and I am facing the following issue:
我可以通过创建一个新的控制器和ModelAndView方法来进行POST调用,但现在我又面临一个问题,数据无法从JSP传递到控制器。我的JSP代码是:
form:form method="POST" action="UserOperation"
modelAttribute="DebitModel">
<h3>Debit</h3>
<c:if test="${!empty listAccounts}">
<select name="item" id="account_dropdown"
onchange="changeAccountDetails(this.options[this.selectedIndex].value)">
<c:forEach items="${listAccounts}" var="account">
<option
value="${account.accID},${account.acctype},${account.balance}">AccID:
${account.accID} Balance: ${account.balance}</option>
</c:forEach>
</select>
<br>
<br>
<label ><b>Account ID: </b></label>
<label id="accIdText" path="accID">${listAccounts[0].accID}</label>
<label><b>Account Type: </b></label>
<label id="accTypeText" path="acctype">${listAccounts[0].acctype}</label>
<label><b>Balance: </b></label>
<label id="accBalText" path="balance">${listAccounts[0].balance}</label>
</c:if>
<br> <br> Enter Amount<input type="text"
id="amount" width="80" path="amount"></input> <br> <br>
<input type="submit" value="Debit"></input>
</form:form>
有一个名为DebitModel的正常bean类。我尝试在许多地方搜索未传递的数据,并找到了提到的form:input解决方案,但如果使用此方法,则没有绑定FoundException'java.lang.IllegalStateException:bean名称'debitmodel'的BindingResult和plain target object都不作为请求属性可用',即使存在<%@taglib uri=“http://www.springframework.org/tags/form”prefix=“form”%>。
The Controller class Code:
@Controller
@RequestMapping(value = "/UserOperation")
public class DebitController {
@Autowired
private AccountService mAccountService;
@RequestMapping(method = RequestMethod.POST)
public ModelAndView registerCustomer(@ModelAttribute("DebitModel") DebitModel debitModel, BindingResult result,
HttpServletRequest request) throws NoSuchAlgorithmException, FileNotFoundException {
ModelAndView modelAndView = new ModelAndView();
System.out.println("data------------------------" + debitModel.toString());
return modelAndView;
}
}
显示您的控制器类。
看来您在路径定义中使用了错误的模式。尝试在jsp和控制器级别将“/userHomeDebit”更改为“userHomeDebit”。
这可以在您提交表单时与浏览器url进行核对。让我们认为您的应用程序名是SampleApplication,那么url将是
http://localhost:8080/SampleApplication
然后,如果使用/userHomeDebit作为控制器路径映射,则url将发生如下更改。
http://localhost:8080/userHomeDebit
在我的控制器中,我有一个用以下映射映射的方法:@PostMapping(“/”)。 此方法需要一个我试图捕获的请求主体,如下所述: 使用这两种方法对我来说都很好,我只是进退两难,如果直接在实体类中接受请求体是一个好主意和最佳实践的话。 我不想在controller类中公开我的实体类,因为我不确定这是否是一个好主意。 java 这两种方法都给出了相同的结果,更多的是关注要遵循的最佳实践。
我可以在POST请求时发送对象列表作为响应,并在VueJs客户端中接收它 但是当我尝试用自定义类响应时(我甚至在请求映射注释中添加了) 在axios的帮助下发送VueJs端请求。邮递 Vue用户界面客户端接收 为什么我可以用对象列表响应而不能用POJO响应,以及如何解决这个问题?非常感谢。 PS.项目依赖于jackson-数据库v2.8.2和Spring v4.3.1
问题内容: 我正在使用simple_form gem并生成表单,我正在指定remote:true选项,如下所示: 因此,表单的输出html是以下片段: 正如我检查的那样,当使用 remote:true 选项时,使用标准的form_for帮助器将 data-remote =’true’添加 到表单中。从生成的html中可以看到,当我使用simple_form gem时,也有这样的属性。 __ 因此,
我的控制器中有一个函数。问题是我必须同时使用两个请求,但在控制器中只能使用其中一个。 照明\支持\外观\请求 代码: 解决方案是什么?
问题内容: 我正在尝试在Swift中运行HTTP请求,以将2个参数发布到URL。 例: 链接: 参数: 最简单的方法是什么? 我什至不想阅读回复。我只想发送该文件,以通过PHP文件对数据库进行更改。 问题答案: 在Swift 3及更高版本中,您可以: 哪里: 这将检查基本的网络错误以及高级HTTP错误。这也可以正确地对查询的参数进行转义。 请注意,我使用的of 来说明的正确结果,该结果是“百分比编
我正在尝试在Swift中运行一个HTTP请求,将2个参数发布到一个URL。 示例: 链接: 参数: null 我甚至都不想看回复。我只是想通过一个PHP文件发送它来执行对我的数据库的更改。