Advertisement
Guest User

java.lang.IllegalStateException: Neither BindingResult

a guest
Apr 26th, 2016
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.84 KB | None | 0 0
  1. //Event.java(POJO)
  2. /*********************************************?
  3. package com.LMS.model;
  4.  
  5. import javax.persistence.Entity;
  6. import javax.persistence.Table;
  7.  
  8. import org.joda.time.DateTime;
  9. import org.joda.time.LocalDate;
  10.  
  11. import javax.persistence.Column;
  12. import javax.persistence.GeneratedValue;
  13. import javax.persistence.GenerationType;
  14. import javax.persistence.Id;
  15.  
  16.  
  17. @Entity
  18. @Table(name = "EVENT")
  19. public class Event {
  20.  
  21. @Id
  22. @Column(name = "ID")
  23. @GeneratedValue(strategy = GenerationType.AUTO)
  24. private Integer ID;
  25.  
  26. @Column(name = "EVENT_ID")
  27. private String EVENT_ID;
  28.  
  29. @Column(name = "NAME")
  30. private String NAME;
  31.  
  32. @Column(name = "COMPANY_NAME")
  33. private String COMPANY_NAME;
  34.  
  35. @Column(name = "CONTACT_PERSON")
  36. private String CONTACT_PERSON;
  37.  
  38. @Column(name = "CONTACT_TO")
  39. private String CONTACT_TO;
  40.  
  41. @Column(name = "EMAIL")
  42. private String EMAIL;
  43.  
  44. @Column(name = "VENUE")
  45. private String VENUE;
  46.  
  47. @Column(name = "FROM_DATE")
  48. private LocalDate FROM_DATE;
  49.  
  50. @Column(name = "TO_DATE")
  51. private LocalDate TO_DATE;
  52.  
  53. @Column(name = "TIME")
  54. private DateTime TIME;
  55.  
  56. @Column(name = "TIMESTAMP")
  57. private DateTime TIMESTAMP;
  58.  
  59. public Integer getID() {
  60. return ID;
  61. }
  62.  
  63. public void setID(Integer iD) {
  64. ID = iD;
  65. }
  66.  
  67. public String getEVENT_ID() {
  68. return EVENT_ID;
  69. }
  70.  
  71. public void setEVENT_ID(String eVENT_ID) {
  72. EVENT_ID = eVENT_ID;
  73. }
  74.  
  75. public String getNAME() {
  76. return NAME;
  77. }
  78.  
  79. public void setNAME(String nAME) {
  80. NAME = nAME;
  81. }
  82.  
  83. public String getCOMPANY_NAME() {
  84. return COMPANY_NAME;
  85. }
  86.  
  87. public void setCOMPANY_NAME(String cOMPANY_NAME) {
  88. COMPANY_NAME = cOMPANY_NAME;
  89. }
  90.  
  91. public String getCONTACT_PERSON() {
  92. return CONTACT_PERSON;
  93. }
  94.  
  95. public void setCONTACT_PERSON(String cONTACT_PERSON) {
  96. CONTACT_PERSON = cONTACT_PERSON;
  97. }
  98.  
  99. public String getCONTACT_TO() {
  100. return CONTACT_TO;
  101. }
  102.  
  103. public void setCONTACT_TO(String cONTACT_TO) {
  104. CONTACT_TO = cONTACT_TO;
  105. }
  106.  
  107. public String getEMAIL() {
  108. return EMAIL;
  109. }
  110.  
  111. public void setEMAIL(String eMAIL) {
  112. EMAIL = eMAIL;
  113. }
  114.  
  115. public String getVENUE() {
  116. return VENUE;
  117. }
  118.  
  119. public void setVENUE(String vENUE) {
  120. VENUE = vENUE;
  121. }
  122.  
  123. public LocalDate getFROM_DATE() {
  124. return FROM_DATE;
  125. }
  126.  
  127. public void setFROM_DATE(LocalDate fROM_DATE) {
  128. FROM_DATE = fROM_DATE;
  129. }
  130.  
  131. public LocalDate getTO_DATE() {
  132. return TO_DATE;
  133. }
  134.  
  135. public void setTO_DATE(LocalDate tO_DATE) {
  136. TO_DATE = tO_DATE;
  137. }
  138.  
  139. public DateTime getTIME() {
  140. return TIME;
  141. }
  142.  
  143. public void setTIME(DateTime tIME) {
  144. TIME = tIME;
  145. }
  146.  
  147. public DateTime getTIMESTAMP() {
  148. return TIMESTAMP;
  149. }
  150.  
  151. public void setTIMESTAMP(DateTime tIMESTAMP) {
  152. TIMESTAMP = tIMESTAMP;
  153. }
  154.  
  155.  
  156.  
  157.  
  158. }
  159.  
  160. /*****************************************************************************************/
  161.  
  162. //EventController.java
  163. /*************************************************************************************/
  164.  
  165. package com.LMS.Controller;
  166.  
  167. import org.springframework.beans.factory.annotation.Autowired;
  168. import org.springframework.beans.factory.annotation.Qualifier;
  169. import org.springframework.stereotype.Controller;
  170. import org.springframework.ui.Model;
  171. import org.springframework.web.bind.annotation.ModelAttribute;
  172. import org.springframework.web.bind.annotation.PathVariable;
  173. import org.springframework.web.bind.annotation.RequestMapping;
  174. import org.springframework.web.bind.annotation.RequestMethod;
  175.  
  176. import com.LMS.Service.EventService;
  177. import com.LMS.model.Event;
  178.  
  179. @Controller
  180. public class EventController {
  181.  
  182. @Autowired
  183. private EventService eventService;
  184.  
  185. @RequestMapping(value = "/", method = RequestMethod.GET)
  186. public String welcomePage(Model model) {
  187. model.addAttribute("event", new Event()); // the Category object is used as a template to generate the form
  188. return "index";
  189. }
  190.  
  191. @Autowired(required = true)
  192. @Qualifier(value = "eventService")
  193. public void setPersonService(EventService es) {
  194. this.eventService = es;
  195. }
  196.  
  197. @RequestMapping(value = "/events", method = RequestMethod.GET)
  198. public String listEvents(Model model) {
  199. model.addAttribute("events", new Event());
  200. model.addAttribute("listEvents", this.eventService.listEvents());
  201. return "events";
  202. }
  203.  
  204. // For add and update event both
  205. @ModelAttribute("event")
  206. @RequestMapping(value = "/event/add", method = RequestMethod.POST)
  207. public String addEvent(Model model, @ModelAttribute("event") Event event) {
  208. model.addAttribute("event", new Event());
  209. model.addAttribute("id", event.getID());
  210. model.addAttribute("name", event.getNAME());
  211.  
  212.  
  213. if (event.getID() == 0) {
  214. // new event, add it
  215. // model.addAttribute("event", new Event());
  216. this.eventService.addEvent(event);
  217.  
  218. } else {
  219. // existing event, call update
  220. // model.addAttribute("event", new Event());
  221. this.eventService.updateEvent(event);
  222.  
  223. }
  224.  
  225. return "redirect:/event";
  226.  
  227. }
  228.  
  229. @RequestMapping("/remove/{id}")
  230. public String removeEvent(@PathVariable("id") int ID) {
  231.  
  232. this.eventService.removeEvent(ID);
  233. return "redirect:/events";
  234. }
  235.  
  236. @RequestMapping("/edit/{id}")
  237. public String editEvent(@PathVariable("id") int ID, Model model) {
  238. model.addAttribute("event", this.eventService.getEventById(ID));
  239. model.addAttribute("listEvents", this.eventService.listEvents());
  240. return "event";
  241. }
  242.  
  243. }
  244.  
  245. /***********************************************************************************************************/
  246.  
  247. ServletContext.xml
  248.  
  249. /***********************************************************************************************/
  250.  
  251. <?xml version="1.0" encoding="UTF-8"?>
  252. <beans:beans xmlns="http://www.springframework.org/schema/mvc"
  253. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans"
  254. xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
  255. xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
  256. http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
  257. http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
  258. http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">
  259.  
  260. <!-- DispatcherServlet Context: defines this servlet's request-processing
  261. infrastructure -->
  262.  
  263. <!-- Enables the Spring MVC @Controller programming model -->
  264. <annotation-driven />
  265.  
  266. <!-- Handles HTTP GET requests for /resources/** by efficiently serving
  267. up static resources in the ${webappRoot}/resources directory -->
  268. <resources mapping="/resources/**" location="/resources/" />
  269.  
  270. <!-- Resolves views selected for rendering by @Controllers to .jsp resources
  271. in the /WEB-INF/views directory -->
  272. <beans:bean
  273. class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  274. <beans:property name="prefix" value="/WEB-INF/views/" />
  275. <beans:property name="suffix" value=".jsp" />
  276. </beans:bean>
  277.  
  278. <beans:bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
  279. destroy-method="close">
  280. <beans:property name="driverClassName" value="com.mysql.jdbc.Driver" />
  281. <beans:property name="url"
  282. value="jdbc:mysql://localhost:3306/licensemanagement" />
  283. <beans:property name="username" value="root" />
  284. <beans:property name="password" value="siddheshkk1992" />
  285. </beans:bean>
  286.  
  287. <!-- Hibernate 4 SessionFactory Bean definition -->
  288. <beans:bean id="hibernate4AnnotatedSessionFactory"
  289. class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
  290. <beans:property name="dataSource" ref="dataSource" />
  291. <beans:property name="annotatedClasses">
  292. <beans:list>
  293. <beans:value>com.LMS.model.Event</beans:value>
  294. </beans:list>
  295. </beans:property>
  296. <beans:property name="hibernateProperties">
  297. <beans:props>
  298. <beans:prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect
  299. </beans:prop>
  300. <beans:prop key="hibernate.show_sql">true</beans:prop>
  301. </beans:props>
  302. </beans:property>
  303. </beans:bean>
  304.  
  305. <beans:bean id="eventDao" class="com.LMS.DAOImpl.EventDaoImpl">
  306. <beans:property name="sessionFactory" ref="hibernate4AnnotatedSessionFactory" />
  307. </beans:bean>
  308. <beans:bean id="eventService" class="com.LMS.ServiceImpl.EventServiceImpl">
  309. <beans:property name="eventDao" ref="eventDao"></beans:property>
  310. </beans:bean>
  311. <context:component-scan base-package="com.LMS" />
  312.  
  313. <tx:annotation-driven transaction-manager="transactionManager"/>
  314.  
  315. <beans:bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
  316. <beans:property name="sessionFactory" ref="hibernate4AnnotatedSessionFactory" />
  317. </beans:bean>
  318.  
  319. </beans:beans>
  320.  
  321. /*****************************************************************************************************************************************************************************/
  322.  
  323. Event2.jsp
  324.  
  325. /********************************************************/
  326.  
  327. <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
  328. pageEncoding="ISO-8859-1"%>
  329. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
  330. <%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
  331. <%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
  332.  
  333. <%@ page session="false"%>
  334. <html>
  335. <head>
  336. <title>Person Page</title>
  337. <style type="text/css">
  338. .tg {
  339. border-collapse: collapse;
  340. border-spacing: 0;
  341. border-color: #ccc;
  342. }
  343.  
  344. .tg td {
  345. font-family: Arial, sans-serif;
  346. font-size: 14px;
  347. padding: 10px 5px;
  348. border-style: solid;
  349. border-width: 1px;
  350. overflow: hidden;
  351. word-break: normal;
  352. border-color: #ccc;
  353. color: #333;
  354. background-color: #fff;
  355. }
  356.  
  357. .tg th {
  358. font-family: Arial, sans-serif;
  359. font-size: 14px;
  360. font-weight: normal;
  361. padding: 10px 5px;
  362. border-style: solid;
  363. border-width: 1px;
  364. overflow: hidden;
  365. word-break: normal;
  366. border-color: #ccc;
  367. color: #333;
  368. background-color: #f0f0f0;
  369. }
  370.  
  371. .tg .tg-4eph {
  372. background-color: #f9f9f9
  373. }
  374. </style>
  375. </head>
  376. <body>
  377. <h1>Add a Person</h1>
  378.  
  379. <c:url var="addAction" value="/event/add"></c:url>
  380.  
  381. <form:form action="${addAction}" modelAttribute="event">
  382. <table>
  383. <c:if test="${!empty event.name}">
  384. <tr>
  385. <td><form:label path="id">
  386. <spring:message text="ID" />
  387. </form:label></td>
  388. <td><form:input path="id" /> <form:hidden path="id" /></td>
  389. </tr>
  390. </c:if>
  391. <tr>
  392. <td><form:label path="name">
  393. <spring:message text="NAME" />
  394. </form:label></td>
  395. <td><form:input path="name" /></td>
  396. </tr>
  397.  
  398. </table>
  399. </form:form>
  400. </body>
  401. </html>
  402.  
  403. /**************************************************************************************************************/
  404.  
  405. Exception I am getting
  406.  
  407. /*************************************************************************************/
  408. HTTP Status 500 - An exception occurred processing JSP page /Event2.jsp at line 66
  409.  
  410. type Exception report
  411.  
  412. message An exception occurred processing JSP page /Event2.jsp at line 66
  413.  
  414. description The server encountered an internal error that prevented it from fulfilling this request.
  415.  
  416. exception
  417.  
  418. org.apache.jasper.JasperException: An exception occurred processing JSP page /Event2.jsp at line 66
  419.  
  420. 63: </tr>
  421. 64: </c:if>
  422. 65: <tr>
  423. 66: <td><form:label path="name">
  424. 67: <spring:message text="NAME" />
  425. 68: </form:label></td>
  426. 69: <td><form:input path="name" /></td>
  427.  
  428.  
  429. Stacktrace:
  430. org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:574)
  431. org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:471)
  432. org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)
  433. org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)
  434. javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
  435. org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
  436. root cause
  437.  
  438. java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name 'event' available as request attribute
  439. org.springframework.web.servlet.support.BindStatus.<init>(BindStatus.java:144)
  440. org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getBindStatus(AbstractDataBoundFormElementTag.java:168)
  441. org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getPropertyPath(AbstractDataBoundFormElementTag.java:188)
  442. org.springframework.web.servlet.tags.form.LabelTag.autogenerateFor(LabelTag.java:130)
  443. org.springframework.web.servlet.tags.form.LabelTag.resolveFor(LabelTag.java:120)
  444. org.springframework.web.servlet.tags.form.LabelTag.writeTagContent(LabelTag.java:90)
  445. org.springframework.web.servlet.tags.form.AbstractFormTag.doStartTagInternal(AbstractFormTag.java:84)
  446. org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:80)
  447. org.apache.jsp.Event2_jsp._jspx_meth_form_005flabel_005f1(Event2_jsp.java:469)
  448. org.apache.jsp.Event2_jsp._jspx_meth_form_005fform_005f0(Event2_jsp.java:265)
  449. org.apache.jsp.Event2_jsp._jspService(Event2_jsp.java:195)
  450. org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
  451. javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
  452. org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:438)
  453. org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)
  454. org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)
  455. javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
  456. org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
  457. note The full stack trace of the root cause is available in the Apache Tomcat/8.0.33 logs.
  458.  
  459. Apache Tomcat/8.0.33
  460.  
  461. /*****************************************************************************************************************************************************************************************************************************/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement