Erro ao Testar o metodo Add
Alguem pode me ajudar a resolver esse erro?
Roberto Rodrigues.
Curtidas 0
Respostas
Dyego Carmo
05/04/2010
Voce está mandando um parametro como NULL onde ele só aceita valores...
Coloque valores em todos os campos e teste denovo
Coloque valores em todos os campos e teste denovo
GOSTEI 0
Roberto Rodrigues.
05/04/2010
Dyego ele passa mais nã estar armasenando o s valores que estou passando, o que faço agora?
Outra coisa criei um resgistro na mão direto no banco e testei passou o testadd sendo que não esta armasenando nada no banco. Eu seguir os videos das aulas Aplicação Hibernate completa a unica coisa que eu mudei foi o banco estou usando postgres. Qual a melhor forma pra você me auxiliar melhor Dyego, pois estou muito tempo quebrando a cabeça com isso e niguem me respondeu a não ser você.
GOSTEI 0
Dyego Carmo
05/04/2010
ele nao armazena justamente prq nao valida o dado....
cole o codigo completo aqui :)
cole o codigo completo aqui :)
GOSTEI 0
Roberto Rodrigues.
05/04/2010
ele nao armazena justamente prq nao valida o dado....
cole o codigo completo aqui :)
O codigo completo do processo de cadastro da secretaria onde estou com problemas. Detalhe Dyego quando rodo essa classe teste ela passa 100%, mas não insere nada no banco onde no resultado ele mostra somente o Select sera que é isso? Outra coisa no testAddCadastrarSecretaria se eu mudar o valor do parametro (2) para (3) no codigo secretaria ele não passa no teste. O processo completo de cadastro secretaria. O que devo fazer?
CÓDIGO DE TESTE
package secretaria.dao;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import static org.junit.Assert.*;
import secretaria.entidade.CadastrarSecretaria;
public class CadSecretariaDAOTest {
public static Integer idCadSec =1;
public CadSecretariaDAOTest() {
}
@BeforeClass
public static void setUpClass() throws Exception {
}
@AfterClass
public static void tearDownClass() throws Exception {
}
@Before
public void setUp() {
}
@After
public void tearDown() {
}
@Test
public void testAddCadastrarSecretaria() throws Exception {
System.out.println("addCadastrarSecretaria");
CadastrarSecretaria cad = new CadastrarSecretaria();
cad.setCodigosecretaria(2);
cad.setNome("Educação");
cad.setStatus("s");
cad.setCodoperinc(1);
cad.setCodoperalt(1);
cad.setDataalteracao(null);
cad.setDatainclusao(null);
CadSecretariaDAO instance = new CadSecretariaDAO();
idCadSec = instance.addCadastrarSecretaria(cad);
CadastrarSecretaria result = instance.getCadastrarSecretaria(idCadSec);
assertEquals(idCadSec, result.getCodigosecretaria());
}
@Test
public void testGetCadastrarSecretaria()throws Exception {
System.out.println("getCadastrarSecretaria");
Integer codigosecretaria = idCadSec;
CadSecretariaDAO instance = new CadSecretariaDAO();
Integer expResult = idCadSec;
CadastrarSecretaria result = instance.getCadastrarSecretaria(codigosecretaria);
assertEquals(expResult, result.getCodigosecretaria());
}
@Test
public void testUpadateCadastrarSecretaria() throws Exception {
System.out.println("upadateCadastrarSecretaria");
CadSecretariaDAO instance = new CadSecretariaDAO();
CadastrarSecretaria cad = instance.getCadastrarSecretaria(idCadSec);
cad.setNome("fazenda");
instance.upadateCadastrarSecretaria(cad);
cad = instance.getCadastrarSecretaria(idCadSec);
assertEquals(cad.getNome(),"fazenda");
}
@Test
public void testRemoveCadastrarSecretaria() {
System.out.println("removeCadastrarSecretaria");
CadSecretariaDAO instance = new CadSecretariaDAO();
instance.removePojo(idCadSec);
}
}
CÓDIGO DAO (CADSECRETARIADAO)
package secretaria.dao;
import java.util.List;
import org.hibernate.Session;
import secretaria.entidade.CadastrarSecretaria;
public class CadSecretariaDAO extends GenericDAO {
private static final long serialVersionUID = 1L;
private Session session;
public CadSecretariaDAO(Session session) {
this.session = session;
}
public CadSecretariaDAO() {
this.session = getSession();
}
public int addCadastrarSecretaria(CadastrarSecretaria cad) {
saveOrUpadatePojo(cad);
return cad.getCodigosecretaria();
}
public void removeCadastrarSecretaria(CadastrarSecretaria cad) {
removePojo(cad);
}
public void upadateCadastrarSecretaria(CadastrarSecretaria cad) {
saveOrUpadatePojo(cad);
}
public CadastrarSecretaria getCadastrarSecretaria(Integer codigosecretaria) throws Exception{
CadastrarSecretaria cad = getPojo(CadastrarSecretaria.class, codigosecretaria);
return cad;
}
public List<CadastrarSecretaria> getCadSecretarias(){
return getPureList(CadastrarSecretaria.class,"from CadastrarSecretaria cad");
}
}
CÓDIGO GENERICDAO
package secretaria.dao;
import java.io.Serializable;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import secretaria.entidade.HibernateUtil;
public abstract class GenericDAO {
public GenericDAO() {
}
private static final long serialVersionUID = 1L;
protected Session getSession() {
return HibernateUtil.getInstance().getSession();
}
protected void saveOrUpadatePojo(Serializable pojo) {
Session ses = getSession();
ses.getTransaction().commit();
ses.close();
}
protected <T extends Serializable> T getPojo(Class<T> classToSearch, Serializable key) {
Session ses = getSession();
Serializable toReturn = (Serializable) ses.get(classToSearch, key);
ses.getTransaction().commit();
ses.close();
return (T) toReturn;
}
protected void removePojo(Serializable pojoToRemote) {
Session ses = getSession();
ses.delete(pojoToRemote);
ses.getTransaction().commit();
ses.close();
}
protected Serializable getPurePojo(String query, Object... params) {
Session ses = getSession();
Query qr = ses.createQuery(query);
for (int i = 1; i <= params.length; i++) {
qr.setParameter(1, params[i - 1]);
}
Object toReturn = qr.uniqueResult();
ses.getTransaction().commit();
ses.close();
return (Serializable) toReturn;
}
protected <T extends Serializable> List<T> getPureList(Class<T> classToCast, String query, Object... params) {
Session ses = getSession();
Query qr = ses.createQuery(query);
for (int i = 1; i <= params.length; i++) {
qr.setParameter(1, params[i - 1]);
}
@SuppressWarnings("unchecked")
List<T> toReturn = qr.list();
ses.getTransaction().commit();
ses.close();
return toReturn;
}
}
CÓDIGO (HIBERNATE UTIL)
package secretaria.entidade;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
public class HibernateUtil {
private static final long serialVersionUID = 1L;
private static HibernateUtil me;
private SessionFactory sessionFactory;
private HibernateUtil() {
sessionFactory = new AnnotationConfiguration()
.setProperty("hibernate.connection.driver_class","org.postgresql.Driver")
.setProperty("hibernate.connection.url","jdbc:postgresql://localhost:5432/secretarias")
.setProperty("hibernate.connection.password", "post")
.setProperty("hibernate.connection.username", "postgres")
.setProperty("hibernate.dialect","org.hibernate.dialect.PostgreSQLDialect")
.setProperty("hibernate.hbm2ddl.auto","none")
.setProperty ("hibernate.show_sql", "true")
.setProperty ("hibernate.format_sql", "true")
.setProperty ("hibernate.c3p0.acquire_incement", "1")
.setProperty ("hibernate.c3p0.idle_test_period", "100")
.setProperty ("hibernate.c3p0.max_size", "10")
.setProperty ("hibernate.c3p0.max_statements", "0")
.setProperty ("hibernate.c3p0.min_size", "5")
.setProperty ("hibernate.c3p0.timeout", "100")
.addAnnotatedClass(AbrirChamado.class)
.addAnnotatedClass(CadastrarEquipamento.class)
.addAnnotatedClass(CadastrarSecretaria.class)
.addAnnotatedClass(CadastrarSolicitante.class)
.addAnnotatedClass(CadastrarTecnico.class)
.addAnnotatedClass(ControleEquipamento.class)
.addAnnotatedClass(OrdemServico.class)
.addAnnotatedClass(Perifericos.class)
.addAnnotatedClass(TipoManutencao.class)
.buildSessionFactory();
}
public Session getSession(){
Session toReturn = sessionFactory.openSession();
toReturn.beginTransaction();
return toReturn;
}
public static HibernateUtil getInstance() {
if (me == null) {
me = new HibernateUtil();
}
return me;
}
}
CÓDIGO DA ENTIDADE (CADASTRARSECRETARIA)
package secretaria.entidade;
import java.util.Date;
import java.util.List;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.Id;
import javax.persistence.OneToMany;
@Entity
@Table(name = "cadsecretaria")
public class CadastrarSecretaria implements java.io.Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "codigosecretaria")
private Integer codigosecretaria;
@Column(name = "nome")
private String nome;
@Column(name = "status")
private String status;
@Column(name = "codoperinc")
private Integer codoperinc;
@Temporal(javax.persistence.TemporalType.DATE)
@Column(name = "datainclusao")
private Date datainclusao;
@Column(name = "codoperalt")
private Integer codoperalt;
@Temporal(javax.persistence.TemporalType.DATE)
@Column(name = "dataalteracao")
private Date dataalteracao;
@OneToMany(mappedBy = "secretaria", fetch = FetchType.LAZY)
private List<CadastrarSolicitante> cadastrarSolicitante;
@OneToMany(mappedBy = "sectecnico", fetch = FetchType.LAZY)
private List<CadastrarTecnico> cadastrarTecnico;
@OneToMany(mappedBy = "cadSecretaria", fetch = FetchType.LAZY)
private List<CadastrarEquipamento> cadastrarEquipamento;
public List<CadastrarEquipamento> getCadastrarEquipamento() {
return cadastrarEquipamento;
}
public void setCadastrarEquipamento(List<CadastrarEquipamento> cadastrarEquipamento) {
this.cadastrarEquipamento = cadastrarEquipamento;
}
public List<CadastrarSolicitante> getCadastrarSolicitante() {
return cadastrarSolicitante;
}
public void setCadastrarSolicitante(List<CadastrarSolicitante> cadastrarSolicitante) {
this.cadastrarSolicitante = cadastrarSolicitante;
}
public List<CadastrarTecnico> getCadastrarTecnico() {
return cadastrarTecnico;
}
public void setCadastrarTecnico(List<CadastrarTecnico> cadastrarTecnico) {
this.cadastrarTecnico = cadastrarTecnico;
}
public Integer getCodigosecretaria() {
return codigosecretaria;
}
public void setCodigosecretaria(Integer codigosecretaria) {
this.codigosecretaria = codigosecretaria;
}
public Integer getCodoperalt() {
return codoperalt;
}
public void setCodoperalt(Integer codoperalt) {
this.codoperalt = codoperalt;
}
public Integer getCodoperinc() {
return codoperinc;
}
public void setCodoperinc(Integer codoperinc) {
this.codoperinc = codoperinc;
}
public Date getDataalteracao() {
return dataalteracao;
}
public void setDataalteracao(Date dataalteracao) {
this.dataalteracao = dataalteracao;
}
public Date getDatainclusao() {
return datainclusao;
}
public void setDatainclusao(Date datainclusao) {
this.datainclusao = datainclusao;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final CadastrarSecretaria other = (CadastrarSecretaria) obj;
if (this.codigosecretaria != other.codigosecretaria && (this.codigosecretaria == null || !this.codigosecretaria.equals(other.codigosecretaria))) {
return false;
}
return true;
}
@Override
public int hashCode() {
int hash = 3;
hash = 17 * hash + (this.codigosecretaria != null ? this.codigosecretaria.hashCode() : 0);
return hash;
}
}
CÓDIGO MANAGER BEAN (SECRETARIA)
package secretaria.faces;
import java.util.List;
import secretaria.dao.CadSecretariaDAO;
import secretaria.entidade.CadastrarSecretaria;
public class Secretaria {
private List<CadastrarSecretaria> cachedCadSecretarias = null;
private CadSecretariaDAO cad = new CadSecretariaDAO();
private CadastrarSecretaria selectedSecretaria;
public Secretaria() {
}
public List<CadastrarSecretaria> getCachedCadSecretaria() {
if (cachedCadSecretarias == null){
cachedCadSecretarias = cad.getCadSecretarias();
}
return cachedCadSecretarias;
}
public String doConfirmaCadSecretaria(){
selectedSecretaria = new CadastrarSecretaria();
return "ConfirmarNovoUsuario";
}
public String finishConfirmaCadSecretaria(){
cad.addCadastrarSecretaria(selectedSecretaria);
cachedCadSecretarias = null;
return "ListCadSecretaria";
}
public CadastrarSecretaria getSelectedSecretaria() {
return selectedSecretaria;
}
public void setSelectedSecretaria(CadastrarSecretaria selectedSecretaria) {
this.selectedSecretaria = selectedSecretaria;
}
}
cole o codigo completo aqui :)
GOSTEI 0
Dyego Carmo
05/04/2010
Nao insere nada prq deu certo... o ultimo metodo do teste REMOVE a entidade inserida:
public void testRemoveCadastrarSecretaria() {
Entendeu ? Se passou 100% é porque nao deu erro :)
Valeu !
public void testRemoveCadastrarSecretaria() {
Entendeu ? Se passou 100% é porque nao deu erro :)
Valeu !
GOSTEI 0