I have an intercetpor that checks if the user is logged in before serving the requested action. I have tried setting this as default for all action. For all addresses except one this works like a charm. When I go to my root URL "http://localhost:8080/map/"
for some reason the interceptor doesn't fire. I'm guessing there is something missing i struts.xml but I can't figure out what:
<struts>
<constant name="struts.devMode" value="true" />
<constant name="struts.custom.i18n.resources" value="ApplicationResources,DatabaseResources" />
<package name="map" extends="struts-default">
<interceptors>
<interceptor name="loginintercept"
class="se.contribe.intercept.LoginInterceptor" />
<interceptor-stack name="defaultLoginStack">
<interceptor-ref name="loginintercept" />
<interceptor-ref name="defaultStack" />
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="defaultLoginStack" />
<default-action-ref name="index"></default-action-ref>
<global-results>
<result name="loginneeded">/login.jsp</result>
</global-results>
<action name="index" class="**.map.MapAction">
<result>/index.jsp</result>
</action>
<action name="login">
<result>/login.jsp</result>
</action>
<action name="loginInput" class="**.session.LoginAction">
<result type="redirectAction">
<param name="actionName">index</param>
</result>
<result name="input">/login.jsp</result>
<result name="error">/login.jsp</result>
</action>
<action name="*" class="**.map.MapAction">
<result>/index.jsp</result>
</action>
</package>
</struts>
I have obfuscated the class names a bit just in case my employer would object.