日期:2014-05-20  浏览次数:20794 次

ACEGI在ACTION中无法调用getUserName
请教一下大家 我用了ACEGI认证系统 在JSP页面中调用 
SecurityContext context=(SecurityContext)SecurityContextHolder.getContext(); 
Authentication auth=context.getAuthentication(); 
String username=""; 
if(auth.getPrincipal() instanceof UserDetails){ 
username=((UserDetails)auth.getPrincipal()).getUsername(); 


可以然后在该JSP页面打印<%=username>可以得到登录用户的用户名 
但是在ATION中调用该方法,却抛出java.lang.NullPointerException异常,有没有人知道怎么回事啊?

------解决方案--------------------
你要username的信息放到reqest中或者session中进行传递的