Ola pessoal estou com um problema muito estranho seguente:
o persistence.xml
[code]<?xml version=“1.0” encoding=“UTF-8”?>
<persistence version="1.0"
xmlns=“http://java.sun.com/xml/ns/persistence”>
<persistence-unit name=“JIMAGE” transaction-type=“RESOURCE_LOCAL”>
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>br.uninove.jimage.to.MetodosDeClassificacaoTO</class>
<properties>
<property name=“hibernate.dialect” value=“org.hibernate.dialect.MySQLDialect” />
<property name=“hibernate.connection.driver_class” value=“com.mysql.jdbc.Driver” />
<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/jimage" />
<property name="hibernate.connection.password" value="******" />
<property name="hibernate.connection.username" value="root" />
<property name="hibernate.hbm2ddl.auto" value="update" />
<property name="hibernate.show_sql" value="true" />
<property name="hibernate.format_sql" value="true" />
<property name="hibernate.transaction.auto_close_session" value="true" />
<property name="hibernate.transaction.flush_before_completion" value="true" />
</properties>
</persistence-unit>
</persistence>[/code]
classe MetodosDeClassificaoTO.java
@Entity
@Table(name = "METODOS_DE_CLASSIFICAO")
@NamedQueries({
@NamedQuery(name = "MetodosDeClassificacaoTO.findAll", query = "SELECT m FROM MetodosDeClassificacaoTO m"),
@NamedQuery(name = "MetodosDeClassificacaoTO.findById", query = "SELECT m FROM MetodosDeClassificacaoTO m WHERE m.id = :id"),
@NamedQuery(name = "MetodosDeClassificacaoTO.findByNome", query = "SELECT m FROM MetodosDeClassificacaoTO m WHERE m.nome = :nome")})
public class MetodosDeClassificacaoTO implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@Column(name = "ID")
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@Basic(optional = false)
@Column(name = "NOME")
private String nome;
gets sets...
ai estou tentando fazer o seguinte… na minha classe dao…
[code]package br.uninove.jimage.dao;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
import br.uninove.jimage.to.MetodosDeClassificacaoTO;
public class JImageDao {
private EntityManager em;
public JImageDao(){
if ( em == null ) {
EntityManagerFactory emf = Persistence.createEntityManagerFactory("JIMAGE");
em = emf.createEntityManager();
}
}
....
public void saveMetodosDeClassificacao(MetodosDeClassificacaoTO to){
em.persist(to);
em.flush();
}
public static void main(String[] args) {
JImageDao dao = new JImageDao();
MetodosDeClassificacaoTO to1 = new MetodosDeClassificacaoTO();
MetodosDeClassificacaoTO to2 = new MetodosDeClassificacaoTO();
MetodosDeClassificacaoTO to3 = new MetodosDeClassificacaoTO();
MetodosDeClassificacaoTO to4 = new MetodosDeClassificacaoTO();
MetodosDeClassificacaoTO to5 = new MetodosDeClassificacaoTO();
to1.setNome("Matriz de Co-ocorrência");
to2.setNome("Matriz de Comprimento");
to3.setNome("Matriz de Diferença de Níveis de Cinza");
to4.setNome("Matriz de Soma e Diferença do Histograma");
to5.setNome("Matriz do Momento do Histograma");
dao.saveMetodosDeClassificacao(to1);
dao.saveMetodosDeClassificacao(to2);
dao.saveMetodosDeClassificacao(to3);
dao.saveMetodosDeClassificacao(to4);
dao.saveMetodosDeClassificacao(to5);
}
}
[/code]
que dar o error…
23:26:07,536 DEBUG QueryTranslatorImpl:239 - HQL: SELECT m FROM br.uninove.jimage.to.MetodosDeClassificacaoTO m WHERE m.nome = :nome
23:26:07,536 DEBUG QueryTranslatorImpl:240 - SQL: select metodosdec0_.ID as ID2_, metodosdec0_.NOME as NOME2_ from METODOS_DE_CLASSIFICAO metodosdec0_ where metodosdec0_.NOME=?
23:26:07,536 DEBUG ErrorCounter:91 - throwQueryException() : no errors
23:26:07,537 DEBUG SessionFactoryImpl:446 - Checking 0 named SQL queries
23:26:07,566 DEBUG SessionImpl:247 - opened session at timestamp: 12728535675
23:26:07,578 DEBUG AbstractSaveEventListener:330 - delaying identity-insert due to no transaction in progress
Exception in thread "main" javax.persistence.TransactionRequiredException: no transaction is in progress
at org.hibernate.ejb.AbstractEntityManagerImpl.flush(AbstractEntityManagerImpl.java:301)
at br.uninove.jimage.dao.JImageDao.saveMetodosDeClassificacao(JImageDao.java:33)
at br.uninove.jimage.dao.JImageDao.main(JImageDao.java:53)
Alguém poderia me ajudar?