首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未找到JSF actionListener方法

未找到JSF actionListener方法
EN

Stack Overflow用户
提问于 2014-03-06 10:52:35
回答 1查看 2.5K关注 0票数 0

我在h:commandButton中有一个actionListener,但是当按下错误作为方法出现时,找不到。

下面是代码:

代码语言:javascript
复制
<h:form id="course">
    <ui:repeat value="#{stationCourses.course}" var="course">
        <h:commandButton class="buttons"
            id="courseID"
            value="#{course.courseName}"
            actionListener="#{stationCourses.courseSelected}"
            style="alignment-adjust: central;
            white-space: pre-line; word-wrap: break-word;"/>
    </ui:repeat>            
</h:form>

而豆子:

代码语言:javascript
复制
import javax.faces.event.ActionEvent;
import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import java.util.List;

@ManagedBean
@RequestScoped
public class StationCourses implements Serializable {

//provide connection to db
private CourseQueries cq = new CourseQueries();
private List<Course> courses = cq.getCourses("station_naas");
private int courseNumber;

public void setCourse()
{
    courses = cq.getCourses("station_naas");
}//end method setCourse

public List<Course> getCourse() {
    return courses;
}//end method getCourseID

public void getCourseSelected(ActionEvent event)
{     
    // course:j_idt6:1:courseID";

    //HTML buttons generate ID like the one above
    //get char at 14 will get the unique button number
    //we get course according to that button and -1 
    //to correct the off by one error
    courseNumber = event.getComponent().getId().charAt(14) - 1;

    System.out.println(courses.get(courseNumber).getCourseID());
}//getCourseSelected

}//end class StationCourses
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-06 10:58:12

将代码更改为

代码语言:javascript
复制
   <h:form id="course">
                <ui:repeat value="#{stationCourses.course}" var="course">
                    <h:commandButton class="buttons"
                              id="courseID"
                              value="#{course.courseName}"
                              actionListener="#{stationCourses.getCourseSelected}"
                              style="alignment-adjust: central;
                              white-space: pre-line; word-wrap: break-word;"/>
                </ui:repeat>            
            </h:form>  

对于操作和actionListeners,您必须提到与变量不同的确切方法名。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22222270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档