dpj2008 2017-03-12 04:41 采纳率: 100%
浏览 1554
已采纳

struts2 页面间跳转问题

struts2的配置
struts.xml核心配置

 package name="app" extends="struts-default" namespace="/">
        <!-- app/模块/类名/方法名 -->
        <action name="app/*/*/*" class="com.demo.app.{1}.action.{2}Action"
            method="{3}">
            <result name="defaultView">app/index/index/{3}.jsp</result>
            <result name="view">/WEB-INF/jsp/{1}/{2}/${nextPath}.jsp</result>
        </action>
    </package>

Action调用方法,访问的uri=app/index/index/login

 /* public String login(ServletRequest request,ServletResponse response){ */
    public String login() throws NoSuchAlgorithmException, UnsupportedEncodingException{

        HttpServletRequest request = ServletActionContext.getRequest();
        HttpServletResponse response = ServletActionContext.getResponse();
        logger.info("action_uri=="+request.getRequestURI());
        HttpSession session = request.getSession();
        User userExsit = (User) session.getAttribute("user");

        if (userExsit != null) {
            return view("recruitDetail");
        } else {
            String loginname = request.getParameter("mobile");
            String password = request.getParameter("password");
            User us = loginService.findByUserName(loginname);

            if (us != null && us.getLoginPwd() != null && MD5Util.validPasswd(password, us.getLoginPwd())) {

                return view("recruitDetail");-----------(成功执行这条语句,且struts.xml中的${nextPath}值为recruitDetail)
            } else {
                return view("login");
            }

        }

    }
    return 语句用到的view()方法

    public String view(String vPath){

        nextPath = vPath;
        logger.debug("动作完成后,转发到:" + nextPath);
        this.assign("timeStr",
                "" + System.currentTimeMillis() + System.nanoTime());
        this.assign("uuid", UUIDUtil.get32ID());// 为页面传递UUID,用于页面的标识
        return "view";


    }

结果是,我点击登陆后,在调试页面获得了要跳转页面如图:
![图片说明](https://img-ask.csdn.net/upload/201703/12/1489293514_462880.jpg)图片说明

我的问题是要跳转的页面已经可以在页面debug中查到,说明访问路径没问题,怎么就没有将原来的页面覆盖掉呢,请大神们帮忙解答下,小弟谢谢了,纠结半天了

  • 写回答

3条回答

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥15 这段有什么bug 为什么总报错
      • ¥15 关于#php#根据url判断选择加载模板应该如何解决?会的速来捡钱!
      • ¥15 Intel Realsense深度相机(D415/D435)拍摄梯子获取梯子点云
      • ¥50 unity使用easyar录屏更换视频保存路径
      • ¥15 CECGameSession::OutputLinkSevError(iRetCode=4) LINK超时
      • ¥20 出错 textread (第 124 行) [varargout{1:nlhs}]=dataread('file',varargin{:}); %#ok<REMFF1>
      • ¥15 tensor flow目标检测环境配置问题
      • ¥15 数据库float型转换精度问题
      • ¥15 运行您代码时出现报错,如何解决?(标签-回归|关键词-无法识别)
      • ¥50 android service弹出dialog,showdialog就出错,如何解决?