Java Spring绑定问题
当点击下面显示的控制器方法时,我总是得到500Java Spring绑定问题,java,spring,jsp,spring-mvc,Java,Spring,Jsp,Spring Mvc,当点击下面显示的控制器方法时,我总是得到500 @RequestMapping(value ="transferInvoiceHdrForm", method = RequestMethod.GET) protected ModelAndView showForm(@ModelAttribute("transferInvoice") TransferInvoiceForm trinvoiceform, final HttpServletRequest request, final HttpSer
@RequestMapping(value ="transferInvoiceHdrForm", method = RequestMethod.GET)
protected ModelAndView showForm(@ModelAttribute("transferInvoice") TransferInvoiceForm trinvoiceform, final HttpServletRequest request, final HttpServletResponse response, Model model)throws Exception {
TransferInvoiceHdr transferInvoiceHdr = new TransferInvoiceHdr();
List<TransferInvoice> transferinvoice= transferInvoiceHdrService.getAssetCategoriesandTransfer();
List<Employees> employees = transferInvoiceHdrService.getAssignEmployee();
trinvoiceform.setTrinvoiceList(transferinvoice);
log.info("++++"+trinvoiceform.getTrinvoiceList());
model.addAttribute("employees", employees.get(0).getFullname());
// model.addAttribute("transferinvoice", transferinvoice);
model.addAttribute("transferInvoiceHdr", transferInvoiceHdr);
//model.addAttribute("transferInvoice", transferinvoice);
return new ModelAndView("asset/transferInvoiceHdrForm", model.asMap());
}
我为什么能拿到500英镑。我彻底检查并确认jsp绑定中存在问题。任何帮助都将不胜感激
谢谢尝试将
path=“TrinvoiceList[
替换为path=“transferinvoiceType[
我相信你应该做得很好。这里的问题是你可以访问arraylist元素,你正在使用c:foreach中的var属性值集对其进行迭代,当你查看你的代码时,你会发现你正在试图直接访问object的属性。你可以使用以下过程从这种情况中恢复。
无论何时使用JSTL表单标记,您都可以在jsp页面中使用:
<form:form commandName="viewModel" method="POST">
使用
method=RequestMethod.POST
请添加更多信息(为什么是对的和其他错误等)。回答质量较低的会很快被删除。从社区中!仍然得到相同的500个错误。我在这里遵循此解决方案仍然面临此问题,有人能重新审视吗?
<form:form method="post" action="/asset/invoice/searchctr" modelAttribute="transferInvoice">
<fieldset>
<c:forEach var="transferinvoiceType" items="${transferInvoice.TrinvoiceList}" varStatus="status">
<form:select path="TrinvoiceList[${status.index}].assetName" class="col-xs-12 col-lg-5 form-group">
<form:option value="0" selected="true">All</form:option>
<form:options value="${transferinvoiceType.assetName}"></form:options>
</form:select>
</c:forEach>
<c:forEach var="transferinvoiceType" items="${transferInvoice.TrinvoiceList}" varStatus="status">
<form:select path="TrinvoiceList[${status.index}].assettoLocation" class="col-xs-12 col-lg-5 form-group">
<form:option value="0" selected="true">All</form:option>
<form:options value="${transferinvoiceType.assettoLocation}"></form:options>
</form:select>
</c:forEach>
<button class="btn btn-primary" type="submit" class="col-xs-12 col-lg-6 form-group">
<fmt:message key="button.search" />
</button>
</fieldset>
</form:form>
public class TransferInvoice {
private String assetName;
private String assettoLocation;
private String actualTransferDate;
private String scanserialCode;
private String modelNum;
private boolean check;
//getters and setters
<form:form commandName="viewModel" method="POST">
@RequestMapping(value ="yourValue", method = RequestMethod.POST)
protected ModelAndView showForm(@ModelAttribute("viewModel") TransferInvoice transferInvoice, final HttpServletRequest request, final HttpServletResponse response, Model model)throws Exception {
//use every thing for transferInvoice
}