Struts开发异常-3
严重: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: Invalid argument looking up property user.name of bean org.apache.struts.taglib.html.BEAN
?at org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:959)
?at org.apache.struts.taglib.html.BaseFieldTag.prepareValue(BaseFieldTag.java:121)
?at org.apache.struts.taglib.html.BaseFieldTag.renderInputElement(BaseFieldTag.java:102)
?at org.apache.struts.taglib.html.BaseFieldTag.doStartTag(BaseFieldTag.java:81)
?at org.apache.jsp.form.user_jsp._jspx_meth_html_005ftext_005f0(user_jsp.java:143)
?at org.apache.jsp.form.user_jsp._jspx_meth_html_005fform_005f0(user_jsp.java:108)
?at org.apache.jsp.form.user_jsp._jspService(user_jsp.java:76)
?at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
?at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
?at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:386)
?at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
?at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
?at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
?at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
?at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
?at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
?at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
?at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
?at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
?at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
?at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
?at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:864)
?at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
?at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1665)
?at java.lang.Thread.run(Thread.java:662)
?
-------------------------------------------
错误提示,找不到 user.name 属性。实际是个假像,实际上因为formBean的bean属性没有被初始化,所以会出现上述错误
解决办法是,将bean放入formBean之前,先将其初始化。
?
/*
?* Generated by MyEclipse Struts
?* Template path: templates/java/JavaClass.vtl
?*/
package com.yourcompany.struts.form;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import com.entity.Userinfo;
/**
?* MyEclipse Struts
?* Creation date: 09-20-2011
?*
?* XDoclet definition:
?* @struts.form name="userForm"
?*/
public class UserForm extends ActionForm {
?/*
? * Generated fields
? */
?/** user property */
?//private Userinfo user;? //原来的
?private Userinfo user = new Userinfo();
?/*
? * Generated Methods
? */
?/**
? * Method validate
? * @param mapping
? * @param request
? * @return ActionErrors
? */
?public ActionErrors validate(ActionMapping mapping,
???HttpServletRequest request) {
??// TODO Auto-generated method stub
??return null;
?}
?/**
? * Method reset
? * @param mapping
? * @param request
? */
?public void reset(ActionMapping mapping, HttpServletRequest request) {
??// TODO Auto-generated method stub
?}
?/**
? * Returns the user.
? * @return Userinfo
? */
?public Userinfo getUser() {
??return user;
?}
?/**
? * Set the user.
? * @param user The user to set
? */
?public void setUser(Userinfo user) {
??this.user = user;
?}
}
?
?
?