在Action中的某一个方法A将一条错误消息加入到session中,
然后跳转到另一个方法B,在方法B中将一条错误消息加到request中
为什么页面上只显示了request中的消息?
如果跳转到另一个页面,session又显示出来了
这是为什么呢?消息能够显示,应该是没有丢失的吧。。。
不能同时显示request和session中的消息吗?
还是说当request和session中都有错误消息时,优先显示request中的?
说明:
方法A redirect = true
方法B redirect = false
JSP画面上用<html:errors/>显示信息
分不多,请各位大大帮帮忙
在线等!
为什么session中的消息无法显示?
答案:5 悬赏:60 手机版
解决时间 2021-01-03 01:47
- 提问者网友:你挡着我发光了
- 2021-01-02 10:13
最佳答案
- 五星知识达人网友:一叶十三刺
- 2021-01-02 11:19
你 Session 和 request 中存储的信息的 key 名字是不是一样的?
比如:
sesison.setAttribute("key","value1");
request.setAttribute("key","value2");
如果是的话,那就正常;
因为如果你用el表达式取的话,他会从最小范围开始找这个key,当然 request 的有效范围比 Session 小,你可以再El表达式可以这样写: ${sessionScope.YouKey} 这个是取 Session的
${requestScope.YouKey} 这个是取 Request的
同理.其他范围也是. 这样写的好处还可以提高jsp效率。
比如:
sesison.setAttribute("key","value1");
request.setAttribute("key","value2");
如果是的话,那就正常;
因为如果你用el表达式取的话,他会从最小范围开始找这个key,当然 request 的有效范围比 Session 小,你可以再El表达式可以这样写: ${sessionScope.YouKey} 这个是取 Session的
${requestScope.YouKey} 这个是取 Request的
同理.其他范围也是. 这样写的好处还可以提高jsp效率。
全部回答
- 1楼网友:妄饮晩冬酒
- 2021-01-02 13:26
如果你不加范围
那么读取的范围顺序应该是从小到大的 request<session
- 2楼网友:爱难随人意
- 2021-01-02 12:57
这几天都有点这种问题。
没事的,农场应该是在维修把。
- 3楼网友:行雁书
- 2021-01-02 11:33
因为页面跳转的时候默认是会从request中取数据的,session中的数据一般都是要你去操作,你可以强制地去读取session中的数据。
- 4楼网友:零点过十分
- 2021-01-02 11:27
先找request中的,找不到才会去找session中的,找到了就不找了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯