Реализация LinkHandlerProcessor

Добрый день.

Подскажите, пожалуйста.
Как сейчас правильно реализовать LinkHandlerProcessor?

@Component("gates_OpenTaskLinkHandler")
@Order(JmixOrder.HIGHEST_PRECEDENCE - 10)
class OpenTaskLinkHandler : LinkHandlerProcessor{
    override fun canHandle(linkContext: ExternalLinkContext): Boolean {
        return "openProcessForm" == linkContext.action
    }

    override fun handle(linkContext: ExternalLinkContext) {
        TODO("Not yet implemented")
    }
}

Условный хендлер, не хочет отлавливать ссылки вида:
http://localhost:8080/openProcessForm?taskId=b8c3fe56-199f-11ed-b020-0c9d922f857f

Попробуйте подебажить метод io.jmix.ui.sys.LinkHandler#handle. Посмотрите например что в списке процессоров.

@krivopustov Константин, посмотрел класс io.jmix.ui.sys.LinkHandler увидел из java-дока, что есть свойство jmix.ui.link-handler-actions (в документации нет, к сожалению). Добавил, туда свой хендлер jmix.ui.link-handler-actions=open, o, openProcessForm
К сожалению на этом все. Ни метод canHandleLink(), ни метод handle() не вызываются вовсе.
Даже если дергать “стандартный” (для кубы) http://localhost:8080/open?screen=gates_User.edit&item=gates_User-60885987-1b61-4247-94c7-dff348347f93
Собственно в jmix я не вижу ни одной стандартной реализации LinkHandlerProcessor.

Михаил,
Спасибо что указали на проблему. Создал тикет, попробуем разобраться.

1 симпатия

@krivopustov Константин, доброго дня.

Я вижу, что принято решение по этому тикету об удалении функциональности.
Подскажите, каким образом я могу, используя механизм urlRouting получить url из бина, который отправляет письма, чтобы вставить ссылку в письмо? У urlRouting - ui scope.

UPD: Вопрос, видимо, снимаю, потому что вот тут был ответ. Попробую воспользоваться.

UPD2: В общем, в моем случае все работает. Но пока ковырялся, понял, что, например, на формы задач из bpm-аддона (input-dilalog) ссылок уже не реализовать.

Добрый день!
Jmix 1.5.5
Предложенный метод из UrlRouting в обычных Spring Компонентах - #2 от пользователя pinyazhin
не работает из джоба.