に各フォームIは、JSPビューを有し、2は内部に、私は2つのコントローラ有する(1 - UserControllerで、2 - ホームコントローラ)スプリングJSPビュー - 切り抜いコントローラ
UserControllerでの - すべてのログインとregestrationに管理しますサイト ホームコントローラーは - 私は一つコントローラで動作するようにしようとしたとき、それはgreateの動作しますが、私はコントローラ(にHomeControllerを)spesificする方法を分割するとき、私はエラー を持つすべてのユーザーアクション
- を管理します
なぜですか? *家がUserControllerでとにHomeController
に送信するために必要なアクション内部から呼び出されたアップデート
home.jspを - > "にHomeController" に署名する必要があるフォーム*それ2つの形式(1- "scanRequest"> UserControllerで、2- "scanForm">にHomeController)
<form:form method="POST" action="${contextPath}/scanRequest" modelAttribute="scanForm" class="form-signin"> <h2 class="form-signin-heading">Create new scan: </h2> <table> <tr> <td> <spring:bind path="seller_name"> <div class="form-group ${status.error ? 'has-error' : ''}"> <form:input type="text" path="seller_name" class="form-control" placeholder="Seller Name" autofocus="true"></form:input> <form:errors path="seller_name"></form:errors> </div> </spring:bind> </td> <td> <input type="hidden" name="scanForm" value="${UserRequestDTO}" /> <button class="btn btn-lg btn-primary btn-block" type="submit">Scan</button> </td> </tr> </table> </form:form> <form:form method="POST" action="${contextPath}/scanTest" modelAttribute="scanTestForm" class="form-signin"> <h3>${msg}</h3> <input type="hidden" name="scanTestForm" value="${UserRequestDTO}" /> <button class="btn btn-lg btn-primary btn-block" type="submit">Test</button> </form:form>
HomeControllを含みますER:
@Controller public class HomeController { @ModelAttribute("scanTestForm") public UserRequestDTO getScanForm(){ return new UserRequestDTO(); } @RequestMapping(value = "/scanTest", method = RequestMethod.POST) public String scanRequest(@ModelAttribute("scanTestForm")UserRequestDTO userRequestDTO, BindingResult bindingResult, Model model) { String strMsg = "-----------scanTest---------- \r\n"; if (bindingResult.hasErrors()) { return "home"; } model.addAttribute("msg", strMsg); return "home"; } }
UserControllerで
@ModelAttribute("scanForm") public UserRequestDTO getScanForm(){ return new UserRequestDTO(); } @RequestMapping(value = "/scanRequest", method = RequestMethod.POST) public String scanRequest(@ModelAttribute("scanForm")UserRequestDTO userRequestDTO, BindingResult bindingResult, Model model) { logger.info("scanRequest():"); String strMsg = "---------------------- \r\n" + userRequestDTO.getSeller_name() + "\r\n"; // Checking if there is any errors with the seller if (bindingResult.hasErrors()) { return "home"; } model.addAttribute("msg", strMsg); return "home"; }
**それが動作するようにし、その後、私は私のコードを続けることができますだけで何I .. **更新:エラー - 私はcliced」テスト "ボタン**
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) יול 26, 2016 2:34:44 PM org.apache.catalina.core.StandardWrapperValve invoke SEVERE: Servlet.service() for servlet [searcher] in context with path [/Searcher] threw exception [An exception occurred processing JSP page /WEB-INF/views/home.jsp at line 47 44: <table> 45: <tr> 46: <td> 47: <spring:bind path="seller_name"> 48: <div class="form-group ${status.error ? 'has-error' : ''}"> 49: <form:input type="text" path="seller_name" class="form-control" placeholder="Seller Name" autofocus="true"></form:input> 50: <form:errors path="seller_name"></form:errors> Stacktrace:] with root cause javax.servlet.jsp.JspTagException: Neither BindingResult nor plain target object for bean name 'scanForm' available as request attribute at org.springframework.web.servlet.tags.BindTag.doStartTagInternal(BindTag.java:120) at org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAw
*動作しない*または*エラーが発生し始める*は無力です。可能であれば、どのようなエラーを正確に述べ、スタックトレースを与えます。 –
@SergeBallesta今すぐ追加しました – Guyb
UserControllerの外観はどうですか?私は1つのフォームしか見ません。別のフォームはどこですか? – Tin