Problema com Campos do Primefaces

8 respostas
W

Estou com um problema com alguns formularios do primefaces…

Ao preencher os valores do campos e clicar em salvar, os dados são persistidos no banco de dados, porém, ao retornar para a visualização da página, os campos que originou seu valor pela página ficam em branco e só os valores settados pelo Bean ficam preenchidos. Porém os dados foram salvos corretamente no DB.

O Bean está marcado via JPA como @SessionScoped

Porque o valores não são mantidos no atributos??

8 Respostas

Luciano_Lopes

Pode postar o código?

W

Então, qual parte devo mostrar?

O formulário é composto por tabs, umas 12 tabs, todas são incluidas dentro de um FORM em uma pagina central com um botão p:commandButton salvar.

Tenho o control que é o meu Bean marcado como SesionScope onde tem a função salvar que chama um service hibernate para persistir os dados.

É alguma configuração do primefaces, do ciclo de vida? porque quando usava richfaces não tinha esse problema…

Obrigado…

Luciano_Lopes

Post somente os códigos referente ao “salvar”

W

Segue...

public String salvarBa(){
		if(validarBA()){
			if(ba.getIdBa() == 0){
				ba.setCriador(getUsuarioLogado());
				if(serviceBA.salvarBa(ba)){
Support.addMessageInfo("Boletim de Atendimento cadastrado com sucesso!", "");
}
}
}
}
public boolean salvarBa(BoletimAtendimento ba) {
		
		ba.setDataCadastro(new Date());
		
		try {
			EntityManager em = Factory.EManagerSYS();
			em.getTransaction().begin();
			em.persist(ba);
			em.getTransaction().commit();
			em.close();
			return true;
		} catch (Exception e) {
			e.printStackTrace();
			return false;
		}
	}
W

Observação, o segundo code é parte da classe ‘service’ o primeiro da classe de controle (sessionscope).

Todos os atributos utilizados na pagina dos formularios contém os métodos getters e setters.

Não entendo porque após o servidor processar e persistir os dados, retornando para a página de visualização os valores ficam em branco… (apenas aqueles setados pela pagina)

W

Continuo fazendo testes e procurando uma solução…

Neste momento notei que os campos que não estão mantendo seus valores são somente os campos <p:selectOnMenu>

Os outros do tipo input estão OK.

Luciano_Lopes

Da uma verificada no seu código html, vou esta havendo algum problema de update na hora de você salvar.

W

Ainda preciso de ajuda com esse problema, alguém lembra de algo mais

Fiz tudo e mais um pouco e não consigo manter o valor do campo p:selectOneMenu após submit button. (primefaces 3.2)

Todos os selectOneMenu que tem o valor selecionado na tela de cadastro, perde o valor após o submit e update.
Se eu seto um valor para o campo no bean e abro a pagina, aparece correto o valor no select.

Já sobrescrevi os equal e hashcode nas entitys.

Configurei o converter… (acho que está correto).

Após preencher todo o cadastro, e enviar, a informação é salva corretamente no banco, mas após dar update na página todos os selectonemenu ficam em brancos. (mesmo com o value preenchido)

Any suggestions?

Criado 9 de abril de 2012
Ultima resposta 11 de abr. de 2012
Respostas 8
Participantes 2