Problema para editar dados usando JSF 2

Boa noite galera.

Estou com uma aplicação onde eu tenho uma listagem exibindo os dados, e nessa listagem eu tenho o botão para edição dos dados. Ao clicar nesse botão, o usuário é redirecionado ao formulário de cadastro para editar a entidade em questão.

Ao abrir o formulário, os dados a serem editados são carregados corretamente, porém, quando o usuário vai salvar, o meu bean é reiniciado chamando até mesmo o método anotado com @PostConstruct, como se eu estivesse usando o escopo @RequestScoped, sendo que o mesmo está anotado com @ViewScoped.

Segue o código do botão de edição:

<p:commandButton id="editarAtendimentoBTN" 
             icon="ui-icon-pencil" 
             label="Editar atendimento"
             action="atendimentoCadastro.xhtml"
             immediate="true">
      <f:param name="idAtendimento" value="#{atendimento.id}"/>
</p:commandButton>

E segue tbem o meu bean:

@ManagedBean
@ViewScoped
public class AtendimentoCadastroControle implements Serializable {

//Atributos

@PostConstruct
    public void inicializar() {
        String idAtendimento = controleUtil.getParametroMap("idAtendimento");
        if (idAtendimento != null) {
            atendimento = atendimentoServico.obterCompleto(idAtendimento);
            if (atendimento != null) {
                editar(atendimento);
                carregarListas();
            } else {
                criarNovoAtendimento();
            }
        } else {
            criarNovoAtendimento();
        }
    }

//Outros métodos
}

Estou utilizando JavaEE 6 com Glassfish 3.1.2.2.

Alguém aew já se deparou com algum problema assim?

voce poderia crir um inputhidden com um valor tio edicao. no seu postconstruct vc verifica este parametro e so cria a instancia do seu obeto modelo para que o jsf set s valores

Olá tebosoftware, mto obrigado pela atenção. :slight_smile:

Acho que eu não fui mto claro na explicação do meu problema.
Quando eu clico nesse botão de edição, o formulário com os dados do objeto são carregados direitinho, tudo sem problema.
Porém, após a edição, quando o usuário clica em salvar, o bean é reconstruído, como se estivesse anotado com @RequestScoped.

Eu imagino que possa ser algo com o escopo…mas confesso q estou meio perdido com esse erro aew…

Vc já viu algo assim?

o viewscoped so funciona se vc nao mudar de view, ou seja, vce nao pode mudar ara outra pagina.

Então…
Estou na listagem…e clico no editar…o editar manda pro formulário.
O formulário é construído com os dados do objeto q eu cliquei para edição. O bean desse formulário está anotado com @ViewScoped. Após editar os dados, o usuário clica no botão salvar ainda formulário, porém, ao invés de salvar, o formulário é reconstruído… :S

Estranho não?

o que eu te sugiro e vc fazer um controle om h:panelgroup um para o grtid digamos assim e outro para a edicao. e isso vc cria um atributo booleano para determinar a visibilidade dos paineis.
ai deste modo nao sera trocado a pagina e assm nao sera reiniciado bean.