2010-07-02 85 views
3

如何通過表達式語言訪問JSF隱式對象?表達式語言隱式對象

例如,如果我想確定當前委託人與哪個角色相關聯,我該怎麼做?

回答

4

如果您在JSP上使用JSF,那麼您可以像在「普通JSP EL」中那樣執行操作。

#{pageContext.request} 

如果你在Facelets的使用JSF,那麼你可以省略pageContext部分從,你會在「純JSP EL」的方式做。

#{request} 

無論哪種方式,它都會返回HttpServletRequest對象。

但是,確定用戶角色的唯一方法是isUserInRole(String role)方法。您無法將參數傳遞給標準EL中的方法。但是,當你用JBoss EL替換標準EL時,你可以這麼做。

#{request.isUserInRole(role)} 

要安裝的JBoss EL,只是把jboss-el.jar/WEB-INF/lib並添加以下到web.xml,假設你使用鑽嘴魚科:

<context-param>  
    <param-name>com.sun.faces.expressionFactory</param-name> 
    <param-value>org.jboss.el.ExpressionFactoryImpl</param-value> 
</context-param> 
+0

BalusC,感謝您的幫助。我剛剛升級到Tomcat 7,它已經更新了對EL的支持。我要去看看它是否有效。 – Wilson 2010-07-03 18:03:07