alexfe
Fevereiro 24, 2013, 3:01am
#1
Pessoal estou com um problema a varios dias e não consigo resolver, estou desenvolvendo uma plicação com Jsf, Primefaces, Hibernate, Spring e Spring Security, tomcat 7.
O problema é que o Spring Scurity apenas realizada o login se o sistema for aberto no computador onde o servidor está rodando, quando eu coloco o sistema.war em um data center o spring security não realiza o login me da a msg de acesso negado.
Form de login
[code]
Login
</tr>
<tr>
<td>
<center class="estiloLogin">Senha</center></td>
<td><input type="password" name="j_password" id="j_password"
class="inputLogin" />
</td>
</tr>
<tr align="center">
<td></td>
<td>
<input type="submit" value="Entrar"
class="estiloBotaoLogin" />
<input type="button" value="Sair"
onclick="javascript:sairLogin();" class="estiloBotaoLogin" />
</td>
</tr>
<tr align="center">
<td><input type="checkbox" name="_spring_security_remember_me"/>
</td>
<td class="estiloLoginRelembrarAcesso">Relembra acesso</td>
</tr>
</table>
</fieldset>
</form>[/code]
Application Context Secutiry
[code]
<http auto-config="true">
<intercept-url pattern="/admin/**" access="ROLE_ADMINISTRADOR" />
<intercept-url pattern="/pagereport/relatorioUsuario.jsf"
access="ROLE_ADMINISTRADOR" />
<intercept-url pattern="/consultas/**"
access="ROLE_USUARIO,ROLE_ADMINISTRADOR,ROLE_USUARIO_VIP" />
<intercept-url pattern="/error/**"
access="ROLE_USUARIO,ROLE_ADMINISTRADOR,ROLE_USUARIO_VIP" />
<intercept-url pattern="/menuinicial/**"
access="ROLE_USUARIO,ROLE_ADMINISTRADOR,ROLE_USUARIO_VIP" />
<intercept-url pattern="/pagereport/**"
access="ROLE_USUARIO,ROLE_ADMINISTRADOR,ROLE_USUARIO_VIP" />
<intercept-url pattern="/relatorios/**"
access="ROLE_USUARIO,ROLE_ADMINISTRADOR,ROLE_USUARIO_VIP" />
<intercept-url pattern="/resources/**"
access="ROLE_USUARIO,ROLE_ADMINISTRADOR,ROLE_USUARIO_VIP" />
<intercept-url pattern="/restrito/**"
access="ROLE_USUARIO,ROLE_ADMINISTRADOR,ROLE_USUARIO_VIP" />
<form-login login-page="/publico/login.jsf"
always-use-default-target="true" default-target-url="/restrito/principal.jsf"
authentication-failure-url="/publico/login.jsf?login_error=1" />
<logout invalidate-session="true" logout-success-url="/publico/login.jsf" />
<remember-me token-validity-seconds="1209600" />
</http>
<authentication-manager>
<authentication-provider>
<password-encoder hash="md5" />
<jdbc-user-service data-source-ref="GEDDataSource"
authorities-by-username-query="SELECT u.login as username, p.permissao, u.ativo
FROM usuario u, usuario_permissao p
WHERE u.id = p.usuario AND u.ativo = TRUE
AND upper(u.login) = upper(?)"
users-by-username-query="SELECT login as username, senha, ativo
FROM usuario
WHERE upper(login) = upper(?)" />
</authentication-provider>
</authentication-manager>
[/code]
Erro do servidor
HttpSession returned null object for SPRING_SECURITY_CONTEXT
O ingraçado é que se eu adicionar um usuario padrao direto no xml de configuração o login é realizado sem problemas
Alguém sabe como resolver
calel
Fevereiro 25, 2013, 4:07am
#3