[code="java"]UsernamePasswordAuthenticationToken authen = new UsernamePasswordAuthenticationToken(
username, password);
WebAuthenticationDetails webdetails = new WebAuthenticationDetails(
request);
WebAuthenticationDetails
authen.setDetails(webdetails);
SecurityContextHolder.getContext().setAuthentication(authen);
[/code]
系统登录的时候调用一个Servlet根据Username从数据库取出User对象填充进上述代码,然后写了个过滤器在进行数据的拦截,但是双面的数据在过滤器使用SecurityContextHolder.getContext()
.getAuthentication().getPrincipal();无法得到填充的数据
自定义acegi的Authentication对象?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- beneo 2010-12-31 10:15关注
[code="java"]String loginName = request.getUserPrincipal().getName();[/code]
直接这样写试试看本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报