首页 > 代码库 > org.springframework.beans.NullValueInNestedPathException

org.springframework.beans.NullValueInNestedPathException

报错代码:

HTTP Status 500 - An exception occurred processing JSP page /WEB-INF/views/input.jsp at line 29


type Exception report

message An exception occurred processing JSP page /WEB-INF/views/input.jsp at line 29

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/views/input.jsp at line 2926: 		LastName:<form:input path="lastName"/> <br>27: 		Email:<form:input path="email"/> <br>28: 		Gender:<form:radiobuttons path="gender" items="${genders}"/> <br>29: 		Department:<form:select path="department.id" items="${dapartments}" itemLabel="departmentName" itemValue="http://www.mamicode.com/id"></form:select><br>30: 		<input type="submit" value="http://www.mamicode.com/Submit">31: 	</form:form>32: </body>Stacktrace:	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)	org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:168)	org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:303)	org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1244)	org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1027)	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:971)	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:857)	javax.servlet.http.HttpServlet.service(HttpServlet.java:621)	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)	org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

 

root cause

org.springframework.beans.NullValueInNestedPathException: Invalid property ‘department‘ of bean class [com.cqvie.model.Employee]: Could not instantiate property type [com.cqvie.model.Department] to auto-grow nested property path: java.lang.InstantiationException: com.cqvie.model.Department	org.springframework.beans.BeanWrapperImpl.newValue(BeanWrapperImpl.java:657)	org.springframework.beans.BeanWrapperImpl.createDefaultPropertyValue(BeanWrapperImpl.java:623)	org.springframework.beans.BeanWrapperImpl.setDefaultValue(BeanWrapperImpl.java:611)	org.springframework.beans.BeanWrapperImpl.getNestedBeanWrapper(BeanWrapperImpl.java:575)	org.springframework.beans.BeanWrapperImpl.getBeanWrapperForPropertyPath(BeanWrapperImpl.java:549)	org.springframework.beans.BeanWrapperImpl.getPropertyValue(BeanWrapperImpl.java:720)	org.springframework.validation.AbstractPropertyBindingResult.getActualFieldValue(AbstractPropertyBindingResult.java:99)	org.springframework.validation.AbstractBindingResult.getFieldValue(AbstractBindingResult.java:229)	org.springframework.web.servlet.support.BindStatus.<init>(BindStatus.java:120)	org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getBindStatus(AbstractDataBoundFormElementTag.java:168)	org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getPropertyPath(AbstractDataBoundFormElementTag.java:188)	org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getName(AbstractDataBoundFormElementTag.java:154)	org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.autogenerateId(AbstractDataBoundFormElementTag.java:141)	org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.resolveId(AbstractDataBoundFormElementTag.java:132)	org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.writeDefaultAttributes(AbstractDataBoundFormElementTag.java:116)	org.springframework.web.servlet.tags.form.AbstractHtmlElementTag.writeDefaultAttributes(AbstractHtmlElementTag.java:422)	org.springframework.web.servlet.tags.form.SelectTag.writeTagContent(SelectTag.java:194)	org.springframework.web.servlet.tags.form.AbstractFormTag.doStartTagInternal(AbstractFormTag.java:84)	org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:80)	org.apache.jsp.WEB_002dINF.views.input_jsp._jspx_meth_form_005fselect_005f0(input_jsp.java:278)	org.apache.jsp.WEB_002dINF.views.input_jsp._jspx_meth_form_005fform_005f0(input_jsp.java:153)	org.apache.jsp.WEB_002dINF.views.input_jsp._jspService(input_jsp.java:101)	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)	org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:168)	org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:303)	org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1244)	org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1027)	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:971)	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:857)	javax.servlet.http.HttpServlet.service(HttpServlet.java:621)	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)	org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

 

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.47 logs.


Apache Tomcat/7.0.47

解决办法:

  这种问题是因为 你这个类中没有默认的空的构造函数,导致不能自动注入 autowired ,所以无法找到该类。

org.springframework.beans.NullValueInNestedPathException