Я много читал о f: ajax, работающем с другими тегами jsf или html, но этого, похоже, недостаточно!Действие JSF никогда не срабатывало по h: commandButton (с f: ajax)
У меня есть commandButton с (необходимым?) Тегом f: ajax на моей странице, и действие никогда не запускается. Вот код.
<html>
<h:head>
</h:head>
<h:body>
<h:form>
<h:commandButton action="#{bean.myFirstFunction}" value="Submit">
<f:ajax render=":wrap" />
</h:commandButton>
</h:form>
<h:panelGroup id="wrap">
<h:panelGroup id="content" rendered="#{bean.myVariable != null}">
<h:form>
<h:commandButton action="#{bean.mySecondFunction}" value="Submit">
<f:ajax render=":wrap" />
</h:commandButton>
</h:form>
</h:panelGroup>
</panelGroup>
<h:body>
</html>
Так как выше я получил две кнопки, первую из оберточных работ, и она должна показать оберточную панель, которая скрыта в самом начале. Второй - в обертке и должен запускать совершенно другое действие. (обертывание должно оставаться на месте)
Вот боб.
@ManagedBean(name = "bean")
@ViewScoped
public class myBean {
private Object myVariable;
public void setMyVariable(Object o) { ... }
public Object getMyVariable() { ... }
@PostConstruct
public void init() {
this.myVariable = null;
}
public void myFirstFonction() {
this.myVariable = new Object();
}
public void mySecondAction() {
System.out.println("here");
}
}
Когда я запускаю, я вижу первую кнопку. Я нажимаю на него, а второй появляется. (поэтому вызывается первая функция, экземпляр объекта и тэг ajax обертывается. Однако, когда нажата вторая кнопка, ничего не происходит.
Я написал только часть своего кода. Надеюсь, ошибка здесь.
Я думаю, что об оказанной опции группы панели, но я не могу найти его точно.
Благодаря
Должно ли это работать с управляемым компонентом RequestScope? –
Точка 9 из https://stackoverflow.com/questions/2118656/hcommandlink-hcommandbutton-is-not-being-invoked/2120183#212018 – Saljack
@Saljack: Да, список постоянно обновляется с тех пор. – BalusC