JAAS Security - Formulário de Login com um simples dialog.show() atualizando a pagina

0 respostas
otOtavio

Estou utilizando JAAS para controle de Login, estou tendo problemas na tela do Login do Sistema onde possuo um que toda vez que clico para abri-lo a pagina de login se auto direciona para ela mesma. Como se ao tentar abrir o dialog o JAAS me direciona para ela mesma.

Montei um pequeno exemplo de como está ocorrendo.

Web.xml

<!-- SECURITY -->

    <login-config>
        <auth-method>FORM</auth-method>
        <realm-name>SgasysRealm</realm-name>
        <form-login-config>
            <form-login-page>/public/login.xhtml</form-login-page>
            <form-error-page>/public/error.xhtml</form-error-page>
        </form-login-config>
    </login-config>

    <security-constraint>
        <web-resource-collection>
            <web-resource-name>Static Visual Resources</web-resource-name>
            <url-pattern>/favicon.ico</url-pattern>
            <url-pattern>/javax.faces.resource/site.css.xhtml</url-pattern>
            <url-pattern>/javax.faces.resource/theme.css.xhtml</url-pattern>
            <url-pattern>/javax.faces.resource/primefaces.css.xhtml</url-pattern>
            <url-pattern>/javax.faces.resource/primefaces.js.xhtml</url-pattern>
            <url-pattern>/javax.faces.resource/jquery/*</url-pattern>
            <url-pattern>/javax.faces.resource/watermark/*</url-pattern>
            <url-pattern>/javax.faces.resource/messages/*</url-pattern>
            <url-pattern>/javax.faces.resource/spacer/*</url-pattern>
            <url-pattern>/javax.faces.resource/images/*</url-pattern>
            <url-pattern>/resources/*</url-pattern>
            <http-method>GET</http-method>
        </web-resource-collection>

        <web-resource-collection>
            <web-resource-name>Public Area</web-resource-name>
            <url-pattern>/public/*</url-pattern>
        </web-resource-collection>
    </security-constraint>

    <security-constraint>
        <web-resource-collection>
            <web-resource-name>SGA System - All</web-resource-name>
            <url-pattern>/*</url-pattern>
        </web-resource-collection>
        <auth-constraint>
            <role-name>ADMIN</role-name>
        </auth-constraint>
    </security-constraint>

    <security-role>
        <role-name>ADMIN</role-name>
    </security-role>

login.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core">
    <h:head>
        <title>Test</title>
    </h:head>
    <h:body>
        <!--tela de login (..)  -->

        <h:form>
            <p:commandButton value="Test" actionListener="#{loginController.limpa}" oncomplete="modal.show()"/>
        </h:form>

        <p:dialog widgetVar="modal" closable="true" draggable="false" resizable="false" appendTo="@(body)" modal="true" header="Panel" width="350">
           <h:outputText value="Teste" />
        </p:dialog>
    </h:body>
</html>

controller.java

@Named
@RequestScoped
public class LoginController implements Serializable {
    private static final long serialVersionUID = 1L;

    public void limpa(){
        email = "";
    }
}

a pagina login está dentro do diretório public onde todos os arquivos são acessados livremente.]
também criei uma outra pagina idêntica a esta apenas com o nome diferente para fazer o teste e funciona normal, é só esta bendita pagina de login que está configurada no JAAS

preciso muito de um help vlws

EDITADO...

o que estimula o refresh é o actionListner se eu remove-lo o dialog abre normal.

Criado 11 de junho de 2014
Respostas 0
Participantes 1