私の現在のコード。
<h:form>
<h:panelGroup id="messagePanel" layout="block">
<h:messages errorStyle="color: red" infoStyle="color: green" layout="table"/>
</h:panelGroup>
<h:panelGrid columns="2">
// some form input stuff here..
</h:panelGrid>
<h:commandButton class="register-btn" action="#{accountController.create}" value="#{bundle.Register}">
<f:ajax event="action" execute="@form" render="messagePanel"/>
</h:commandButton>
</h:form>
messagePanelは、検証エラーが表示される場所です。
成功イベントをキャプチャする方法を知りたいです。
[完了]ユーザーが誤った値を入力すると、ajax検証が行われ、誤った値が表示されます
[問題]成功した場合は、別のページにリダイレクトする必要があります。
**更新しました
createメソッド
public String create() {
try {
getFacadeUser().create(currentUser);
JsfUtil.addSuccessMessage(ResourceBundle.getBundle("/Bundle").getString("AccountCreated"));
return prepareCreate();
} catch (Exception e) {
JsfUtil.addErrorMessage(e, ResourceBundle.getBundle("/Bundle").getString("PersistenceErrorOccured"));
return null;
}
}
public String prepareCreate() {
current = new Account();
selectedItemIndex = -1;
return "index";
}
JSF2.1を使用しています