Проблема с бином Dialogs в Action

Добрый день.

Создал собственное действие, расширяющее функционал BaseAction. Хотел добавить вызов диалогового окна, для этого заинжектил бин Dialogs.

При открытии экрана падает в ошибку. В чем может быть проблема, на что обратить внимание?
image

Действие создаю так:

image
Версия платформы 7.2.13

Добрый день,
Интерфейс Dialogs недоступен непосредственно для инжекции в классы Action, это не бин.

Получить его можно так:

Dialogs dialogs = ComponentsHelper.getScreenContext(target).getDialogs();

Где target - это какой-нибудь UI компонент.

Пример в платформе - см. com.haulmont.cuba.gui.actions.list.ExcelAction#execute

1 симпатия

Вопрос такой, мы же обычно добавляем действия к кнопке.
Я сейчас проверил вот такой вариант:
image
Он работает, но корректно ли так кастить?
Возможно подскажете некий общий для всех экранов компонент, который можно передать?

Табличные действия наследуются от io.jmix.ui.action.ListAction, и там есть target.

Для остальных действий вполне нормально сделать как вы показали, по-моему.
Практически все компоненты являются BelongToFrame.

1 симпатия

Благодарю!