我正在使用struts2.0,并且已在tomcat 6.0上部署和测试了该应用程序。

根据要求,我的应用程序(myApplication)必须从域名为http:// abc.com的PHP网站重定向

当此PHP站点将请求重定向到我的应用程序时,它将调用我的应用程序的操作Action1,该操作进一步重定向到另一个操作Action2。但是在重定向时,它将域名更改为Application的服务器IP(http:// applicationServerIP:8080 / myApplication / Action2)。我的预期结果是
(http://abc.com/myApplication/Action2)。

sturts.xml中的操作配置为:

<action name="Action1" class="Action1">
    <result name="success" type="redirectAction">Action2</result>
</action>

<action name="Action2" class="Action2">
    <result name="success">/myJSP.jsp</result>
</action>


任何解决此问题的帮助将不胜感激。

最佳答案

通过将以下标签放在/myJSP.jsp中

<s:a>here</s:a> //I will write the current url as struts understands it.


将表明在确定服务器名称时,struts将传入的URL作为福音。

因此,使用http://applicationServerIP:8080/myApplication/Action2调用您的应用程序,只需将调用更改为http://abc.com/myApplication/Action2

如果这不是您想要的,则需要在URL到达struts2之前对其进行更改。一些容器对此或附加/插件有内置支持(我只是使用iptables)。

关于tomcat - Struts2:从其他站点重定向到myApplication时出现问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4828971/

10-13 01:13