Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法使用数据表从jsf发送邮件,_Jsf - Fatal编程技术网

无法使用数据表从jsf发送邮件,

无法使用数据表从jsf发送邮件,,jsf,Jsf,这是我的Xhtml页面,我在这里使用列表 员工Id #{list.employee.employeeId} 员工姓名 #{list.employee.employeeName} 请假 #{list.leaveStartDate} 休假开始日期 #{list.leaveStartDate} 假期结束日期 #{list.leaveEndDate} 天数 #{list.leaveEndDate} 带薪假期 #{list.leaveBalance} 留下描述 #{list.leaveDescripti

这是我的Xhtml页面,我在这里使用列表


员工Id
#{list.employee.employeeId}
员工姓名
#{list.employee.employeeName}
请假
#{list.leaveStartDate}
休假开始日期
#{list.leaveStartDate}
假期结束日期
#{list.leaveEndDate}
天数
#{list.leaveEndDate}
带薪假期
#{list.leaveBalance}
留下描述
#{list.leaveDescriptions}
评论
我在选择特定行按钮时遇到问题


多次调用serive方法…我使用getVacationList()显示列表,但不向特定员工发送邮件。首先,将approveVacation方法放在approveVacationBean中

然后更改方法以接受列表作为参数(我猜它是VacationDTO)

最后,您应该将commandButton与approveVacation方法链接:

  <h:form>


            <h:dataTable headerClass="header" rowClasses="oddRow,evenRow" value="#{approveVacationBean.vacationList}"
                    var="list">
                     <h:column>
                        <f:facet name="header">Employee Id</f:facet>
                    #{list.employee.employeeId}
                </h:column>
                     <h:column>
                        <f:facet name="header">Employee Name</f:facet>
                    #{list.employee.employeeName}
                </h:column>

                  <h:column>
                        <f:facet name="header">Leave Applied</f:facet>
                    #{list.leaveStartDate}

                </h:column>
                    <h:column>
                        <f:facet name="header">Leave Start Date</f:facet>
                    #{list.leaveStartDate}

                </h:column>


                    <h:column>
                        <f:facet name="header">Leave End Date</f:facet>
                    #{list.leaveEndDate}
                </h:column>
                    <h:column>
                        <f:facet name="header">No of days</f:facet>
                    #{list.leaveEndDate}


</h:column>
<h:column>
<f:facet name="header">Paid Leave Balence</f:facet>
  #{list.leaveBalance}
  </h:column>

                  <h:column>
                  <f:facet name="header">Leave  Description</f:facet>
                  #{list.leaveDescriptions}


                  </h:column>
                <h:column>
                        <f:facet name="header">Comment</f:facet>
                    <h:inputTextarea ></h:inputTextarea>
                </h:column>
                <h:column>
                        <f:facet name="header"></f:facet>
                <h:commandButton value="Approve"/>
                <h:commandButton value="Reject"/>
                </h:column>

                </h:dataTable>

}

MB holding vacationList()的范围是什么?您是否使用@PostConstruct初始化假期列表?显示你的MB代码…我尝试了所有范围。我正在使用getVacationList()…我没有使用@PostConstruct。。
  <h:form>


            <h:dataTable headerClass="header" rowClasses="oddRow,evenRow" value="#{approveVacationBean.vacationList}"
                    var="list">
                     <h:column>
                        <f:facet name="header">Employee Id</f:facet>
                    #{list.employee.employeeId}
                </h:column>
                     <h:column>
                        <f:facet name="header">Employee Name</f:facet>
                    #{list.employee.employeeName}
                </h:column>

                  <h:column>
                        <f:facet name="header">Leave Applied</f:facet>
                    #{list.leaveStartDate}

                </h:column>
                    <h:column>
                        <f:facet name="header">Leave Start Date</f:facet>
                    #{list.leaveStartDate}

                </h:column>


                    <h:column>
                        <f:facet name="header">Leave End Date</f:facet>
                    #{list.leaveEndDate}
                </h:column>
                    <h:column>
                        <f:facet name="header">No of days</f:facet>
                    #{list.leaveEndDate}


</h:column>
<h:column>
<f:facet name="header">Paid Leave Balence</f:facet>
  #{list.leaveBalance}
  </h:column>

                  <h:column>
                  <f:facet name="header">Leave  Description</f:facet>
                  #{list.leaveDescriptions}


                  </h:column>
                <h:column>
                        <f:facet name="header">Comment</f:facet>
                    <h:inputTextarea ></h:inputTextarea>
                </h:column>
                <h:column>
                        <f:facet name="header"></f:facet>
                <h:commandButton value="Approve"/>
                <h:commandButton value="Reject"/>
                </h:column>

                </h:dataTable>
<h:commandButton value="Approve" ajax="false" action="#{approveVacationBean.approveVacation(list)}"/>
public void approveVacation(VacationDTO vacation) throws AddressException,MessagingException {

vacation.setIsApproved((byte)1);
getVacationService().approveVacation(vacation);
String to=vacation.getEmployee().getEmployeeEmailAddress();
String name=vacation.getEmployee().getEmployeeName();
getVacationService().approveVacation(vacation);
Util.sendMail(to, "Hi"+name,
        "Your vacation have been approved");