views:

23

answers:

0

Hi! I'm trying to get the login part of my web application to use SSL.

I'm using Tomcat (standalone, without apache) with struts2 and struts2-ssl-plugin, and have managed to at least get the necessary ports and connectors up, but when I try to open the login page, the plugin redirects back and forth between ports 80 and 443.

The only change to my source code was adding @Secured to the login action class

this is my struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd"&gt;

<struts>
    <constant name="struts2.sslplugin.httpPort" value="80" />
    <constant name="struts2.sslplugin.httpsPort" value="443" />

    <package name="hitPrint" namespace="/" extends="ssl-default">
        <interceptors>
            <interceptor-stack name="SecureStack">
                <interceptor-ref name="secure" />
                <interceptor-ref name="defaultStack" />
            </interceptor-stack>
        </interceptors>

        <!--
            Regular Actions
          -->

        <action name="Login_*" method="{1}" class="hitPrint.web.login.Login">
            <result name="input">/hit_print/Login.jsp</result>
            <result name="success" type="redirectAction">Overview</result>
        </action>

            <!-- and more -->

        <!--
            Chains - Aliases for other actions, e.g. default methods
        -->

        <action name="Login">
            <result type="chain">Login_input</result>
        </action>

            <!-- and more -->

        <action name="">
            <result type="chain">Login_input</result>
        </action>

        <!--
         Others - Static ressources and more
          -->

        <action name="Druck_Logo">
            <result>/hit_print/Druck_Logo.jpg</result>
        </action>
    </package>
</struts>

I hope this is enough information. As I said, the connector is enabled in server.xml and the ports are 80 and 443.