关于struts的一个问题
首页是..m/login/login.jsp,用于验证用户合法性,对于合法的用户将显示..m/login/welcome.jsp,但问题是登陆后地址栏显示的地址是../m/login.do,而不是m/login/welcome.jsp,而且对../m/login.do进行刷新时,会重新执行登陆时重新的代码,而不是welcome.jsp中的代码,这是怎么回事?
login.jsp
<html:form action= "/login " method= "post " onsubmit= "return check_input(this) ">
...
<html:form/>
struts-config.xml
...
<action path= "/login " name= "loginForm " scope= "request "
type= "framework.struts.BusinessAction "
validate= "true "
input= "/login/login.jsp " >
<forward name= "welcome " path= "/login/welcome.jsp "/>
</action>
...
------解决方案--------------------建立一个forward action,然后在forward中设置path为这个action,并且redirect=true
<action path= "/loginWelcome "
parameter= "/login/welcome.jsp "
type= "org.apache.struts.actions.ForwardAction "/>
<action path= "/login " name= "loginForm " scope= "request "
type= "framework.struts.BusinessAction "
validate= "true "
input= "/login/login.jsp " >
<forward name= "welcome " path= "/loginWelcome.do " redirect= "true "/>
</action>
------解决方案--------------------登陆后地址栏显示的地址是../m/login.do
这时的页面是欢迎页面吗 ? 如果是就是正常的
------解决方案--------------------视图转发 但是地址栏并没有变化
看书不仔细 好像是孙卫琴的那本书里面讲了下这个东西 好像说这样可以隐藏实际的地址 什么更加安全之类的话
这个是正常的
------解决方案--------------------映射
------解决方案--------------------你用到了frame框架,这个是正常显示
------解决方案--------------------struts是这样得吧