3
我剛剛閱讀Adam Bien的Why stateful and local anti-facades are KISS,他建議使用帶有EntityManager的SFSB在整個客戶端交互過程中保留實體。帶有不可序列化的EntityManager的有狀態會話bean鈍化?
簡化版,在集羣環境中這種失敗不是在評論中提及,而且每當SFSB應該由容器鈍化?
如果我說得對,你會建議什麼樣的解決方案?我想盡量減少應用程序中的層數,將SFSB綁定到對話範圍並直接在我的JSF視圖中引用它們會很有用。
我可以回答#1:是的,擴展PC將防止鈍化(從而進行故障切換)。我不知道如何回答#2;我不清楚你想要解決什麼問題。 –
它涉及到鈍化時是交易範圍還是擴展?我試圖找出用於我的應用程序的EJB 3/CDI/JSF的基本設計。內存消耗可能不會成爲問題,所以我認爲我會去「有狀態」的設計來規避合併實體。 – user953217
我猜Tx或擴展類型**確實很重要。看看* EJB 3.1 FR規範* **「4.2有狀態會話Bean的會話狀態」**:「一個容器**不能**使用擴展持久化上下文鈍化有狀態會話Bean,除非下列條件met:1.持久化上下文中的所有實體都是可序列化的。2. EntityManager是可序列化的。「 –