这个是action用户登录的方法:
- Java code
public ActionForward index(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){ UserForm userForm=(UserForm)form; TblUser user=biz.getLogin(userForm.getUser()); String gotoPage=""; if(user!=null){ request.getSession().setAttribute("user",user); gotoPage="index"; }else{ request.setAttribute("message","对不起!您输入的密码有误!"); gotoPage="login"; } return mapping.findForward(gotoPage); }
这就是登录成功后显示的页面取值部分:
- Java code
<marquee direction="left"> <em> 管理员:${user.userName} 您好,感谢登陆后台管理系统</em> </marquee>
求高手们看看,有没有问题啊,就是拿不到值。打断点user里面都有值,但就是拿不出来。谢谢了。。。。
------解决方案--------------------
session要用sessionScope.user.userName吧
------解决方案--------------------
${sessionScope.user.userName}
------解决方案--------------------
EL表达式是默认从page范围开始找的
------解决方案--------------------
设置struts配置文件中对应action的属性: scope="session"
------解决方案--------------------
request.setAttribute("user",user);
------解决方案--------------------
lz既然说后台打印能得到user的值,但页面上又不显示,可能是你的web配置文件的 service的版本太低,像你用${}拿值的话,必须是版本2.4或以上的,像<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">这个版本是2.4的可以拿值,不知道lz是不是这个问题
------解决方案--------------------
------解决方案--------------------
lz你存到session看看,我上面是从session拿值,你存入request,说不定你重定向了才没值,或者配置文件搞成重定向
------解决方案--------------------
marquee direction="left">
<%
TblUser user = (TblUser)request.getSession().getAttribute("user") ;
%>
<%=user.toString()%> <!--看看有没有结果?-->
<em> 管理员:${user.userName} 您好,感谢登陆后台管理系统</em>
</marquee>
------解决方案--------------------
------解决方案--------------------
代码没问题 我怀疑你的页面支持EL表达式吗,
------解决方案--------------------
- Java code
public ActionForward index(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){ UserForm userForm=(UserForm)form; [color=#FF0000]System.out.println(userForm.getUserName());[/color] //试试输出的是什么 TblUser user=biz.getLogin(userForm.getUser()); String gotoPage=""; if(user!=null){ request.getSession().setAttribute("user",user); gotoPage="index"; }else{ request.setAttribute("message","对不起!您输入的密码有误!"); gotoPage="login"; } return mapping.findForward(gotoPage); }