
JBWEB000006: Invalid direct reference to form login page
Contents
Como corrigir o problema de ‘HTTP Status 400 - JBWEB000006: Invalid direct reference to form login page’.
Ao acessar a aplicação pela página de login diretamente, como ex http://localhost:8080/idp/j_security_check, surge o erro de Invalid direct reference to form login page após o login com sucesso. Ao acessar a aplicação normalmente, algo como http://localhost:8080/idp, tudo funciona bem.
Versões no ambiente
- JBoss EAP 6.4.23
Motivo
Se você tentar acessar um recurso protegido, o JBoss vai redirecionar para a página de login, conforme configuração no web.xml. Uma vez autenticado, ele irá redirecionar para a página inicial solicitada. Se você acessar diretamente a página de login, como ex http://localhost:8080/idp/j_security_check, não há solicitação inicial (para onde o usuário desejaria ir), daí o erro: “HTTP Status 400 - JBWEB000006: Invalid direct reference to form login page”.
Log
Ativando os logs org.apache.catalina e org.jboss.security é possível ver a tentativa de redirect para null que faz surgir o problema. Observar no log abaixo a linha Redirecting to original ’null’.
| |
Solução
Configurar a página de landing, que será utilizada para redirecionar o usuário após o login quando não houver uma requisição inicial para outro recurso.
No jboss-web.xml adicionar:
O param-value deve ser ajustado conforme a aplicação. Observar também que no exemplo acima a autenticação é do tipo form.
MhagnumDw


