EventPublisher with multithreading

Добрый день, подскажите, пожалуйста:

Мы используем в проекте spring state machine
Для одного из состояний необходимо запускать action в котором нужно уведомлять пользовательский интерфейс о смене состояния

image
image

но state machine запускает action в параллельном потоке и UiEventPublisher использовать нельзя

image

Как можно поступить в этой ситуации?

Я со spring state machine не работал, так что думаю лучше подождать ответа разработчиков.

Но пока-что можете просмотреть пример с GlobalUiEventPublisher. В том примере событие отправляется во все экраны.
Так что если вы хотите отправить событие определенному юзеру то нужно будет его доработать.

Пробовали в configure(StateMachineConfigurationConfigurer<DocumentState, DocumentEvent> config) сделать config.withConfiguration().taskExecutor(new SyncTaskExecutor())?

Ярослав спасибо, в нашем случае GlobalUiEventPublisher то что нужно, подскажите еще вопрос - если мы используем просто UiEventPublisher, то события доступны только для UI пользователя, чей поток вызвал UiEventPublisher?

Да. В примере что я скинул как раз об этом и говорится.

It delivers events to screens opened by the current user in a web browser tab. In other words, if a user clicks some button in a browser tab, and this button click eventually invokes the code that sends an event, the event will be delivered to screens opened in that tab.