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中查到,说明访问路径没问题,怎么就没有将原来的页面覆盖掉呢,请大神们帮忙解答下,小弟谢谢了,纠结半天了

0

3个回答

我自己找到问题所在了,我用的ajax的post提交的,提交后不刷新当前页面,改成form 的表单提交没问题了

0

成功后你用重定向试试了

0
s_xl1988
dpj2008 问题就是从一个一打开的页面跳到第二个页面时,第二个页面不在浏览器打开,修改程序第一次打开的是第二个页面,第二个页面可以无误的在浏览器打开
2 年多之前 回复
s_xl1988
dpj2008 result的type改为redirect 会报404错误,如果默认的转发直接访问那个页面,是可以访问的
2 年多之前 回复

来个大神帮解答下啊,咋这么没人气呢

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Struts2 实现JSP页面之间的传值
一、定义实体类:package cn.bamount.converter; public class User { public Integer id; public String userName; public java.util.Date createTime; public Integer getId() { return id; } public void setI
Struts2--namespace设置后页面跳转问题
  今天在使用struts2的时候,发现了一个问题,百度了以下发现许多地方说的不是一回事。  先上代码:上述代码先是设置了一个错误页面 ,当访问的资源不存在的时候,那么就跳转到error.jsp页面namespace设置为/user  ,那么问题来了,许多人说当加了namespace后要访问的路径http://localhost:8088/Struct02/user/China.action  ,...
404等错误页面跳转问题--基于struts2和原生
页面错误或者异常会给客户的体验很不好,必须对出现的错误页面进行调整。 一般错误有异常、404、403、500这几个为主要的错误页面,异常和404更是最常见的错误。
Struts2跳转页面(action)设置为动态
Struts2跳转页面(action)设置为动态 动态链接的设置 result param location
struts2页面跳转及请求时的页面映射
1.页面映射: struts2 约定要求,将JSP页面 放入WEB-INF 下 !!!!   因为webRoot(webapp)下的页面是公开路径,可以直接访问,struts拦截器只能拦截WEB-INF下的页面action请求。 过滤器与拦截器区别: 过滤器可以拦截任何web资源,而拦截器只能拦截action请求。 所以我们将页面放在WEB-INF目录下的任何自定义文件夹下,但
Struts2跳转结果页时没有css样式或图片的问题
建议图片样式等文件,用或${pageContext.request.contextPath}做开头。 如: /css/style.css " /> or 这样不会受到路径影响。
struts2的拦截器无法跳转到jsp页面
今天我看尚硅谷的struts2视频,出现一个和老师不同的错误,百度了很多也解决不了 第一个代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Insert title here ProductName: ProductDesc:
struts2——使用struts2的Ajax进行div页面的简单显示以及登录显示
页面的效果图如下:(页面显示3个div.第一个div每隔一秒页面自动刷新一次即多次刷新,第二个div显示欢迎信息,第三个div中的内容不变点击登录的标签时弹出登录的页面)1:使用struts2的Ajax进行页面布局2:配置struts文件3:action中的操作4:页面的操作...
struts2 跳转至404 页面的解决方案
对于使用了struts2的工程,以下几种情况,我觉得需要跳转至 404 页面告诉用户: ① 在地址栏里,直接输入一个不存在的jsp页面      比如, http://xxx:port/webapp/test.jsp, 其中test.jsp根本就不存在 PS:下面两种情况是以使用“convention plugin”为前提的 ② 在地址栏里,直接输入一个不存在的action     ...
struts2注解实现页面的跳转
注解实现的页面跳转其特点是不用配置文件struts.xml因而可以实现零配置。
Struts2页面跳转方式
1、    转发&amp;lt;action name=&quot;helloAction&quot;class=&quot;cn.hd.hello.HelloAction&quot; method=&quot;hello&quot;&amp;gt;    &amp;lt;!--    result        name  对应的是action类中的method的返回值              名字可以随便写,只要和action类中的返回值结果是一样的            ...
struts2返回结果的跳转方式
1.     返回结果:跳转方式 dispatch:请求转发,默认值相应的跳转到jsp页面。并非Action。 redirect:重定向,不传递参数的.跳转的应该是一个jsp页面。并非Action。 redirectAction:重定向到一个action,不会传递相应的参数到下一个action中 chain:链,请求转发到一个action,会传递相应的参数到下一个action中    
struts2 action 运行完不跳转
我的目的是点&quot;导入&quot;按钮,执行名为&quot;test.do&quot;的action,但就算action里return null;他还是会跳转,其实要执行action只要把action的地址传给服务器就OK了。 用jQuery的jQuery.ajax 方法,能完全不跳转, 不加Math.random()没反应,在action拿filePath的地方再去掉那个随即数就可以了, 没参数也加上随机   $.aj...
struts跳转jsp后没有样式
这个原因时通过struts.xml跳转页面时,部分引用的css,js等一些引用文件的路径找不到,自然就没有样式了,出现这个问题,直接将路径改为绝对路径就可以解决问题了。代码如下: 在jsp的顶部加上 &amp;lt;% String path = request.getContextPath(); String basePath = request.getScheme()+&quot;://&quot;+re...
Struts2利用js实现页面跳转
需求:由于使用Struts要做一个跳转页面实现修改操作后的定时跳转提示 在JavaEE中好像无法使用html的header定时刷新页面的方式访问WEB-INF目录下的后台首页 解决办法 在jsp页面可以a标签跳转到指定Action后,由Action返回的结果直接跳转到后台首页 <div align="center"> <h3>修改成功,<strong>3</strong>秒后即将返回首页,或
struts2用户是否登录拦截器,拦截之后异步跳转到登录页面
先贴贴代码 struts.xml中代码: <interceptor name="sessionout" class="interceptor.AdminInterceptor"> list*,delete*,update*,save*,find* /pa
struts2结果处理方式(结果跳转方式)
1.预热 1.什么叫重定向 服务端返回一个302 的状态码,和一个location的消息头,客户端收到302的状态码以后,立即按照location指定的地址发送请求的过程。  2.如何实现重定向 Response.sendRedirect(path); 3.什么时候使用重定向 一个操作完成以后,跳转到另一个功能的时候使用
Struts2向页面传值的三种方式
首先,我们看一下struts的配置文件&amp;lt;!-- name:包名,用于被别的包调用或继承   extends:继承哪个包,会继承该包下配置信息和拦截器等等   namespace:选填,url连接必须加入namespace属性值。如下:/new/action.xxx --&amp;gt; &amp;lt;package name=&quot;test&quot; namespace=&quot;/new&quot; extends=&quot;struts-...
Struts2跳转带参数问题
从list.jsp点击“回复”超链接跳转到reply.jsp  传值问题: list.jsp页面传值id:">回复 reply.jsp页面接收id: 普通链接  Web程序中最普通的应用是链接到其他页面,下面看Welcome.jsp。     Welcome    " rel="stylesheet"           type="text/
struts.xml中result标签不能跳转到指定页面问题
struts.xml配置如下: /index.jsp transferText.jsp function ajaxTransferText(){  var BigText = document.getElementById("BigText").value;  var ajaxTransferObjectRef = new aj
用Struts2做页面跳转页面内容消失的解决办法
楼主是个Struts2的初学者,刚用Struts2框架做一个小网站,却发现一经过Struts2跳转,页面上的背景图片都显示不出来,试了很就终于找到了解决办法: <!-- 在result中加入一个属性type="redirect",这样跳转的时候地址不会改变, 但是ActionContext和request中的内容会被清空 --> /index.jsp /regist
struts2如何跳转到百度
[code=&quot;xml&quot;] http://www.baidu.com [/code]
struts2--拦截器(非登录用户不可跳转至该页面)
拦截器
Struts 2提交form表单执行action后不跳转(ajax)
今日写项目写到一个商品加入购物车功能,原本设计是点击按钮之后,存储数据,并弹出一个div告知用户添加成功,页面不跳转,看似很简单的功能,却在“不跳转”这点上卡住,我不想跳转咋就这么难呢?查了很多资料,知道了要用ajax,因为本人愚钝,并没有能够解决我的小问题,一度想要放弃,特别感谢熊世唯同学不耐其烦的指导,让我解决了这个小难题 本篇博客旨在还没有深入理解ajax的情况下,实现一个提交form表单后不
struts2中配置struts.xml文件,让全项目出现异常都跳转到同一个异常页面
[code=&quot;xml&quot;] /Exception.jsp [/code]
struts2请求无法跳转到后台执行acton方法
问题现象 前台发送请求,经过一系列struts拦截器无法跳到后台执行action方法 原因(排除请求错误,配置错误等情况) 在页面请求到后台Action之间会先经过一系列Struts默认的拦截器,拦截器处理失败,导致问题出现。  最常出现的问题是validate没验证通过,通常是由于页面上定义的域与Action的属性类型不匹配导致 解决办法
form表单只提交数据,不跳转,在struts2中的应用
当然了,说到只提交数据不跳转,大家首先想到的一定是ajax,但这是我以前写的一个项目,里面好些代码要换成ajax的话有些麻烦.... 网上搜了一圈,度娘提供的方法几乎都是一样的,基本上好多篇博客都是转载下面的方法,当然了,经过测试,下面的代码是可行的,但还有一个需要注意的地方需要说一下: 就是所指向的这个action 一定不要ruturn NONE!其实准确的说也不是不能ruturn NONE
struts2之action跳转到别的action同时传递参数
struts2 的action跳转到别的action时,可以使用redirectAction 如: ./pages_crm/crm_cust 如果还需要传递参数: 可以这样:    ./pages_crm/crm_cust                                    ${customerId} 在hrEmploye
Struts2跳转方式
1:dispatcher 默认值, 请求转发 2:redirect 重定向到jsp, 重定向3:redirectAction 重定向Action , 重定向4:chain 请求转发Action , 请求转发Dispatcher【转发】:    只是服务器端把请求和响应由当前服务器应用转给另外的服务器应用,浏览器地址栏不发生变化;    转发只能在当前Web应用之下进行,不能跳到别的Web应用去。 ...
Struts2中action重定向跳转到jsp页面两种配置方式带参数
Struts2中action重定向跳转到jsp页面两种配置方式带参数
struts2 之配置拦截器使网站页面在session失效后退回到登录页面
要实现这个功能主要实现以下: 1、将session的失效时间设置为10分钟。 2、编写拦截器判断session是否失效 3、如果失效,则返回登录。 1、首先在web.xml中配置session的有效时间:       10   2、编写拦截器判断session是否失效: import java.util.Map; import com.opensy
struts2之通配符、页面跳转、拦截器
一:通配符          1.1:含义               通配符是一种特殊语句,主要有星号(*)和问号(?),用来模糊搜索文件。当查找文件夹时,可以使用它来代替一个或多个真正字符;         2.2:实例                  (jsp页面)                              pageEncoding="UTF-8"%>    
struts2 报错时不进入 指定的500页面的原因
-
struts.xml配置
1struts.xml的基础配置<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd">
通过Struts2拦截器实现Session失效后自动跳转到登录页面逻辑
Session的默认失效时间是30分钟。当系统空置时长超过30分钟时,如果未做对应的处理,访问出错。在这里的处理是,当Session失效之后,用户再次访问的时,自动跳转到登录页面。参考文章:《Struts2自定义拦截器实例-登录权限验证》--https://blog.csdn.net/java_cxrs/article/details/5514340《Struts2自定义拦截器实例-Session...
个人网站.zip
简单的个人网站,css构架,多个页面实现,页面间的跳转
struts2(action重定向跳转到另一个action)
<action name="student" class="com.action.StudentAction"> <result name="MyHome">/MyHome.jsp</result> <result name="delPostSuccess" type="redirect"> <param name="lo
struts2中form只提交数据不跳转引发的刷新后重复提交表单中数据的问题
昨天网上搜索终于找到了一个让form和ajax一样不跳转的方法,但今天测试发现...结果并不像我想象的那般美好... 当form表单中的数据提交之后,因为页面没有被定义为重定向...所以按下F12,点开netWork,你会发现当前的页面中竟然还有Form Date 就上图这种情况,只要点一下F5,这个Form Data中的几个数据就自动提交了...太坑爹,网上搜索了下,好多篇博客都有提
ssh中struts2提交表单到action,运行完并返回值,但是不跳转界面
ssh中struts2提交表单到action,运行完并返回值,但是不跳转界面,其中进入到了action并有返回值,但是就是跳转不了。后来发现因为前端是找的模板,所以有段jquery语句拦截了跳转,只要删除就可以了,具体如下&amp;lt;struts&amp;gt; &amp;lt;package name=&quot;ssh&quot; extends=&quot;struts-default&quot; namespace=&quot;/&quot;&amp;gt; &amp;lt;act...
struts2 配置文件 action跳转
跳转类型总结: &amp;lt; 1 &amp;gt;  type=&quot;dispatcher&quot; 是默认值,常用于jsp页面跳转(服务器端的跳转) &amp;lt;!--常规默认写法--&amp;gt; &amp;lt;result name=&quot;success&quot;&amp;gt;/show.jsp&amp;lt;/result&amp;gt; &amp;lt;!--完整写法--&amp;gt; &amp;lt;result name=&quot;success&quo