2011-06-08 52 views
3

我在寫一個使用JSF 2.0,java ee和glassfish的應用程序。JSF 2.0如何根據用戶權限顯示元素?

我的用戶界面是簡單的xhtml包含jsf。

我希望我的用戶登錄並根據他們的權利在同一頁面上顯示不同的元素。

是否有可能使用jaas?

在此先感謝 LOIC

+0

也看到http://stackoverflow.com/questions/5800724/how-can-i-render-a-jsf-component-based-on-if-the-date-is-greater-than-今天-DT – 2011-06-08 13:26:38

回答

6

如果你不想寫框架類型代碼做這個「幕後」你可以在組件的渲染屬性綁定到該檢查用戶的訪問權限的方法例如

public boolean isUserAllowedAccess() { 
     return FacesContext.getCurrentInstance().getExternalContext(). 
      isUserInRole("ROLE_ADMIN"); 
     // or whatever authorization code you want 
    } 

然後在JSF標籤的'rendered'屬性中引用它。

rendered="#{authBean.userAllowedAccess}" 

可以使用面板例如包裹的多個部件

<h:panelGroup rendered="#{authBean.userAllowedAccess}"> 
+0

好thx :)我以類似的方式做 – user789148 2011-07-05 02:16:01

相關問題