簡體   English   中英

如何使用@ConversationScoped處理多個支持bean?

[英]How to use @ConversationScoped to handle more than one backing bean?

Java 1.7 / JSF 2 / JPA 2 /休眠4

我已經閱讀了許多有關@ConversationScoped的教程和文章,並且在所有這些文章中,消息都是相同的:當您對一個后備bean有很多視圖時,請使用它。

但是,我有一個業務流程場景,其中我必須:

  1. 在列表頁面中顯示許多項目(由列表支持Bean支持);
  2. 顯示一個編輯頁面(由另一個支持Bean支持)以編輯列表中的特定項目;
  3. 編輯完成后,請返回應該顯示相同先前上下文的列表頁面。

編輯頁面很復雜,並且具有許多依賴關系,因此在列表支持bean中就沒有意義了,這就是為什么我更喜歡讓兩個支持bean在兩個不同的頁面上工作,而只是在一個業務環境中。

能做到嗎? 步驟是什么?

經過測試,我可以使其正常工作。 我要做的就是在編輯按鈕上添加cdi button參數。 為了使其正常工作,我的編輯按鈕必須是這樣的:

<p:commandButton title="Edit"
                 action="#{myMB.nextView}"
                 ajax="false">
    <f:param name="id" value="#{bean.id}"/>
    <f:param name="cid" value="#{myMB.conversation.id}"/>
</p:commandButton>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM