JSF 1.2: событие valueChangeListener не возвращает вновь выбранное значение
У меня есть этот боб:
public class PageBean
{
private List selectPages;
private List selectRowsPerPage;
private String selectedPage;
private String selectedRowsPerPage;
private int pages = 0;
// getter methods
public boolean getRender()
{
boolean rendered = pages > 0? true: false;
return rendered;
}
public List getSelectPages()
{
int value = 0;
selectPages = new ArrayList();
for (int i = 1; i < (pages + 1); i++)
{
if (i > 1) { value = i * 10; }
selectPages.add(new SelectItem(Integer.toString(value), Integer.toString(i)));
}
return selectPages;
}
public String getSelectedPage()
{
if (selectedPage == null) {
selectedPage = "1";
}
return selectedPage;
}
// setter methods
public void setSelectPages(List selectPages) {
this.selectPages = selectPages;
}
public void setSelectedPage(String selectedPage) {
this.selectedPage = selectedPage;
}
// action methods
public void changePage(ValueChangeEvent event)
{
PhaseId phase = event.getPhaseId();
if (phase.equals(PhaseId.INVOKE_APPLICATION)) {
System.out.println((String) event.getNewValue());
setSelectedPage((String) event.getNewValue());
FacesContext.getCurrentInstance().renderResponse();
} else {
event.setPhaseId(PhaseId.INVOKE_APPLICATION);
event.queue();
}
}
}
И h: selectOneMenu это:
Вышеуказанные коды дляchangePage () метод не возвращает новое выбранное значение страницы из h: selectOneMenu. Вместо этого он возвращает значение страницы до отправки. Я нене понимаю почему.
Может кто-нибудь помочь, пожалуйста? Застрял на этом уже 2 дня.