最近搞了Liferay真是郁闷,研究好些天才搞明白一些基本东西。下面写一个在liferay比较重要的一个东西就是session ; 写portlet的时候 大家都会想到怎么得到用户的 session ID值 ;可怎么取session值就比较麻烦了。可能说到session 大家都会想到session值比较好取。而在liferay里面 就不是这么简单了,在liferay登陆的时候 把用户id 值放到了 session.setAttribute("j_username"); 里面去了 可当我们get的时候 得到的值取是空的这是因为liferay里面有两个session ,而这两个session并不是同类的 所以当我们取的时候就是空值了,
PortletSession 和 HttpSession 这两个 ,通过调试可以看到,liferay在进行环境初始化时,是以USER_ID的属性名进行的保存,所以,以下这简单的两句就是
HttpSession ses = req.getSession();
String user=(String) ses.getAttribute("USER_ID");
还有一种方法 比较简单 通过 request 直接也可以取到 request.getRemoteUser() 。
HttpSession ses = req.getSession();
String user=(String) ses.getAttribute("USER_ID");
还有一种方法 比较简单 通过 request 直接也可以取到 request.getRemoteUser() 。
