0
我使用spring-acegi,並且我想從DAO層讀取IP地址。當我使用類似:從DAO層檢索IP地址
Authentication auth = SecurityContextHolder.getContext().getAuthentication();
if (auth != null) {
WebAuthenticationDetails details1 = ((WebAuthenticationDetails)auth.getDetails());
if (details1 != null) {
userIp = details1.getRemoteAddress();
}
}
身份驗證身份驗證的時刻爲空,我不能retreive IP地址。
我也試圖通過
String remoteAddress = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes())
.getRequest().getRemoteAddr();
來獲得IP地址,卻得到了一個編譯錯誤(我們使用GWT)。
任何人都可以幫助我嗎?謝謝。
你想做什麼? DAO層是什麼意思?這是在認證過程中嗎? –
爲什麼不創建一個更多的過濾器(礦石使用現有),並從HttpRequest中獲取IP並將其存儲在靜態ThreadLocal變量中以便在您的DAO中使用? – user1516873
拋出的異常是什麼? – erencan