Problemas ao tenta gravar informaçoes no banco JPA/Hibernate/JAVA

nao consigo grava no banco usando composição,

EntityManagerFactory emf = Persistence.createEntityManagerFactory("intranethope");
EntityManager em = emf.createEntityManager();

@Test
public void testeSalvar() {

	EstadoDAO dao = new EstadoDAO(em);
	Estado estBus = dao.buscarPorID(1);

	Cidade cid = new Cidade();
	cid.setNome("TESTE");
	cid.setEstado(estBus);
	CidadeDAO daoCid = new CidadeDAO(em);
	daoCid.salvar(cid);
}

public void salvar(T t) {
	em.getTransaction().begin();
	em.persist(t);
	em.getTransaction().commit();
}

public T buscarPorID(int id) {
em.getTransaction().begin();

	return em.find(classe, id);
}

A exception diz que você esta abrindo uma transação sendo que ja tem uma aberta.

No seu método buscarPorId apague o código que inicia a transação, pois não é necessário abrir uma transação para recuperar um dado do banco, além de estar abrindo uma transação, você não esta fechando.

valeu Mike! tu é o cara! to te devendo um ovo de chocolate! haha
abraço!

Hahahaha que isso :+1:
Abraço