branch develop updated (17beaa16 -> 6820fc09)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository topia-2.x. See https://gitlab.nuiton.org/nuiton/topia-2.x.git from 17beaa16 Fix connection provider closing new 09986de7 fixes #2: Update libs new 6820fc09 fixes #3: Update to Hibernate 5.2.11 The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 6820fc098beb6fd033b315c02ccc9b069809ee7a Author: Eric Chatellier <chatellier@codelutin.com> Date: Fri Oct 13 15:52:29 2017 +0200 fixes #3: Update to Hibernate 5.2.11 commit 09986de72f59fbf4920cc0911d9ff94154b254e9 Author: Eric Chatellier <chatellier@codelutin.com> Date: Fri Oct 13 15:12:17 2017 +0200 fixes #2: Update libs Summary of changes: pom.xml | 12 +-- topia-persistence/pom.xml | 2 +- .../topia/framework/TopiaConnectionProvider.java | 2 +- .../nuiton/topia/framework/TopiaContextImpl.java | 85 +++++++++++----------- .../topia/generator/DAOAbstractTransformer.java | 2 +- .../topia/generator/EntityDAOTransformer.java | 4 +- .../nuiton/topia/persistence/util/DBMapping.java | 3 +- .../nuiton/topia/persistence/NaturalIdTest.java | 3 +- topia-service-migration/pom.xml | 2 +- topia-service-replication/pom.xml | 2 +- 10 files changed, 59 insertions(+), 58 deletions(-) -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository topia-2.x. See https://gitlab.nuiton.org/nuiton/topia-2.x.git commit 09986de72f59fbf4920cc0911d9ff94154b254e9 Author: Eric Chatellier <chatellier@codelutin.com> Date: Fri Oct 13 15:12:17 2017 +0200 fixes #2: Update libs --- pom.xml | 10 +++++----- topia-persistence/pom.xml | 2 +- topia-service-migration/pom.xml | 2 +- topia-service-replication/pom.xml | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 7126efe0..51e039e2 100644 --- a/pom.xml +++ b/pom.xml @@ -30,7 +30,7 @@ </parent> <artifactId>topia</artifactId> - <version>2.12.1-SNAPSHOT</version> + <version>2.13-SNAPSHOT</version> <packaging>pom</packaging> <name>ToPIA</name> @@ -201,7 +201,7 @@ <eugeneVersion>3.0-alpha-5</eugeneVersion> <nuitonCsvVersion>3.0-rc-6</nuitonCsvVersion> <nuitonDecoratorVersion>3.0</nuitonDecoratorVersion> - <nuitonUtilsVersion>3.0-rc-18</nuitonUtilsVersion> + <nuitonUtilsVersion>3.0</nuitonUtilsVersion> <processorPluginVersion>1.3</processorPluginVersion> <nuitonI18nVersion>3.6.3</nuitonI18nVersion> <xmlrpcVersion>3.1.2</xmlrpcVersion> @@ -214,7 +214,7 @@ <i18n.bundles>fr_FR,en_GB,es_ES</i18n.bundles> <ciViewId>ToPIA</ciViewId> - <javaVersion>1.7</javaVersion> + <javaVersion>1.8</javaVersion> <signatureArtifactId>java17</signatureArtifactId> <signatureVersion>1.0</signatureVersion> </properties> @@ -300,7 +300,7 @@ <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> - <version>20.0</version> + <version>23.2-jre</version> </dependency> <!-- Commons libs --> @@ -332,7 +332,7 @@ <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> - <version>3.5</version> + <version>3.6</version> </dependency> <!-- BD H2 for testing --> diff --git a/topia-persistence/pom.xml b/topia-persistence/pom.xml index 0442c2e6..f30a90f9 100644 --- a/topia-persistence/pom.xml +++ b/topia-persistence/pom.xml @@ -30,7 +30,7 @@ <parent> <groupId>org.nuiton</groupId> <artifactId>topia</artifactId> - <version>2.12.1-SNAPSHOT</version> + <version>2.13-SNAPSHOT</version> </parent> <groupId>org.nuiton.topia</groupId> diff --git a/topia-service-migration/pom.xml b/topia-service-migration/pom.xml index be52a89e..651f26ec 100644 --- a/topia-service-migration/pom.xml +++ b/topia-service-migration/pom.xml @@ -30,7 +30,7 @@ <parent> <groupId>org.nuiton</groupId> <artifactId>topia</artifactId> - <version>2.12.1-SNAPSHOT</version> + <version>2.13-SNAPSHOT</version> </parent> <groupId>org.nuiton.topia</groupId> diff --git a/topia-service-replication/pom.xml b/topia-service-replication/pom.xml index 74775446..5eb769cd 100644 --- a/topia-service-replication/pom.xml +++ b/topia-service-replication/pom.xml @@ -30,7 +30,7 @@ <parent> <groupId>org.nuiton</groupId> <artifactId>topia</artifactId> - <version>2.12.1-SNAPSHOT</version> + <version>2.13-SNAPSHOT</version> </parent> <groupId>org.nuiton.topia</groupId> -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository topia-2.x. See https://gitlab.nuiton.org/nuiton/topia-2.x.git commit 6820fc098beb6fd033b315c02ccc9b069809ee7a Author: Eric Chatellier <chatellier@codelutin.com> Date: Fri Oct 13 15:52:29 2017 +0200 fixes #3: Update to Hibernate 5.2.11 --- pom.xml | 2 +- .../topia/framework/TopiaConnectionProvider.java | 2 +- .../nuiton/topia/framework/TopiaContextImpl.java | 85 +++++++++++----------- .../topia/generator/DAOAbstractTransformer.java | 2 +- .../topia/generator/EntityDAOTransformer.java | 4 +- .../nuiton/topia/persistence/util/DBMapping.java | 3 +- .../nuiton/topia/persistence/NaturalIdTest.java | 3 +- 7 files changed, 51 insertions(+), 50 deletions(-) diff --git a/pom.xml b/pom.xml index 51e039e2..8d197e19 100644 --- a/pom.xml +++ b/pom.xml @@ -205,7 +205,7 @@ <processorPluginVersion>1.3</processorPluginVersion> <nuitonI18nVersion>3.6.3</nuitonI18nVersion> <xmlrpcVersion>3.1.2</xmlrpcVersion> - <hibernateVersion>5.1.5.Final</hibernateVersion> + <hibernateVersion>5.2.11.Final</hibernateVersion> <sl4jVersion>1.7.25</sl4jVersion> <h2Version>1.4.194</h2Version> <hamcrestVersion>1.3</hamcrestVersion> diff --git a/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaConnectionProvider.java b/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaConnectionProvider.java index 5929b33e..fde72050 100644 --- a/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaConnectionProvider.java +++ b/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaConnectionProvider.java @@ -135,7 +135,7 @@ public class TopiaConnectionProvider implements ConnectionProvider, Configurable if (isolation != null) { if (log.isDebugEnabled()) { log.debug("JDBC isolation level: " + - Environment.isolationLevelToString(isolation)); + ConnectionProviderInitiator.toIsolationNiceName(isolation)); } } diff --git a/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaContextImpl.java b/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaContextImpl.java index bd9bfbd0..0d13d84e 100644 --- a/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaContextImpl.java +++ b/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaContextImpl.java @@ -24,39 +24,12 @@ package org.nuiton.topia.framework; -import static org.nuiton.i18n.I18n.t; - -import java.beans.PropertyChangeListener; -import java.io.BufferedInputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.InputStream; -import java.lang.reflect.Field; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.EnumSet; -import java.util.Enumeration; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Properties; -import java.util.Set; -import java.util.WeakHashMap; -import java.util.zip.GZIPInputStream; - import org.apache.commons.lang3.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.hibernate.FlushMode; import org.hibernate.HibernateException; -import org.hibernate.Query; import org.hibernate.ReplicationMode; -import org.hibernate.SQLQuery; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; @@ -68,6 +41,10 @@ import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.event.service.spi.EventListenerRegistry; import org.hibernate.event.spi.EventType; import org.hibernate.jdbc.Work; +import org.hibernate.metamodel.spi.MetamodelImplementor; +import org.hibernate.persister.entity.EntityPersister; +import org.hibernate.query.NativeQuery; +import org.hibernate.query.Query; import org.hibernate.service.ServiceRegistry; import org.hibernate.service.spi.Stoppable; import org.hibernate.tool.hbm2ddl.SchemaExport; @@ -88,6 +65,31 @@ import org.nuiton.topia.persistence.TopiaDAOImpl; import org.nuiton.topia.persistence.TopiaEntity; import org.nuiton.topia.persistence.TopiaId; +import java.beans.PropertyChangeListener; +import java.io.BufferedInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.InputStream; +import java.lang.reflect.Field; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.EnumSet; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Properties; +import java.util.Set; +import java.util.WeakHashMap; +import java.util.zip.GZIPInputStream; + +import static org.nuiton.i18n.I18n.t; + /** * Le TopiaContextImpl est le point d'entre pour acceder aux donnees. Il est * configurer par un fichier de propriete @@ -643,14 +645,13 @@ public class TopiaContextImpl implements TopiaContextImplementor { throw new TopiaException( t("topia.persistence.error.rootContext.access")); } - if (getHibernateFactory().getClassMetadata(entityClass) == null && - getHibernateFactory().getClassMetadata( - entityClass.getName() + "Impl") == null && - getHibernateFactory().getClassMetadata( - entityClass.getName() + "Abstract") == null) { - - log.info(t("topia.persistence.supported.classes.for.context", - getHibernateFactory().getAllClassMetadata().keySet())); + MetamodelImplementor metamodel = (MetamodelImplementor)getHibernateFactory().getMetamodel(); + Map<String, EntityPersister> entityPersisterMap = metamodel.entityPersisters(); + if (entityPersisterMap.get(entityClass) == null && + entityPersisterMap.get(entityClass.getName() + "Impl") == null && + entityPersisterMap.get(entityClass.getName() + "Abstract") == null) { + + log.info(t("topia.persistence.supported.classes.for.context", entityPersisterMap.keySet())); throw new TopiaException( t("topia.persistence.error.unsupported.class", entityClass.getName())); @@ -698,7 +699,7 @@ public class TopiaContextImpl implements TopiaContextImplementor { // new TopiaInterceptor(result)); // on ne synchronise jamais les données avec la base tant que // l'utilisateur n'a pas fait de commit du context - result.hibernate.setFlushMode(FlushMode.MANUAL); + result.hibernate.setHibernateFlushMode(FlushMode.MANUAL); // tchemit 2010-12-06 propagates the value of the flag result.useFlushMode = useFlushMode; @@ -795,7 +796,7 @@ public class TopiaContextImpl implements TopiaContextImplementor { // it's very important to change the session after rollback // otherwize there are many error during next Entity's modification hibernate = getHibernateFactory().openSession(); - hibernate.setFlushMode(FlushMode.MANUAL); + hibernate.setHibernateFlushMode(FlushMode.MANUAL); hibernate.beginTransaction(); @@ -948,7 +949,7 @@ public class TopiaContextImpl implements TopiaContextImplementor { } // tchemit 2010-11-30 reproduce the same behaviour than before with the dao legacy if (useFlushMode) { - query.setFlushMode(FlushMode.AUTO); + query.setHibernateFlushMode(FlushMode.AUTO); } List result = query.list(); result = firesSupport.fireEntitiesLoad(this, result); @@ -982,7 +983,7 @@ public class TopiaContextImpl implements TopiaContextImplementor { query.setMaxResults(endIndex - startIndex + 1); // tchemit 2010-11-30 reproduce the same behaviour than before with the dao legacy if (useFlushMode) { - query.setFlushMode(FlushMode.AUTO); + query.setHibernateFlushMode(FlushMode.AUTO); } List result = query.list(); result = firesSupport.fireEntitiesLoad(this, result); @@ -1148,7 +1149,7 @@ public class TopiaContextImpl implements TopiaContextImplementor { options += " COMPRESSION GZIP"; } - SQLQuery query = getHibernate().createSQLQuery( + NativeQuery query = getHibernate().createNativeQuery( "SCRIPT TO '" + file.getAbsolutePath() + "'" + options); query.list(); @@ -1195,7 +1196,7 @@ public class TopiaContextImpl implements TopiaContextImplementor { in.close(); } - SQLQuery query = getHibernate().createSQLQuery( + NativeQuery query = getHibernate().createNativeQuery( "RUNSCRIPT FROM '" + file.getAbsolutePath() + "'" + options); query.executeUpdate(); @@ -1224,7 +1225,7 @@ public class TopiaContextImpl implements TopiaContextImplementor { if (dropDatabase) { sql += " DELETE FILES"; } - Query query = tx.getHibernate().createSQLQuery(sql); + Query query = tx.getHibernate().createNativeQuery(sql); query.executeUpdate(); tx.closeContext(); diff --git a/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOAbstractTransformer.java b/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOAbstractTransformer.java index 031247cd..8277a99c 100644 --- a/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOAbstractTransformer.java +++ b/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOAbstractTransformer.java @@ -458,7 +458,7 @@ public class DAOAbstractTransformer extends ObjectModelTransformerToJava { body.append("" /*{ { - List<<%=attrType%>> list = getContext().getHibernate().createSQLQuery( + List<<%=attrType%>> list = getContext().getHibernate().createNativeQuery( "SELECT main.topiaid " + "from <%=attrClassifierDBName%> main, <%=attrJoinTableName%> secondary " + "where main.topiaid=secondary.<%=attrDBName%>" + diff --git a/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityDAOTransformer.java b/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityDAOTransformer.java index b9c301ec..b19f9026 100644 --- a/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityDAOTransformer.java +++ b/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityDAOTransformer.java @@ -625,13 +625,13 @@ public class EntityDAOTransformer extends ObjectModelTransformerToJava { body.append("" /*{ { - List<<%=attrType%>> list = getContext().getHibernate().createSQLQuery( + List<<%=attrType%>> list = getContext().getHibernate().createNativeQuery( " SELECT main.*" + " FROM <%=attrClassifierDBName%> main, <%=attrJoinTableName%> secondary" + " WHERE main.topiaid = secondary.<%=attrDBName%>" + " AND secondary.<%=attrReverseDBName%> = ?") .addEntity("main", <%=providerFQN%>(<%=attrType%>.class)) - .setString(0, entity.getTopiaId()) + .setParameter(1, entity.getTopiaId()) .list(); for (<%=attrType%> item : list) { diff --git a/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/DBMapping.java b/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/DBMapping.java index efb467f5..fd543a86 100644 --- a/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/DBMapping.java +++ b/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/DBMapping.java @@ -27,6 +27,7 @@ package org.nuiton.topia.persistence.util; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.hibernate.exception.SQLGrammarException; +import org.hibernate.query.NativeQuery; import org.nuiton.topia.TopiaContext; import org.nuiton.topia.TopiaException; import org.nuiton.topia.framework.TopiaContextImpl; @@ -326,7 +327,7 @@ public abstract class DBMapping { BigInteger size = defaultSize; if (ctxt != null) { try { - SQLQuery query = ((TopiaContextImpl) ctxt).getHibernate().createSQLQuery(sql); + NativeQuery query = ((TopiaContextImpl) ctxt).getHibernate().createNativeQuery(sql); size = (BigInteger) query.list().get(0); } catch (SQLGrammarException e) { // could not obtain sequence diff --git a/topia-persistence/src/test/java/org/nuiton/topia/persistence/NaturalIdTest.java b/topia-persistence/src/test/java/org/nuiton/topia/persistence/NaturalIdTest.java index 4e0c39ed..006b15ef 100644 --- a/topia-persistence/src/test/java/org/nuiton/topia/persistence/NaturalIdTest.java +++ b/topia-persistence/src/test/java/org/nuiton/topia/persistence/NaturalIdTest.java @@ -114,8 +114,7 @@ public class NaturalIdTest { entity.setNaturalIdNotNull(8); transaction.commitTransaction(); } catch (TopiaException eee) { - Assert.assertEquals("org.hibernate.HibernateException", - eee.getCause().getClass().getName()); + Assert.assertEquals(javax.persistence.PersistenceException.class, eee.getCause().getClass()); } } -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.
participants (1)
-
nuiton.org scm