Fórum Passando parametro em jsf #402359

05/06/2011

0

Olá amigos preciso de uma dica.Estou desenvolvendo uma aplicação web (com jsf e jpa) e preciso que a identificação do usuário que obtenho na tela de login, seja passada para uma outra tela onde realizo a importação de um arquivo de retorno bancário. Exemplo após acessar o sistema quero obter qual usuário esta logado para poder passar esta identificação para uma função que chamo em outra tela e realizar a importação. segue abaixo o código que uso atualmente:
jsp de login <td align="center"><h:inputText value="#{loginJSFBean.login}" maxlength="20"/></td>                        </tr>                        <tr align="center">                          <td>Senha:</td>                          <td><h:inputSecret value="#{loginJSFBean.senha}" maxlength="20"/></td>                        </tr>                        <tr align="center">                          <td colspan="2">                            <h:commandButton value="ENTRAR" action="#{loginJSFBean.verificarUsuario()}">                                <f:param id="id" value="#{loginJSFBean.usuLogado.fdId}"/>                            </h:commandButton>

managerbean     public String verificarUsuario() throws Exception {                usuLogado = usuDAO.validaUsuario(login, senha);        if(usuLogado != null){            System.err.println("Exibe id do usulogado "+usuLogado.getFdId());                        return "loginok";                  }        else {             return "loginfalhou";        }
preciso pegar esse usuário que se logou e usar na seguinte função que fica em outra tela chamada upload.
jsp upload
                            <rich:fileUpload fileUploadListener="#{fileUploadBean.getUploadArquivo}"                                              acceptedTypes="RET, ret">                                <a4j:support event="onuploadcomplete" reRender="info"/>                            </rich:fileUpload>                            <h:commandButton value="Importar"  action="#{fileUploadBean.importar}" label="Importar"/>

preciso passar o id do usuario logado nesta página para entao chamar a função java que importa o arquivo e grava no banco.Consigo exibir em qualquer página do sistema o id, nome e login do usuário logado, mas nao sei como repassar este valor para a função que importa o arquivo. Se puderem ajudar fico grato.
Obrigado.
Alexandre Pires

Alexandre Pires

Responder

Posts

05/06/2011

Davi Costa

Pesquise sobre algum framework de segurança já pronto testado não precisa reinventar roda, eu aconselharia Spring Security.
Mas se quiser continuar fazendo as coisas na mão. Use um filter e jogue o usuário logado na sessão(session) e sempre que precisa dele pegue esse atributo na session. É interessante tb criar um botão de logoff para redirecionar o usuário para a tela de autenticação e setar como null esse atributo usuário da session.


Espero ter ajudado

Att Davi
Responder

Gostei + 0

09/06/2011

Dyego Carmo

Voce pode tentar passar o parametro "por dentro" , ou seja , usando o <f:setPropertyActionListener/>
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar