JSF 2 컴포넌트에 ajax 리스너를 프로그래밍 방식으로 또는 동적으로 추가하는 방법은 무엇입니까?JSF 2 컴포넌트에 ajax 리스너를 프로그래밍 방식으로 또는 동적으로 추가하는 방법은 무엇입니까?
...
FacesContext facesContext = FacesContext.getCurrentInstance();
AjaxBehavior dragStart = (AjaxBehavior)facesContext.getApplication().createBehavior(AjaxBehavior.BEHAVIOR_ID);
dragStart.addAjaxBehaviorListener(new DragEnterListener());
dragStart.setTransient(true);
component.addClientBehavior("dragstart", dragStart);
...
public class DragEnterListener implements AjaxBehaviorListener {
@Override
public void processAjaxBehavior(AjaxBehaviorEvent event) throws AbortProcessingException {
System.out.println("AjaxListener CALLED!!! ");
}
}
을하지만 thid이 작동하지 않습니다 :
나는 시도했다.
serverError: class java.lang.IllegalStateException
cz.boza.formcreator.FormModel$DragEnterListener
내가 RichFaces이 예를 발견 :이 더
addAjaxBehaviorListener(MethodExpression methodExpression)
없다 AjaxBehavior 클래스에 http://community.jboss.org/message/611571
그러나 일반의 JSF 2 페이지에서 나는이 JS 예외있어 단지
addAjaxBehaviorListener(ValueExpression valueExpression)
나는 이것을 여러 날 동안 풀려고 노력하고있다.
도와주세요.
대단히 감사합니다.
전체 스택 추적을 게시하십시오. 그렇지 않으면 궁극적으로 예외를 발생시키는 호출 경로에 대해 알지 못합니다. 이 정보는 모두 스택 추적에 있습니다. – BalusC