Jsp初学者,想把Jsp页面里本来已经存在的对象(sessionScope得来的),传参到另外一个Servlet里处理。
Jsp页面存在的对象:
${sessionScope.Cart}
${sessionScope.user}
传参代码如下:
<a href= getOrders?user=${user}&Cart=${Cart}> 去下单</a> 结果发现一直传参失败,提示空指针,但是在浏览器地址栏发现提交上去的参数是:http://localhost:8080/TakewayWeb/getOrders?user=com.Takeway.model.User@335c9979&Cart={3=com.Takeway.model.Cart@b581ee4,提交上去的是地址,然而是空指针错误,取值失败。Servlet里取对象代码: User user =(User) request.getAttribute("user");
Map<Integer, Cart> cart = (Map<Integer, Cart>) request.getAttribute("Cart");
Jsp页面存在的对象:
${sessionScope.Cart}
${sessionScope.user}
传参代码如下:
<a href= getOrders?user=${user}&Cart=${Cart}> 去下单</a> 结果发现一直传参失败,提示空指针,但是在浏览器地址栏发现提交上去的参数是:http://localhost:8080/TakewayWeb/getOrders?user=com.Takeway.model.User@335c9979&Cart={3=com.Takeway.model.Cart@b581ee4,提交上去的是地址,然而是空指针错误,取值失败。Servlet里取对象代码: User user =(User) request.getAttribute("user");
Map<Integer, Cart> cart = (Map<Integer, Cart>) request.getAttribute("Cart");
成功了,是楼下的办法,不过有个问题,我那两个对象都是在session里的,所以不用url传值,改而在Servlet里request.getSession().getAttribute()也可以接受吗?
成功了,是楼下的办法,不过有个问题,我那两个对象都是在session里的,所以不用url传值,改而在Servlet里request.getSession().getAttribute()也可以接受吗?
request.getSession()就是获得session对象,request.getSession().getAttribute()等于session.getAttribute(),后面说的是在servlet中通过session获得?没看懂?试试就知道了,错误全是试对的
成功了,是楼下的办法,不过有个问题,我那两个对象都是在session里的,所以不用url传值,改而在Servlet里request.getSession().getAttribute()也可以接受吗?
jsp 也是servlet,只要能取到HttpServletRequest 就可以,servlet只是javaweb http请求的入口