Do ViewScope beans позволяют использовать вызовы ajax?JSF-вызовы ajax, поддерживаемые компонентом ViewScope?
Например:
Вот страница XHTML:
<h:body>
<h:selectOneMenu value="#{test.selected}">
<f:selectItem itemValue="2" itemLabel="2" />
<f:selectItem itemValue="3" itemLabel="3" />
<f:ajax listener="#{test.updateData()}" />
</h:selectOneMenu>
</h:body>
Вот ViewScoped Bean:
@ViewScoped
@Named
public class test implements Serializable{
private String selected;
public void updateData(){
System.out.println("Ajax call successful.");
}
public String getSelected() {
return selected;
}
public void setTest(String test) {
this.selected = selected;
}
}
Когда я попробовал это, он не работает.
Вы не очень ясно поняли, что «не работает». Я просто сделаю так, что вы не увидите ничего напечатанного в stdout. В будущем, пожалуйста, уточните проблему в перспективе разработчика, а не в перспективе enduser. Вызывается функция JS/ajax? (прочитайте консоль JS для ошибок) Правильно ли отправлен HTTP-запрос? (читать HTTP-монитор трафика в разделе «Сеть» в наборе инструментов разработчика браузера) Является ли компонент создан и запущены методы? (положить контрольные точки, запустить отладчик, прочитать журналы сервера для исключений и т. д.). В чем состоит тело ответа HTTP-ответа? И т.д.. – BalusC