NutzCN Logo
问答 jstl用${sessionScope.type}取不到数据
发布于 2505天前 作者 hcxxiaomo 3770 次浏览 复制 上一个帖子 下一个帖子
标签:

登录的代码

 @At
    public Object login(@Param("username")String name, @Param("password")String password, HttpSession session) {
		  session.removeAttribute("type");
		 if (StrUtil.isBlank(name) || StrUtil.isBlank(password) ) {
        	return false;
		}
		 User user = userService.login(name, password);
        if (user == null) {
            return false;
        } else {
            	 session.setAttribute("type","SESSION_TYPE_SUPER");
            return true;
        }
    }

跳转页面的代码

@At
		@Ok("jsp:jsp.manager.index")
		public void index(HttpSession session){
		log.infof("str = %s" ,session.getAttribute("type");	
		}

前端jsp的代码,用jstl取值

<h2>用户类型:${sessionScope.type}</h2>

很奇怪,登录成功之后就是得不到session里面的type,但是日志中能正确输出“SESSION_TYPE_SUPER”呢。
用的nutz版本是1.62,之前用1.61也一样。请问是哪里出问题了,没有使用shiro。

5 回复

其他EL表达式生效了吗?

输出是啥子?jsp头部是怎么引入 jstl 的?

来自美丽的 NutzCN

不好意思,白天出去了,现在才回来,让@wendal和@zozoh久等了。
其他EL表达式成立的,比如

<c:if test="${true }">yes</c:if>

会输出yes

引入的jsp头部是这样的

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>

输出就是为空,就是什么输出都没有。

不好意思,找到原因了。@wendal和@zozoh
是在

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" %>

里面设置了

 session="false"

导致session没取到,耽误了大家的时间,不好意思!已经解决了。

呵呵,新春快乐 ^_^!

来自美丽的 NutzCN

添加回复
请先登陆
回到顶部