实体 TrainPlan{
        @OneToOne(cascade=CascadeType.REFRESH)
@JoinColumn(name="bumen")
private Department department;
}action BeanUtils.copyProperties(formbean, tpl);
jsp页面怎么显示 department对应的  deptName值
这样报错 <html:text property="department"  disabled="true"></html:text>

解决方案 »

  1.   

    <html:text property="department"  disabled="true"></html:text>这样肯定报错。
    很久没用过 struts1 了。你这样试试:
    <html:text property="department.deptName"  disabled="true"></html:text>
    如果还报错,把错误贴一下,让大家帮你看看
      

  2.   

    这样也不行页面错误信息
    HTTP Status 500 - An exception occurred processing JSP page /WEB-INF/page/trainplan/trainplainimp.jsp at line 121--------------------------------------------------------------------------------type Exception reportmessage An exception occurred processing JSP page /WEB-INF/page/trainplan/trainplainimp.jsp at line 121description 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/page/trainplan/trainplainimp.jsp at line 121118:  鍩硅涓诲姙閮ㄩ棬
    119:  </td>
    120:  <td colspan="2">
    121:  <html:text property="department.deptName" disabled="disabled" ></html:text>
    122:  </td>
    123:  </tr>
    124:  <tr>
    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:521)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:412)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1078)
    org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:396)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:232)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    com.ntsafe.web.filter.AuthFilter.doFilter(AuthFilter.java:64)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
    org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:112)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)root cause 
    javax.servlet.ServletException: javax.servlet.jsp.JspException: No getter method for property: "department.deptName" of bean: "com.ntsafe.web.formbean.train.TrainPlanForm"
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:865)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:794)
    org.apache.jsp.WEB_002dINF.page.trainplan.trainplainimp_jsp._jspService(trainplainimp_jsp.java:435)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1078)
    org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:396)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:232)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    com.ntsafe.web.filter.AuthFilter.doFilter(AuthFilter.java:64)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
    org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:112)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)root cause 
    javax.servlet.jsp.JspException: No getter method for property: "department.deptName" of bean: "com.ntsafe.web.formbean.train.TrainPlanForm"
    org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:915)
    org.apache.struts.taglib.html.BaseFieldTag.prepareValue(BaseFieldTag.java:123)
    org.apache.struts.taglib.html.BaseFieldTag.renderInputElement(BaseFieldTag.java:102)
    org.apache.struts.taglib.html.BaseFieldTag.doStartTag(BaseFieldTag.java:80)
    org.apache.jsp.WEB_002dINF.page.trainplan.trainplainimp_jsp._jspx_meth_html_005ftext_005f4(trainplainimp_jsp.java:541)
    org.apache.jsp.WEB_002dINF.page.trainplan.trainplainimp_jsp._jspService(trainplainimp_jsp.java:234)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1078)
    org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:396)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:232)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    com.ntsafe.web.filter.AuthFilter.doFilter(AuthFilter.java:64)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
    org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:112)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)note The full stack trace of the root cause is available in the Apache Tomcat/6.0.36 logs.--------------------------------------------------------------------------------Apache Tomcat/6.0.36
      

  3.   

    com.ntsafe.web.formbean.train.TrainPlanForm

    private Department department;
    属性加上 getter 和 setter
      

  4.   

    No getter method for property: "department.deptName" of bean: "com.ntsafe.web.formbean.train.TrainPlanForm
      

  5.   

    +1public Department getDepartment() {
    return department;
    }
    public void setDepartment(Department department) {
    this.department = department;
    }
     department.deptName  get set 方法 一开始都写了   还是报错啊  
      

  6.   

    写过了 版主
    package com.ntsafe.bean.train;import javax.persistence.CascadeType;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.Id;
    import javax.persistence.JoinColumn;
    import javax.persistence.OneToOne;import com.ntsafe.bean.organization.departmentBaseInfo.Department;@Entity(name="tab_trainPlan")
    public class TrainPlan {

    //  培训编号
    @Id
    private String trainId;
    // 培训类别
    @Column
    private String trainLeib;
    // 培训类型
    @Column
    private String trainLeix;
    // 培训分类
    @Column
    private String trainFenl;
    // 主办部门
    @OneToOne(cascade=CascadeType.REFRESH)
    @JoinColumn(name="bumen")
    private Department department;
    // 实施日期
    @Column
    private String doDate;
    // 培训方式
    @Column
    private String trainFangs;
    // 培训课时
    @Column
    private String trainKes;
    // 培训级别
    @Column
    private String trainJib;
    // 是否签到
    @Column
    private String isQiand;
    // 参培人员
    @Column
    private String canpeiP;
    // 培训内容
    @Column
    private String trainContext;
    // 培训讲师1
    @Column
    private String teacherOne;
    // 培训讲师2
    @Column
    private String teacherTwo;
    // 讲师部门
    @Column
    private String teacherBumen;
    // 讲师职务
    @Column
    private String teacherZhiwu;
    // 讲师单位
    @Column
    private String teacherDanwei;
    // 培训地点
    @Column
    private String trainDanw;
    // 删除标识 1:删除 0:未删除
    @Column
    private String delFlag;
    public String getTrainId() {
    return trainId;
    }
    public void setTrainId(String trainId) {
    this.trainId = trainId;
    }
    public String getTrainLeib() {
    return trainLeib;
    }
    public void setTrainLeib(String trainLeib) {
    this.trainLeib = trainLeib;
    }
    public String getTrainLeix() {
    return trainLeix;
    }
    public void setTrainLeix(String trainLeix) {
    this.trainLeix = trainLeix;
    }
    public String getTrainFenl() {
    return trainFenl;
    }
    public void setTrainFenl(String trainFenl) {
    this.trainFenl = trainFenl;
    }
    public Department getDepartment() {
    return department;
    }
    public void setDepartment(Department department) {
    this.department = department;
    }
    public String getDoDate() {
    return doDate;
    }
    public void setDoDate(String doDate) {
    this.doDate = doDate;
    }
    public String getTrainFangs() {
    return trainFangs;
    }
    public void setTrainFangs(String trainFangs) {
    this.trainFangs = trainFangs;
    }
    public String getTrainKes() {
    return trainKes;
    }
    public void setTrainKes(String trainKes) {
    this.trainKes = trainKes;
    }
    public String getTrainJib() {
    return trainJib;
    }
    public void setTrainJib(String trainJib) {
    this.trainJib = trainJib;
    }
    public String getIsQiand() {
    return isQiand;
    }
    public void setIsQiand(String isQiand) {
    this.isQiand = isQiand;
    }
    public String getCanpeiP() {
    return canpeiP;
    }
    public void setCanpeiP(String canpeiP) {
    this.canpeiP = canpeiP;
    }
    public String getTrainContext() {
    return trainContext;
    }
    public void setTrainContext(String trainContext) {
    this.trainContext = trainContext;
    }
    public String getTeacherOne() {
    return teacherOne;
    }
    public void setTeacherOne(String teacherOne) {
    this.teacherOne = teacherOne;
    }
    public String getTeacherTwo() {
    return teacherTwo;
    }
    public void setTeacherTwo(String teacherTwo) {
    this.teacherTwo = teacherTwo;
    }
    public String getTeacherBumen() {
    return teacherBumen;
    }
    public void setTeacherBumen(String teacherBumen) {
    this.teacherBumen = teacherBumen;
    }
    public String getTeacherZhiwu() {
    return teacherZhiwu;
    }
    public void setTeacherZhiwu(String teacherZhiwu) {
    this.teacherZhiwu = teacherZhiwu;
    }
    public String getTeacherDanwei() {
    return teacherDanwei;
    }
    public void setTeacherDanwei(String teacherDanwei) {
    this.teacherDanwei = teacherDanwei;
    }
    public String getTrainDanw() {
    return trainDanw;
    }
    public void setTrainDanw(String trainDanw) {
    this.trainDanw = trainDanw;
    }
    public String getDelFlag() {
    return delFlag;
    }
    public void setDelFlag(String delFlag) {
    this.delFlag = delFlag;
    }
    }