onNodeSelect в Mindmap Primefaces 3.5 не вызывается

Небольшой вопрос, касающийся карты разума и события select в простом виде.

Вот мой компонент

        <h:form>
            <prime:mindmap value="#{artifactSelectionBackingBean.root}"
                style="width:100%;height:600px;border:1px solid black;"
                rendered="#{artifactSelectionBackingBean.visibleMindmap}">
                <prime:ajax event="select"
                    listener="#{artifactSelectionBackingBean.onNodeSelect}" />
                <prime:ajax event="dblselect"
                    listener="#{artifactSelectionBackingBean.onNodeDblselect}"
                    update="output" oncomplete="details.show()" />
            </prime:mindmap>

            <prime:dialog widgetVar="details" header="Node Details"
                resizable="true" modal="true" showEffect="fade" hideEffect="fade">
                <h:outputText id="output"
                    value="#{artifactSelectionBackingBean.selectedNode.data}" />
            </prime:dialog>
        </h:form>

Теперь другие методы в точности копируются / вставляются из витрины ( http://www.primefaces.org/showcase/ui/mindmap.jsf). Поведение состоит в том, что карта разума отображается (с правильной корневой и начальной конфигурацией), однако, событие "select" ничего не делает, и "двойной выбор" возвращает пустое поле. Что я делаю неправильно? Это было скопировано прямо из витрины в конце концов...

Кроме того, я использую Primefaces 3.5. Любая помощь приветствуется!!!

PS Я знаю, что добавил визуализированный атрибут, но это "true", так как я установил его правильно, и карта разума правильно отображается в начале.

1 ответ

Решение

ХОРОШО! Я наконец-то нашел ответ, когда просматривал stackru по всем видам проблем, связанных с mindmap / primefaces, и отчаянно пытался применить любое решение.

По-видимому, компонент ManagedBean/Named (если вы используете CDI) должен быть @SessionScoped и НЕ @RequestScoped (который используется по умолчанию). Если это @RequestScoped, вы получаете своеобразное поведение, и определенные события (в моем случае событие "select") НЕ запускаются.

Я не знаю, является ли это ошибкой или тщательно исключено из документации. Тем не менее, кто-то должен документировать это явно!

Другие вопросы по тегам