В настоящее время я также работаю с CDI-разговорами и пытаюсь создать приложение на основе разговоров. Я решил большинство проблем (не легко без какого-либо полезного учебника там ...). Может быть, я могу помочь.
Моя первая проблема заключалась в том, что я не перенаправил представление и не добавил cid в GET при переходе на следующую страницу Conversation-UseCase. Я задал соответствующий вопрос на форуме Weld .
Там я узнал, что в моем управляемом / сварочном бине мне нужно перенаправить на следующую страницу и добавить cid в качестве GET-параметра.
Только после этого вы сможете получить доступ к элементам вашего компонента в рамках беседы на следующей странице.
Поэтому, когда я вхожу на первую страницу моего разговора, я вызываю метод start (например, с помощью commandLink) в моем ConversationScoped-Bean, например:
public String startRegister() {
if (conversation.isTransient)
conversation.begin();
return "register_start?faces-redirect=true&includeViewParams=true&cid=" + conversation.getId()
}
Решает ли это вашу проблему?
Я также задал вопрос в StackOverflow, связанный с ViewExpiredException, который должен обрабатываться при работе с беседами - здесь .