История изменений
Исправление memnek, (текущая версия) :
Как оказалось, не всё так просто. Из js нельзя вызвать какой-либо метод бина даже через всякие jsf.ajax.request
. Приходится извращаться:
<h:outputScript>
gantt.attachEvent("onTaskSelected", function(id, item) {
document.getElementById('#{someData.clientId}').value = id;
document.getElementById('#{invisibleClickTarget.clientId}').click();
});
</h:outputScript>
<h:form id="hiddenForm" style="display: none;">
<h:inputHidden id="someData" binding="#{someData}" value="#{customEventBean.task}" />
<h:commandButton id="invisibleClickTarget" binding="#{invisibleClickTarget}">
<f:ajax execute="@form" listener="#{customEventBean.listener()}"/>
</h:commandButton>
</h:form>
Ну а в соответствующем бине собственно реализация слушателя.
Исходная версия memnek, :
Решение, кому интересно
Как оказалось, не всё так просто. Из js нельзя вызвать какой-либо метод бина. Приходится извращаться:
<h:outputScript>
gantt.attachEvent("onTaskSelected", function(id, item) {
document.getElementById('#{someData.clientId}').value = id;
document.getElementById('#{invisibleClickTarget.clientId}').click();
});
</h:outputScript>
<h:form id="hiddenForm" style="display: none;">
<h:inputHidden id="someData" binding="#{someData}" value="#{customEventBean.task}" />
<h:commandButton id="invisibleClickTarget" binding="#{invisibleClickTarget}">
<f:ajax execute="@form" listener="#{customEventBean.listener()}"/>
</h:commandButton>
</h:form>
Ну а в соответствующем бине собственно реализация слушателя.