Есть ли возможность в весеннем веб-потоке возобновить поток из состояния действия или состояния решения?
Поток, который мне нужно реализовать, требует от него перепрыгнуть, чтобы перейти по какой-либо ссылке в письме. У меня есть контроллер, который обрабатывает ссылку электронной почты, и я пытаюсь возобновить предыдущий поток, но не из последнего состояния просмотра.
У меня есть что-то вроде этого
<view-state id="start>
<transition on="submit" to="handleStep1"/>
</view-state>
<action-state id="handleStep1"/>
<evaluate expression="a.something()"/>
<transition on="emailSent" to="show-email-sent"/>
<transition on="changeSomething" to="show-change"/>
</action-state>
<view-state id="show-email-sent" view="emailSentPage">
</view-state>
<view-state id="show-change" view="showChangePage">
</view-state>
Когда состояние действия решает отправить электронное письмо, пользователь показывает страницу отправленного электронного письма. Теперь он нажмет на ссылку в электронном письме и вернется к состоянию действия, которое решит, что теперь он может перейти на страницу «показать-изменить».
Я могу возобновить поток, получив flowRequestContext.getFlowExecutionUrl()
, а затем использовать его в контроллере, который обрабатывает щелчок электронной почты, но этот URL-адрес всегда перенаправляет в состояние просмотра (в зависимости от того, когда я сохраняю его значение, он указывает на начальный вид - состояние или состояние просмотра, отправленное по электронной почте. Как я могу возобновить поток из состояния действия? Или, может быть, другая идея, как обрабатывать такой случай?