[RESOLVIDO] Struts 2 + Spring Security

Pessoal,

Estou com um problema chato e gostaria de ver se alguém tem alguma sugestão que me ajude.

Tenho uma aplicação onde eu utilizo struts 2 versão 2.2.3 com convenções + spring security versão 3.0.0-RELEASE.

A aplicação esta funcional … com as permissões e tudo mais. Só estou tendo um problema quando acontece um acesso denied.

  <beans:bean id="accessDeniedHandler" class="org.springframework.security.web.access.AccessDeniedHandlerImpl">
		<beans:property name="errorPage" value="/denied" />
	</beans:bean>

Normalmente na minha aplicação quando eu tento acessar a url /denied funciona tudo certo. Passa na minha action e tudo mais.

Mas quando o spring security lança uma exceção de acesso proibido e manda para a url /denied, esta gerando um erro 404.

Aparentemente, o spring não esta fazendo um redirect para esta url. Quando eu coloco diretamente o jsp funciona tranquilo, mas eu gostaria de que a chamada fosse tratada na minha action.

Alguém sabe o que eu tenho que fazer para contornar isso?

[]'s

olá amigo, vc está especificando a url de acesso negado?

    <http auto-config="true" access-denied-page="/login.xhtml" >  // <- path da action aqui ex: /denied ou /denied.action
        <form-login login-page="/login.xhtml" authentication-failure-url="/login.xhtml?error=401" default-target-url="/templatePrincipal.xhtml" />
        <logout logout-success-url="/login.xhtml" invalidate-session="true"/> 
        <intercept-url pattern="/" access="ROLE_DEFAULT" />
        <intercept-url pattern="/login*/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
        <intercept-url pattern="/js/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
        <intercept-url pattern="/css/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
        <intercept-url pattern="/img/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
        <intercept-url pattern="/comAutenticacao/*" access="ROLE_ADMIN" />         
    </http>

veja o exemplo.
fallow

Sim, estou especificando … eu fiz algumas customizações no spring security, e por isso eu especifiquei minha url de acesso proibido no próprio handler do spring, como no exemplo que eu coloquei no primeiro post.

Resolvi o problema adicionando ao filter-mapping do struts 2 no web.xml as linhas abaixo:

<dispatcher>REQUEST</dispatcher>
   <dispatcher>FORWARD</dispatcher>

[]'s

Pessoal bom dia,

Estou tentando desenvolver uma aplicação com Struts 2 + Spring Security, porém na página de autenticação está dando erro 404.