[RESOLVIDO] Limpar dados da pagina ao acessar

Boa noite,

Eu tenho um projeto feito em jsf e jpa e tenho a seguinte situação quando acesso a primeira vez uma pagina os campos estão todos em brancos, efetuo meu cadastro. até ai blz, o que eu gostaria eh o seguinte quando eu acessar novamente eu gostaria que estivesse em branco tbm e ele jah vem com a tela preenchida com o ultimo cadastro feito

teria alguma forma de limpar o session não sei se essa eh a forma, alguma maneira que todas vez q eu acessar o formulario ele vir em branco, eu poderia até fazer ao acessar a pagina executar o comando (Modelo modelo = new Modelo():wink:

mas tem paginas que não existe para cadastrar um novo registro so consultas

Amigo,

Como você está implementando o seu JSF no Bean?
Se você utilizar os escopo Conversation e View, você não terá esse problema.

No método de init, você deverá colocar desta forma, caso você use Conversation como escopo.

[code]@Inject Conversation conversation;

@PostConstruct
public void init(){
if(conversation.isTransient()){
conversation.begin();
}
}[/code]

eu estou usando dessa forma aqui:

@ManagedBean(name = "holeriteControle")
@SessionScoped
public class HoleriteControle implements Serializable {

    private Holerite holerite = null;
    @EJB
    private HoleriteDAO dao;
    private List<Holerite> listaTodos;
    private List<Holerite> listaId = null;
    private List<SelectItem> listaEntidade;
    private List<SelectItem> listaMatricula;
    private List<SelectItem> listaCompetencia;
    private UploadedFile upload;
    private String entidade;
    private Integer matricula;
    private String competencia;
    private String visualizaHolerite = "selecione dados";

    public HoleriteControle() {
    }

Retire de suas rotinas escopo Session, é um perigo, use o que eu te falei anteriormente, o escopo Conversation, que será pendurado por todas as páginas que você precisar navegar. Uma segunda dica é sempre passar para o backbean o conversation atual na troca de form, como por exemplo abaixo.

<h:commandButton actionListenner="{bean.acao}" value="Gravar"> <f:param name="cid" value="#{bean.conversation.id}" /> </h:commandButton>

ficou perfeito da maneira que eu esperava, muito obrigado pela dica.

Só frisando para que você não se esqueça quando for utilizar mais de um formulário colocar o parâmetro de cid, como também, no seu método de init perguntar se o conversation está transient e colocá-lo para iniciar novamente, conforme instruído anteriormente.

Um abraço.