troque "UserTransaction utx" por "EntityTransaction etx" (altere as referências abaixo tipo "utx.commit()" para "etx.commit()", use a refatoração do Netbeans)
Crie um DAO assim:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */packageModel.DAO;importjavax.persistence.EntityManagerFactory;importjavax.persistence.EntityTransaction;importjavax.persistence.Persistence;publicclassDAO{privatestaticStringNOME_PU="NomeDaSuaPU";EntityTransactionetx;EntityManagerFactoryemf;publicDAO(){emf=Persistence.createEntityManagerFactory(NOME_PU);etx=emf.createEntityManager().getTransaction();}publicEntityManagerFactorygetEmf(){returnemf;}publicvoidsetEmf(EntityManagerFactoryemf){this.emf=emf;}publicEntityTransactiongetEtx(){returnetx;}publicvoidsetEtx(EntityTransactionetx){this.etx=etx;}}
Digamos que a classe SeuObjeto foi criada a partir do banco de dados, então você consulta assim:
DAO dao = new DAO();
SeuObjeto listaSeuObjeto = new SeuObjeto();
SeuObjetoJpaController seuObjetoCTRL = new SeuObjetoJpaController(dao.getEtx(), dao.getEmf());
seuObjeto.setAtributo1("valor1");
seuObjeto.setAtributo2("valor2");
seuObjeto.setAtributo3("valor3");
seuObjetoCTRL.create(seuObjeto);