Não visulizar "Historico" de textos digitados no p:inputText

12 respostas
N

Bom dia,

Alguém poderia me informar como faço para que o p:inputTex não exiba os dados digitados anteriormente?
setei a propriedade autocomplete=“false” mas ainda assim fica exibindo os dados utilizados anteriormente.

Obrigado.


12 Respostas

T

isso resolve

<script type="text/javascript"> $(document).ready(function() { $('form').attr('autocomplete','off'); }); </script>

nesse caso eu passei o form pq qro limpar tudo
se vc usa template cole isso nele

Att

N

tmvolpato ,

Obrigado pela resposta, mas não resolveu não.

At.,

T

que estranho, aqui resolveu

R

Por exemplo, digamos que você queira limpar os campos após salvar. Quando você clicar no botão salvar ele esta chamando o seu método salvar no bean. Crie um método limpar e invoque ele no seu método salvar.

Ex:

public void salvar{

//aqui os códigos que salva

this.limpar();

}

public void limpar(){

    seuObjeto = null;

    //ou dependendo do caso

    valorDosInput = null;

}

Espero ter ajudado.

Abraços.

Renan.

T

você quer limpar o autoComplete ou os dados do inputText?

pq pela img é autoComplete que você quer limpar

H

Você está utilizando @SessionScoped? Se sim, deve fazer igual foi informado. Reset no valor do campo do inputText.

Com view scoped o processo é o mesmo mas tem outros detalhes a se tratar.

H

Você está utilizando @SessionScoped? Se sim, deve fazer igual foi informado. Reset no valor do campo do inputText.

Com view scoped o processo é o mesmo mas tem outros detalhes a se tratar.

N

Estou usando @ViewScoped
Quando termina o processo eu reinicio o objeto e a tela fica perfeita, limpa todos os campos. O problema é que quando vou realizar um novo cadastro e clico no inputText ele lista todas os textos que eu digitei anteriormente, somente se eu apagar o cache do navegador ele para de listar.

R

Posta o seu bean para a gente dar uma olhada.

Abraço.

Renan.

N

Segue Bean e Tela:

Bean

package projeto.controle;

import java.io.Serializable;
import java.util.Date;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import projeto.dao.UsuarioDao;
import projeto.pojo.Usuario;
import projeto.util.DataUtil;
import projeto.util.FormatarValorString;
import projeto.util.Utilitario;

@ManagedBean(name = "usuarioBean")
@ViewScoped

public class UsuarioBean implements Serializable {

    private Boolean disableBotaoNovo = false;
    private Boolean disableBotaoPesquisar = false;
    private Boolean disableBotaoSalvar = true;
    private Boolean disableBotaoCancelar = true;
    private Boolean disableBotaoExcluir = true;
    private Boolean disableComponentesEdicao = true;
    private Boolean disableComponentesBusca = true;
    private Boolean visiblePainelEdicao = false;
    private Boolean visiblePainelBusca = false;
    private Boolean requiredPainelEdicao = false;
    private Boolean requiredPainelBusca = false;
    private String opcaoBusca;
    private String textoBusca;
    private Date dataInicial = DataUtil.getDateAgora();
    private Date dataFinal = DataUtil.getDateAgora();
    private Usuario usuario = new Usuario();

    public void novoUsuario() {
        this.visiblePainelEdicao = true;
        this.disableBotaoNovo = true;
        this.disableBotaoPesquisar = true;
        this.disableBotaoSalvar = false;
        this.disableBotaoCancelar = false;
        this.disableBotaoExcluir = true;
        this.visiblePainelBusca = false;
        this.disableComponentesEdicao = false;
        this.disableComponentesBusca = true;
        this.requiredPainelEdicao = true;
        this.requiredPainelBusca = false;

    }

    public void exibirPainelBusca() {
        this.visiblePainelBusca = true;
        this.disableBotaoNovo = true;
        this.disableBotaoPesquisar = true;
        this.disableBotaoSalvar = true;
        this.disableBotaoCancelar = true;
        this.disableBotaoExcluir = true;
        this.visiblePainelEdicao = false;
        this.disableComponentesEdicao = true;
        this.disableComponentesBusca = false;
    }

    public void exibirProcurado() {
        this.disableBotaoNovo = true;
        this.disableBotaoPesquisar = true;
        this.disableBotaoSalvar = false;
        this.disableBotaoCancelar = false;
        this.disableBotaoExcluir = false;
        this.visiblePainelEdicao = true;
        this.visiblePainelBusca = false;
    }

    public void salvarUsuario() throws Exception {

        ConfiguracoesForm o = (ConfiguracoesForm) Utilitario.getSessionAttribute("configuracoesForm");
        usuario.setTheme(o.getMeuTema());
        usuario.setSenha(FormatarValorString.encripta(usuario.getSenha()));
        UsuarioDao dao = new UsuarioDao();
        dao.inserirUsuario(usuario);
        usuario = new Usuario();

        this.visiblePainelEdicao = false;
        this.disableBotaoNovo = false;
        this.disableBotaoPesquisar = false;
        this.disableBotaoSalvar = true;
        this.disableBotaoCancelar = true;
        this.disableBotaoExcluir = true;
        this.visiblePainelBusca = false;
        this.disableComponentesEdicao = false;
        this.disableComponentesBusca = true;
        this.requiredPainelEdicao = false;
        this.requiredPainelBusca = false;
    }

    public void cancelarUsuario() {
        this.disableBotaoNovo = false;
        this.disableBotaoPesquisar = false;
        this.disableBotaoSalvar = true;
        this.disableBotaoCancelar = true;
        this.disableBotaoExcluir = true;
        this.visiblePainelEdicao = false;
        this.visiblePainelBusca = false;
        this.requiredPainelEdicao = false;
        this.requiredPainelBusca = false;
    }

    public void cancelarPesquisa() {
        this.disableBotaoNovo = false;
        this.disableBotaoPesquisar = false;
        this.disableBotaoSalvar = true;
        this.disableBotaoCancelar = true;
        this.disableBotaoExcluir = true;
        this.visiblePainelEdicao = false;
        this.visiblePainelBusca = false;
    }

    public void excluirUsuario() {
        this.disableBotaoNovo = false;
        this.disableBotaoPesquisar = false;
        this.disableBotaoSalvar = true;
        this.disableBotaoCancelar = true;
        this.disableBotaoExcluir = true;
        this.visiblePainelEdicao = false;
        this.visiblePainelBusca = false;
    }
}

Tela

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition template="../indexMaster.xhtml"
                xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:p="http://primefaces.org/ui"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core">

    <ui:define name="content" >

        <h:outputStylesheet library="css" name="cssIndex.css" />
        <h:outputScript library="js" name="PrimeFaces.locales.js" />

        <p:panel id="pnl" header="Gerenciar Usuários" closable="true" >

            <!--Botões de início de execução-->
            <h:panelGrid columns="2">
                <p:commandButton id="btnNovo" value="Novo" icon="ui-icon-plus" action="#{usuarioBean.novoUsuario()}"
                                 update=":form" disabled="#{usuarioBean.disableBotaoNovo}"  />
                <p:commandButton id="btnPesquisa" value="Pesquisar" icon="ui-icon-search" action="#{usuarioBean.exibirPainelBusca()}"
                                 update=":form" disabled="#{usuarioBean.disableBotaoPesquisar}"/>
            </h:panelGrid>

            <!--Tela de busca-->
            <p:panel header="Pesquisar" visible="#{usuarioBean.visiblePainelBusca}">
                <table id="opcoesBusca">
                    <tr>
                        <td>
                            <h:outputText value="Pesquisar por:"/>
                        </td>
                        <td>
                            <p:selectOneMenu value="#{usuarioBean.opcaoBusca}" disabled="#{usuarioBean.disableComponentesBusca}">
                                <f:selectItem itemLabel="Nome" itemValue="1" />
                                <f:selectItem itemLabel="Login" itemValue="2" />
                            </p:selectOneMenu>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <h:outputText value="Critério: *"/>
                        </td>
                        <td>
                            <p:inputText id="txtCriterio" required="#{usuarioBean.disableComponentesBusca}"
                                         value="#{usuarioBean.textoBusca}" disabled="#{usuarioBean.disableComponentesBusca}"/>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <h:outputText value="Período: *"/>
                        </td>
                        <td>
                            <p:calendar value="#{usuarioBean.dataInicial}" id="dataInicial" locale="pt" mode="popup" showOn="button" navigator="true" pattern="dd/MM/yyyy" showButtonPanel="true" mindate="01/01/2012"
                                        style="width: 10px;height:130px;" required="#{usuarioBean.disableComponentesBusca}" disabled="#{usuarioBean.disableComponentesBusca}"/> a
                            <p:calendar value="#{usuarioBean.dataFinal}" id="dataFinal" locale="pt" mode="popup" showOn="button" navigator="true" pattern="dd/MM/yyyy" showButtonPanel="true" mindate="01/01/2012"
                                        style="width: 10px;height:130px;" required="#{usuarioBean.disableComponentesBusca}" disabled="#{usuarioBean.disableComponentesBusca}"/>
                        </td>
                    </tr>
                    <tr>
                        <td colspan="2">
                            <p:commandButton id="btnPesquisar" value="Pesquisar" icon="ui-icon-search" disabled="#{usuarioBean.disableComponentesBusca}" />
                        </td>
                    </tr>
                </table>

                <table id="resultadosBusca">
                    <tr>
                        <td>
                            Encontrados:
                            <p:separator id="sep"/>
                        </td>
                    </tr>
                    <tr>
                        <td >
                            <p:outputPanel id="resultados">
                                <p:dataTable id="resultadosTable" value="#{atividadeBean.investimentos}" var="investimento">
                                    <p:column>
                                        <f:facet name="header">
                                            <h:outputText value="Investimento" />
                                        </f:facet>
                                        <h:outputText value="#{investimento.investimento}" />
                                    </p:column>
                                    <p:column>
                                        <f:facet name="header">
                                            <h:outputText value="Valor" />
                                        </f:facet>
                                        <h:outputText value="#{investimento.valor}" />
                                    </p:column>
                                    <p:column>
                                        <f:facet name="header">
                                            <h:outputText value="Operação" />
                                        </f:facet>
                                        <p:commandLink value="Remove" update=":form:resultados" process=":form:resultados">
                                            <p:collector value="#{investimento}" removeFrom="#{atividadeBean.investimentos}" />
                                        </p:commandLink>
                                    </p:column>
                                </p:dataTable>
                            </p:outputPanel>
                        </td>
                    </tr>
                </table>

                <f:facet name="footer">
                    <p:commandButton id="btnCancelarPesquisa" value="Cancelar" icon="ui-icon-cancel" action="#{usuarioBean.cancelarPesquisa()}" update=":form" disabled="#{usuarioBean.disableComponentesBusca}"/>
                </f:facet>
            </p:panel>

            <!--Tela de Cadastro-->
            <p:panel id="panelCadastro" visible="#{usuarioBean.visiblePainelEdicao}">

                <p:tabView id="tabView"  activeIndex="0">
                    <!--Aba de descrição-->
                    <p:tab id="tab1" title="Usuário">
                        <table id="tableIdentificacao">
                            <tr>
                                <td>
                                    <h:outputText value="Nome: *"/>
                                </td>
                                <td>
                                    <p:inputText id="txtNome" value="#{usuarioBean.usuario.nome}" required="#{usuarioBean.requiredPainelEdicao}"
                                                 requiredMessage="É necessário informar o quê será feito." autocomplete="false" 
                                                 disabled="#{usuarioBean.disableComponentesEdicao}" />
                                </td>
                                <td>
                                    <p:message for="txtNome" />
                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <h:outputText value="Login: *"/>
                                </td>
                                <td>
                                    <p:inputText id="txtLogin" value="#{usuarioBean.usuario.login}" required="#{usuarioBean.requiredPainelEdicao}" disabled="#{usuarioBean.disableComponentesEdicao}"/>
                                </td>
                                <td>
                                    <p:message for="txtLogin" />
                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <h:outputText value="Senha: *"/>
                                </td>
                                <td>
                                    <p:inputText id="txtSenha" value="#{usuarioBean.usuario.senha}" required="#{usuarioBean.requiredPainelEdicao}" disabled="#{usuarioBean.disableComponentesEdicao}"/>
                                </td>
                                <td>
                                    <p:message for="txtSenha" />
                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <h:outputText value="Expira Senha: "/>
                                </td>
                                <td>
                                    <p:selectBooleanCheckbox id="sbtnExpira" value="#{usuarioBean.usuario.expira}"  />                                   
                                </td>
                                <td>

                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <h:outputText value="Inativa usuário: "/>
                                </td>
                                <td>
                                    <p:selectBooleanCheckbox value="#{usuarioBean.usuario.inativa}"  />                                    
                                </td>
                                <td>

                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <h:outputText value="Theme: *"/>
                                </td>
                                <td>
                                    <p:themeSwitcher value="#{configuracoesForm.meuTema}" style="width:200px" effect="fade" id="statefulSwitcher">
                                        <f:selectItem itemLabel="Escolha o tema:" itemValue="" />
                                        <f:selectItems value="#{configuracoesForm.themes}" />
                                        <p:ajax listener="#{configuracoesForm.salvarTema}" />
                                    </p:themeSwitcher>
                                </td>
                                <td>
                                    <p:message for="statefulSwitcher" />
                                </td>
                            </tr>
                        </table>
                    </p:tab>

                </p:tabView>

                <!--Rodapé de ações-->
                <f:facet name="footer">
                    <p:commandButton id="btnSalvar" value="Salvar" icon="ui-icon-disk" action="#{usuarioBean.salvarUsuario()}" update=":form" disabled="#{usuarioBean.disableBotaoSalvar}"/>
                    <p:commandButton id="btnCancelar" value="Cancelar" icon="ui-icon-cancel" immediate="true" action="#{usuarioBean.cancelarUsuario()}" update=":form" disabled="#{usuarioBean.disableBotaoCancelar}"/>
                    <p:commandButton id="btnExcluir" value="Excluir" icon="ui-icon-trash" action="#{usuarioBean.excluirUsuario()}" update=":form" disabled="#{usuarioBean.disableBotaoExcluir}"/>
                </f:facet>
            </p:panel>
        </p:panel>

    </ui:define>
</ui:composition>

Layout

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html">
    <h:head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>ProGestão</title>

    </h:head>
    <h:body>
        <h:outputStylesheet library="css" name="cssIndex.css" />
        <p:ajaxStatus onstart="statusDialog.show();" onsuccess="statusDialog.hide();"/>
        <p:dialog modal="true" widgetVar="statusDialog" header="Processando..."
                  draggable="false" closable="false" resizable="false">
            <p:graphicImage value="/imagens/ajax-loader.gif" />
        </p:dialog>

        <p:layout fullPage="true" id="master">

            <p:layoutUnit position="north" size="70" >
                <h:outputText value="Alterei em casa." />
            </p:layoutUnit>

            <p:layoutUnit position="west" size="250" header="Menu" collapsible="true" style="font-size: 12px;">
                <h:form id="form2" style="font-size: 10px;">
                    <ui:include src="menuMaster.xhtml" />
                </h:form>
            </p:layoutUnit>

            <p:layoutUnit position="center" >

                <h:form id="form" style="font-size: 11px;">
                    <ui:insert name="content">Content</ui:insert>
                </h:form>
                <script type="text/javascript">
                    $(document).ready(function() {
                        $('form').attr('autocomplete','off');
                    });
                </script>
            </p:layoutUnit>

            <p:layoutUnit position="south" size="35" >
                <table id="tableRodape" style="width: 100%;">
                    <tr>
                        <td id="rodapeDireitos">
                            <h:outputText value="© Copyright 2012 - XXX - All Rights Reserved " />
                        </td>
                        <td id="rodapeVersao">
                            <h:outputText value="Versão 01.00.00.00" />
                        </td>
                    </tr>
                </table>
            </p:layoutUnit>
        </p:layout>
    </h:body>
</html>
R

Cara primeira coisa. Observei que você instanciou o usuario fora da classe salvar e depois que você salva tbm esta instanciando (new) o usuário. tenta fazer o seguinte no seu método salvar para ver se resolve esse problema:

public void salvarUsuario() throws Exception {  
  
        if (usuario = null){

          usuario = new Usuario;

        }

        ConfiguracoesForm o = (ConfiguracoesForm) Utilitario.getSessionAttribute("configuracoesForm");  
        usuario.setTheme(o.getMeuTema());  
        usuario.setSenha(FormatarValorString.encripta(usuario.getSenha()));  
        UsuarioDao dao = new UsuarioDao();  
        dao.inserirUsuario(usuario);  
        usuario = null;
  
        this.visiblePainelEdicao = false;  
        this.disableBotaoNovo = false;  
        this.disableBotaoPesquisar = false;  
        this.disableBotaoSalvar = true;  
        this.disableBotaoCancelar = true;  
        this.disableBotaoExcluir = true;  
        this.visiblePainelBusca = false;  
        this.disableComponentesEdicao = false;  
        this.disableComponentesBusca = true;  
        this.requiredPainelEdicao = false;  
        this.requiredPainelBusca = false;  
    }
N

renanlalier,

Acredito que o problema esteja no Cache do servidor, se eu limpo ele, os textos utilizado anteriormente não aparecem.
Tentei usar essas tags no head do meu layout mas não funcionou.

<meta http-equiv="cache-control" content="no-cache"/>
    <meta http-equiv="Pragma" content="no-cache"/>
    <meta http-equiv="expires" content="0"/>

ele continua armazenando os textos utilizados no cache.

Criado 3 de outubro de 2012
Ultima resposta 3 de out. de 2012
Respostas 12
Participantes 4