Struts 2' redirectAction'将协议从HTTPS更改为HTTP

时间:2014-12-16 15:02:15

标签: redirect ssl struts2 struts

我有一个以HTTP模式运行的Java EE Web应用程序,除了我们使用HTTPS的身份验证。 我们现在需要一直使用HTTPS。

在测试时,我们发现Struts 2存在问题:“redirectAction”(在客户端生成302状态返回码)将协议从HTTPS更改为HTTP。

示例:

<struts>
    <package name="suiviaffaire" namespace="/suiviaffaire" extends="webapp">    
        <action name="*" method="{1}" class="com.myAction">

       <result name="consultRedirection" type="redirectAction">
                <param name="actionName">consult?idAffaire=${idAffaire}</param>
                <param name="parse">true</param>
                <param name="encode">true</param>
            </result>
       <result name="consult">/jsp/suiviaffaire/consult.jsp</result>

网络捕获:

1) status 302 : https://localhost:8043/webapp/suiviaffaire/redirectionTypeAffaire.action?idAffaire=XXX
2) status 200 : http://localhost:8043/webapp/suiviaffaire/consult.action?idAffaire=XXX

我们在WebLogic 12c和WebSphere 7中进行了测试,我们遇到了同样的问题。 你知道这是Struts 2的正常行为还是我们app中的配置问题?

1 个答案:

答案 0 :(得分:0)

正如@Aleksandr M所说,这似乎与Apache服务器有关。 在WebLogic控制台中激活SSL并直接点击它时,我们没有问题。 当命中apache服务器时,我们遇到了问题。 似乎其他人也有这个问题: