Estoy utilizando JPA 2 en un proyecto JSF 2, entonces configuro mi fuente de datos en GlassFish v3, todo está bien, pero si trato de probar las consultas JPA en Hibernate Tools, me da mí el error siga:JPA: No se pudo ubicar TransactionManager
Sessionfactory error:Could not locate TransactionManager
Aquí es mi persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="SuaParte" transaction-type="JTA">
<jta-data-source>jdbc/suaparte_ds</jta-data-source>
<class>entity.Area</class>
<properties>
<property name="eclipselink.logging.level" value="FINE"/>
<property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup"/>
</properties>
</persistence-unit>
</persistence>
estoy usando EclipseLink 2,3 (Indigo) y JPA 2 en mi proyecto Eclipse JSF 2.
EDITAR seguir el enfoque @fonini, mis hibernate.properties:
hibernate.connection.username=<filled>
hibernate.connection.password=<filled>
hibernate.connection.driver_class=com.mysql.jdbc.Driver
hibernate.dialect=org.hibernate.dialect.MySQLDialect
hibernate.connection.url=<filled>
hibernate.connection.provider_class=org.hibernate.connection.DriverManagerConnectionProvider
hibernate.datasource=jdbc/suaparte_ds
hibernate.transaction.manager_lookup_class=org.hibernate.transaction.JBossTransactionManagerLookup
Pero ahora me da otro error:
qué he tenido que cambiar el id generator
en mis entidades?
@Entity
@Table(name="product")
public class Product implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE)
private Integer id;
@Size(max=150, message="150 caracteres no máximo")
private String description;
// getters and setter
}
Si implementa el proyecto a un servidor Glassfish, funciona? – fonini
lo hace @fonini, solo para probar las consultas JPQL y descubrí que Hibernate Tools es capaz de hacerlo. –
MySQL no tiene secuencias, funciona con autoincremento. Debe cambiar GenerationType.SEQUENCE a GenerationType.IDENTITY – fonini