struts中session丢失

07-03-18 kinsent
各位好.

新手一个,望指教!

很简单的程序,登录页面login.jsp有input,输入用户名后,调用welcomeAction.do,跳转到welcome.jsp,并显示改用户名.

login.jsp的主要代码如下:

<form method="POST" action="welcomeAction.do">

<br/>

<p> username:

<input type="text" name="username" value="defaultuser" align="left">

</p>

<input type="submit" value="提交" name="Submit"/>

<input type="reset" value="reset"/>

</form>

welcomeAction的相关代码:

public ActionForward execute(ActionMapping mapping, ActionForm form,

HttpServletRequest request,

HttpServletResponse response) {

try{

HttpSession session=request.getSession();

String username=((welcomeActionForm)form).getUsername();

session.setAttribute("username","username");

//请注意我已经不去拿login页面传来的用户名字,而直接使用了一个字符串"username"!!!

}

catch(Exception e)

{

e.printStackTrace();

}

return(mapping.findForward("welcome"));

welcome.jsp的主要代码:

<%

String username=(String)session.getAttribute("username");

%>

%>

<p>user name is :<%=username%></p>

但是在welcome.jsp的显示结果是:user name is:null

请问为什么该session不能得到呢??

备注:如果在welcome上直接设置session,就可以正常显示.同时.weblogic.xml设置sessiontimeout=-1.

zwjsoft
2007-03-18 18:37
welcome.jsp是不是由框架页面组成的啊?

kinsent
2007-03-18 21:37
是的

banq
2007-03-19 09:32
你直接使用welcomeAction.do -->welcome.jsp试验一下,如果还是这样,找weblogic厂商支持.....

kinsent
2007-03-19 23:38
谢谢大家,我重新测试过了.我的jb的struts与weblogic的版本不一样,在强制转换时出错.我设置weblogic关闭错误提示了.谢谢banq!zwjsoft

kinsent! thanks a lot for all support!

猜你喜欢