Struts2 拦截器 如何改变result
比如我调用了一个action的execute方法,返回的字符串是"success",在拦截器中我想在returninvocation.invoke();之前让他执行完后跳...
比如我调用了一个action的execute方法,返回的字符串是"success",
在拦截器中我想在return invocation.invoke();之前让他执行完后跳转到另一个result该怎么办,比如叫"other".
String result = invocation.invoke();
return "other";
这么做是不行的,因为在执行invocation.invoke()之后,页面就已经跳转了。
解决后有加分。
你们的回答都不靠边啊,问题已经解决了,有接近点的我就给分了 展开
在拦截器中我想在return invocation.invoke();之前让他执行完后跳转到另一个result该怎么办,比如叫"other".
String result = invocation.invoke();
return "other";
这么做是不行的,因为在执行invocation.invoke()之后,页面就已经跳转了。
解决后有加分。
你们的回答都不靠边啊,问题已经解决了,有接近点的我就给分了 展开
4个回答
展开全部
在invocation之前加上return "other";
并且在该action中加上result,name要等于other,然后指向另外一个页面,就行了。
比如
<package 省略>
<这里设置你的拦截器>
<action 省略>
<result name="success">成功去的页面</result>
<result name="other">拦截后去的页面</result>//备注:这个家伙可以设置成全局result,具体全局的result怎么设置,百度一下会有很多示例。
</action>
</package>
并且在该action中加上result,name要等于other,然后指向另外一个页面,就行了。
比如
<package 省略>
<这里设置你的拦截器>
<action 省略>
<result name="success">成功去的页面</result>
<result name="other">拦截后去的页面</result>//备注:这个家伙可以设置成全局result,具体全局的result怎么设置,百度一下会有很多示例。
</action>
</package>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto...
点击进入详情页
本回答由Storm代理提供
展开全部
个人感觉 loveOuyoko所给出的是过滤器的配制方法
首先在struts.xml配置文件中写入
<default-interceptor-ref name="myStack">
</default-interceptor-ref>
上述代码中name="myStack",myStack是你自己起的对默认拦截器的名字,
在默认拦截器中配置拦截器
然后在其中配置你的拦截器内容,这个默认拦截器要写在所有的拦截器或者action上面。
首先在struts.xml配置文件中写入
<default-interceptor-ref name="myStack">
</default-interceptor-ref>
上述代码中name="myStack",myStack是你自己起的对默认拦截器的名字,
在默认拦截器中配置拦截器
然后在其中配置你的拦截器内容,这个默认拦截器要写在所有的拦截器或者action上面。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不太明白你描述的问题,不知道是不是这样子。你可以配置一个全局result。只要你返回的是你想要的比如“other”,然后都会跳转到你配置的那个result的那边去。
追问
我知道这样是可以的,但是我们的需求是要在跳转的方法上加个注解,拦截时根据注解进行跳转。
追答
不知道你注解是怎样的,不太懂你描述的问题,不过解决了就好。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把拦截器添加在 你想跳转到的result的那个action中不就行了?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询