3
보통 나는 아래와 같이합니다. 버튼을 클릭하면 트랜지션이 실행됩니다. h : selectOneMenu에서 값 변경시 전환을 실행하는 방법?
<!-- view -->
<h:form>
<h:commandButton action="doit">
<f:ajax render="@form"/>
</h:commandButton>
</h:form>
<!-- flow -->
<transition on="doit">...</transition>
방법에 변화 값에 전환을 발사 시간 (예를 들어) : selectOneMenu?
<h:form>
<h:selectOneMenu value="#{selected}">
<f:selectItems value="#{items}/>
<f:ajax event="valueChange" render="@form" />
</h:selectOneMenu>
</h:form>
편집 : 나는 F에 리스너를 등록하는 방법에 대한 생각 : Ajax와 webflow 이벤트를 준비하지만, 어떻게 이벤트를 사용하는 ...? 아무도 도와주지?
<h:form>
<h:selectOneMenu value="#{selected}">
<f:selectItems value="#{items}/>
<f:ajax event="valueChange" render="@form" listener="#{bean.changeListener}" />
</h:selectOneMenu>
</h:form>
자바 :
import javax.faces.event.AjaxBehaviorEvent;
import org.springframework.webflow.execution.Event;
public class Bean {
public void changeListener(AjaxBehaviorEvent event) {
// prepare webflow event
Event e = new Event(event.getSource(), "doit");
// propagate this event... ???
}
}