最常用的方法是登錄一次,驗證與數據庫用戶信息(UNAME,密碼),然後 在會議用戶數據或用戶角色節約(例如,具有會話作用域bean)。
這樣的用戶數據\用戶角色依然存在,可以訪問當你需要它(服務器端或客戶端)
public class UserSession implements Serializable {
// login-related fields
protected String userName;
protected String userPassword;
protected Object requestInfo;
//session related info
private Object sessionInfo ;
private boolean loggedIn;
/** This method tries to login the user
*/
private login (userName,password){
loggedIn = callDbAndAuthenticateUser(userName,password)
}
定義一個bean的作用域會話,並更新它的會話
在另一個bean中或直接從jsf頁面檢查getter isLoggedIn以知道用戶是否已登錄。
編輯
你使用EJB \ RMI當你訪問database.Those問題是不一定相同\相關,
可以憑據傳遞到您遠程調用的方法,或您可以在本地服務器上處理授權,並讓您的本地身份驗證機制調用遠程方法。
查看JEE API Java認證和授權服務更多信息和示例http://docs.oracle.com/javase/1.5.0/docs/guide/security/jaas/JAASRefGuide.html#Sample – 2012-02-06 03:19:14