我想做的是相对简单
在我的webapp中有这两个servlet:(
我会写一些伪代码)
servlet A 代码: :
HttpSession sess = req.getSession();
String str = (String) sess.getAttribute("log");
if(str == null)
{
// send html page with a form
// to enter password and name
// data will be proceessed by servlet B
}
else
{
// send html page with a form
// to enter only a name
//data will be proceessed by servlet B
}
小服务程序 B 代码: :
HttpSession sess = req.getSession();
String logged = (String) sess.getAttribute("log");
if(logged == null)
{
//check if password correct
if(correct)
{
sess.setAttribute("log","ok");
// print name
// and tell the user
// that next time password
// will not be requested
}
else
{
// print error message
}
}
else
{
// print name
}
出于某种原因,在用户正确填写密码和名称之后第二次调用 servlet A 时 str为空,因此打印了if部分。
编辑:
我发现如果用户在输入密码并被重定向到 servletB 后自己写入 servletA 的 url 一切正常,但是当用户使用 servletA 创建的链接返回上一页时它不起作用:A HREF =\"http://localhost:8080/Blog/ServletA\" 返回
再次,任何建议为什么会发生这种情况?