struts2动作重定向到“外部”网址

问题描述 投票:0回答:2

我需要我的行动能够重定向到外部URL地址,让我们说例如http://google.com

现在我有:

<default-action-ref name="home" />
<global-results>
  <result name="redirect" type="redirect">${targetUrl}</result>
</global-results>

如果在targetUrl我有http://google.com我的动作将调用主页,它将不会重定向到谷歌。

我在这里看到类似的问题How to do dynamic URL redirects in Struts 2?,但我可以看到只有url的最后一部分被用作重定向的目的地。

你能帮我么?

谢谢

redirect struts2 action httprequest
2个回答
0
投票

这将解决您的问题。从返回重定向的Action类中,targetUrl应该是类的成员变量,并且应该具有公共getter和setter。

public class YourAction extends ActionSupport {
    private String targetUrl;

    public String execute() {
         return "redirect";
    }

    public String getTargetUrl() {
        return targetUrl;
    }

    public void setTargetUrl(String targetUrl) {
        this.targetUrl = targetUrl;
    }

}

0
投票

要从拦截器重定向到特定操作,我执行了以下操作:

response.sendRedirect("specificAction.action");
return null;

在这种情况下无需全局结果。

© www.soinside.com 2019 - 2024. All rights reserved.