/ / Play framework 2.2.1 tenta sempre di creare DB all'avvio: java, hibernate, jpa, playframework-2.0, persistence.xml

Play framework 2.2.1 tenta sempre di creare DB all'avvio: java, hibernate, jpa, playframework-2.0, persistence.xml

Ho un progetto in Play 2.1.5 e ho deciso di migrare a Play 2.2.1 http://www.playframework.com/documentation/2.2.1/Migration22 e tutto funziona tranne che all'avviosembra che il progetto stia cercando di creare DB invece di aggiornarlo. Ottengo sempre errori di duplicazione. Non ho avuto questo problema mentre stavo usando Play 2.1.5. Non vedo alcun problema nella mia configurazione, ma forse ho trascurato qualcosa:

application.conf:

db.default.jndiName=DefaultDS
jpa.default=defaultPersistenceUnit
db.default.url="jdbc:mysql://localhost/database"
db.default.driver=com.mysql.jdbc.Driver

persistence.xml:

<persistence 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"
version="2.0">

<persistence-unit name="defaultPersistenceUnit" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<non-jta-data-source>DefaultDS</non-jta-data-source>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<property name="hibernate.format_sql" value="true"/>
<property name="hibernate.hbm2ddl.auto" value="update"/>
</properties>
</persistence-unit>

Build.scala le dipendenze contengono:

javaCore,
javaJdbc,
javaJpa,
cache,
"org.hibernate" % "hibernate-entitymanager" % "4.2.7.Final"

risposte:

0 per risposta № 1

Con

<property name="hibernate.hbm2ddl.auto" value="update"/>

stai dicendo di aggiornare lo schema in base ai tuoi modelli ogni volta che avvii l'applicazione. Se non si modifica lo schema, provare a impostare il valore da convalidare. BTW Duplicate entry "VALUE" for key "COLUMN_NAME" l'errore suggerisce che stai cercando di fare qualche inserto / aggiornamento all'avvio, non sei tu?