【发布时间】:2016-06-30 04:27:46
【问题描述】:
我正面临一个非常奇怪的情况。我创建了一个简单的 Web 应用程序,在其中我使用索引文件登录,然后它转到 servlet 进行验证并转发到欢迎 jsp 页面......从那里我还有两个链接连接到两个不同的 jsp 页面。现在发生的事情是我在 LoginServlet 中设置了包含用户名和密码的对象。现在,当它转发到欢迎 jsp 时,我能够检索该对象,但之后在每个 jsp 中,我得到的会话变量为空。虽然同一个应用在我的朋友 eclipse 上运行良好。
我正在使用 tomcat 8 和 eclipse mars 这是登录 servlet
`LoginModel model = (LoginModel) request.getAttribute("login");
HttpSession session=request.getSession();
session.setAttribute("loginmodel", model);
System.out.println("uid "+model.getUid());
LoginService lser = new LoginServiceImpl();
int x = lser.login(model);
if (x == 1) {
request.getRequestDispatcher("welcome").forward(request, response);
} else {
response.getWriter().println("<h2>Login Id or Password invalid</h2>");
RequestDispatcher rd = request.getRequestDispatcher("index.jsp");
rd.include(request, response);
}
这里是欢迎页面
<body>
<%LoginModel model=(LoginModel)session.getAttribute("loginmodel");
out.print(model);
%>
${sessionScope.loginmodel};
<h2><a href="logout">LOGOUT</a></h2>
<section class="container">
<div class="login">
<h2><a href="viewall">VIEW ALL</a></h2>
<h2><a href="edit">EDIT</a></h2>
</div>
</section>
</body>
这里是编辑jsp
<body>
<%LoginModel lm=(LoginModel)session.getAttribute("loginmodel");
out.print(lm);
%>
<h2><a href="logout">LOGOUT</a> <a href="welcome">HOME</a></h1><br><br>
<section class="container">
<div class="login">
<form action="editjspcontroller">
<h3><p><label>Enter No</label></p></h3><p><input type="text" name="ppno" id="no"></p>
<p class="submit"><input type="submit"></p>
</form>
</div>
</section>
</body>
【问题讨论】:
标签: java eclipse jsp tomcat servlets