Grava Nullo, na minha tabela o.setIdname_ocorrencias(vidnameocorrencia)

Bom dia tenho um problema que nao esta gravando um campo na base de dados.
O campo seria esse :
o.setIdname_ocorrencias(vidnameocorrencia);
Obs. o conteudo da variavel “vidnameocorrencia”, esta com valor, porem quando consulto a base de dados ele grava nulo,

segue em anexo as minha classes,

se poder me ajudar, nao sei mais para onde correr. rs.

Segue abaixo as classes :


	public int getidnameocorrencia(int nro) throws DAOException {
		Query q = query("select name_ocorrencias.id FROM ocorrencias o where o.id =:pnro ");
		q.setParameter("pnro", nro);
	
		List<Integer> results = q.list();
		int vtpocorrencia = results.get(0);
		return vtpocorrencia;
	}


public class EditarOcorrenciaAction extends Action {

			int vidnameocorrencia = getidnameocorrencia(vnro);
		

			ocorrencias o = new ocorrencias();
			
			o.setId(vnro);
			o.setData((java.util.Date) data2);
			o.setDescricao(vtxtadescricao);
			o.setSolucao(vtxtasolucao);
			o.setIdname_ocorrencias(vidnameocorrencia);
			intranet.service.ocorrenciasservice.salvar(o);


}



public class ocorrencias {
	
	private Integer id;
	private Date data;
	private String descricao;
	private String solucao;
	private String tpocorrencia;
	private name_ocorrencias name_ocorrencias;
	private Integer idname_ocorrencias;

	private String responsavel;

	public Integer getIdname_ocorrencias() {
		return idname_ocorrencias;
	}
	public void setIdname_ocorrencias(Integer idname_ocorrencias) {
		this.idname_ocorrencias = idname_ocorrencias;
	}

	 

***** aqui esta os outros getter e setter dos outros campos
}

[quote=evandro_araujo]Bom dia Carlos, tenho um problema que nao esta gravando um campo na base de dados.
O campo seria esse :
o.setIdname_ocorrencias(vidnameocorrencia);
Obs. o conteudo da variavel “vidnameocorrencia”, esta com valor, porem quando consulto a base de dados ele grava nulo,

segue em anexo as minha classes,

se poder me ajudar, nao sei mais para onde correr. rs.

Segue abaixo as classes :

public int getidnameocorrencia(int nro) throws DAOException {
	Query q = query("select name_ocorrencias.id FROM ocorrencias o where o.id =:pnro ");
	q.setParameter("pnro", nro);

	List<Integer> results = q.list();
	int vtpocorrencia = results.get(0);
	return vtpocorrencia;
}

public class EditarOcorrenciaAction extends Action {

		int vidnameocorrencia = getidnameocorrencia(vnro);
	

		ocorrencias o = new ocorrencias();
		
		o.setId(vnro);
		o.setData((java.util.Date) data2);
		o.setDescricao(vtxtadescricao);
		o.setSolucao(vtxtasolucao);
		o.setIdname_ocorrencias(vidnameocorrencia);
		intranet.service.ocorrenciasservice.salvar(o);

}

public class ocorrencias {

private Integer id;
private Date data;
private String descricao;
private String solucao;
private String tpocorrencia;
private name_ocorrencias name_ocorrencias;
private Integer idname_ocorrencias;

private String responsavel;

public Integer getIdname_ocorrencias() {
	return idname_ocorrencias;
}
public void setIdname_ocorrencias(Integer idname_ocorrencias) {
	this.idname_ocorrencias = idname_ocorrencias;
}

***** aqui esta os outros getter e setter dos outros campos
}[/quote]Tomara que o Carlos te ajude. =P

Cara, coloque seu código dentro das tags [ code][ /code] Fica mais fácil de ler e entender o código.

Retificando:

Bom dia tenho um problema que nao esta gravando um campo na base de dados.
O campo seria esse :
o.setIdname_ocorrencias(vidnameocorrencia);
Obs. o conteudo da variavel “vidnameocorrencia”, esta com valor, porem quando consulto a base de dados ele grava nulo,

segue em anexo as minha classes,

se poder me ajudar, nao sei mais para onde correr. rs.

Muito obrigado pela atenção

abc


	public int getidnameocorrencia(int nro) throws DAOException {
		Query q = query("select name_ocorrencias.id FROM ocorrencias o where o.id =:pnro ");
		q.setParameter("pnro", nro);
	
		List<Integer> results = q.list();
		int vtpocorrencia = results.get(0);
		return vtpocorrencia;
	}


public class EditarOcorrenciaAction extends Action {

			int vidnameocorrencia = getidnameocorrencia(vnro);
		

			ocorrencias o = new ocorrencias();
			
			o.setId(vnro);
			o.setData((java.util.Date) data2);
			o.setDescricao(vtxtadescricao);
			o.setSolucao(vtxtasolucao);
			o.setIdname_ocorrencias(vidnameocorrencia);
			intranet.service.ocorrenciasservice.salvar(o);


}



public class ocorrencias {
	
	private Integer id;
	private Date data;
	private String descricao;
	private String solucao;
	private String tpocorrencia;
	private name_ocorrencias name_ocorrencias;
	private Integer idname_ocorrencias;

	private String responsavel;

	public Integer getIdname_ocorrencias() {
		return idname_ocorrencias;
	}
	public void setIdname_ocorrencias(Integer idname_ocorrencias) {
		this.idname_ocorrencias = idname_ocorrencias;
	}

	 

***** aqui esta os outros getter e setter dos outros campos
}	

Primeiramente, da uma lida em Java Boas Praticas.
Primeiro resultado google: http://www.flaviojmendes.com/blog/2012/02/09/boas-praticas-em-java-guia-definitivo/

Tem como postar este metodo?

intranet.service.ocorrenciasservice.salvar(o)

Bom dia,

segue abaixo a classe:

public class ocorrenciasservice extends Service{
	
	
	public static void salvar(ocorrencias o) throws ServiceException, DAOException {
		Configuration cfg = new Configuration().configure();
		SessionFactory sf = cfg.buildSessionFactory();
		Session session = sf.getCurrentSession();
		
		session.beginTransaction();


		session.update(o);
		
		session.getTransaction().commit();
		
	///	return true;
	}

}

Evandro,

Verifique se o valor está correto no objeto “o”.
Se está como indicou o problema não está na sua logica de salvar o objeto.
Pode ser um problema na transação. Verifique se ela não esta sendo cancelada, ou tente realizar um flush.

Entao mateus,

Os outros campos estao gravando , apenas o indicado que esta gravando nulo.

abc