2012-02-16 84 views
0

我正在學習JSF/facelets。假設我有兩個名稱相同,但包裝不同的ManagedBeans。當在xhtml中使用bean時,它接縫JSF將按字母順序解析輔助bean。如果團隊中有許多人,那麼如何避免那個人不會覆蓋其他支持bean,因爲他們可能會爲他們的bean使用相同的名稱。在這種情況下是否有最佳做法?如何在JSF2.0中處理多個具有相同名稱的託管bean

回答

2

爲什麼不在託管的bean名稱前加上包名稱?

例子:

package myPackage; 

@ManagedBean(name="myPackageMyClass") 
@ViewScoped 
public class MyClass { .. } 
+0

馬特,當然可以。由於我是JSF的新手,我想知道這是否是最佳做法。實際上,我試圖將它們打包爲分離的庫(.jar)作爲複合組件資源,希望它們能夠解析同一個庫中的類,但是沒有運氣:managedbean被解析爲它們在類路徑中遇到的第一個無論它在哪裏。 – 2012-02-16 09:16:44

1

如果bean類具有相同的類名,然後它已經從一開始就設計不良。問問你自己,爲什麼他們有同樣的名字?他們有相同的責任嗎?爲什麼不把它做成一堂課?或者他們有不同的責任?給班級一個不同的名字。

+0

假設我們正在構建一個需要數百個JSF頁面的大型企業應用程序。這些頁面服務於不同的目的(責任)。我們將Web層的開發分配給許多不同的人,並要求他們將自己的支持bean放到他們自己的包中(例如,Toms轉到web.beans.tom,Allens轉到web.beans.allen)。但是,由於豆的數量如此之多,有可能是一些豆在不同的包裝中被賦予相同的名稱,即使它們有不同的責任。 – 2012-02-27 10:48:58

+0

體面的IDE將創建警告和運行時容器將 – Kukeltje 2016-09-03 07:33:19

相關問題