liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)]

JIRA | Nathan Voxland | 7 years ago
  1. 0

    UserTypes in hibernate give a org.hibernate.MappingException exception - Liquibase Forums

    liquibase.org | 8 months ago
    liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)]
  2. 0

    Request from http://liquibase.org/forum/index.php?topic=143.msg525#msg525 I think hibernate userTypes are not supported by liquibase. GenerateChangeLog Ant Task gives me a exception when I use hibernate mapping files with userTypes. Example: Calendario.hbm.xml: <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Generated 09-sep-2009 11:49:23 by Hibernate Tools 3.2.2.GA --> <hibernate-mapping> <class name="es.itecban.calendario.entidades.Calendario" table="CALENDARIO"> <id name="codCalendario" type="java.lang.String" access="field"> <column name="codCal" length="8" /> <generator class="assigned"></generator> </id> <version name="version" type="int" access="field"> <column name="QSAU29" /> </version> <property name="codServicio" type="java.lang.String" access="field"> <column name="QCSVC3" /> </property> <property name="fechaFinValidezCalendario" type="com.itecban.arq.tda.Fecha" access="field"> <column name="fechaFinValidez" not-null="true" /> </property> <property name="fechaInicioValidezCalendario" type="com.itecban.arq.tda.Fecha" access="field"> <column name="fechaInicioValidez" not-null="true" /> </property> <property name="horaCortePaisGrupoFestivos" type="com.itecban.arq.tda.Hora" access="field"> <column name="horaCortePais" not-null="true" /> </property> <many-to-one name="tp" class="es.itecban.calendario.entidades.TpCalendario" access="field" fetch="select"> <column name="TP_codTpCal" length="3" not-null="true" /> </many-to-one> </class> </hibernate-mapping> When I execute generateChangeLog with the suitable hibernate configuration file, the log shows the next: [generateChangeLog] seen table CALENDARIO D:\...\ant\build.xml:532: liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)] at org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:541) at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:418) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:357) at org.apache.tools.ant.Target.performTasks(Target.java:385) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) at org.apache.tools.ant.Project.executeTarget(Project.java:1298) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32) at org.apache.tools.ant.Project.executeTargets(Project.java:1181) at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423) at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137) ... 30 more Caused by: D:\...\ant\build.xml:532: liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)] at liquibase.ant.GenerateChangeLogTask.execute(GenerateChangeLogTask.java:37) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:357) at org.apache.tools.ant.Target.performTasks(Target.java:385) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) at org.eclipse.ant.internal.ui.antsupport.EclipseSingleCheckExecutor.executeTargets(EclipseSingleCheckExecutor.java:30) at org.apache.tools.ant.Project.executeTargets(Project.java:1181) at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416) ... 52 more Caused by: liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)] at liquibase.database.structure.HibernateDatabaseSnapshot.<init>(HibernateDatabaseSnapshot.java:188) at liquibase.database.HibernateDatabase.createDatabaseSnapshot(HibernateDatabase.java:36) at liquibase.diff.Diff.compare(Diff.java:62) at liquibase.ant.GenerateChangeLogTask.execute(GenerateChangeLogTask.java:26) ... 65 more Caused by: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)] at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:269) at org.hibernate.mapping.Column.getSqlTypeCode(Column.java:138) at liquibase.database.structure.HibernateDatabaseSnapshot.<init>(HibernateDatabaseSnapshot.java:68) ... 68 more When I use hbm2ddl from hibernate tools to generate DDL script, tool generates the sql script without problems. I think that liquibase doesn't support usertypes because it doesn't ask a classpath to view .jar files that contain classes.

    JIRA | 7 years ago | Nathan Voxland
    liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)]
  3. 0

    Request from http://liquibase.org/forum/index.php?topic=143.msg525#msg525 I think hibernate userTypes are not supported by liquibase. GenerateChangeLog Ant Task gives me a exception when I use hibernate mapping files with userTypes. Example: Calendario.hbm.xml: <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Generated 09-sep-2009 11:49:23 by Hibernate Tools 3.2.2.GA --> <hibernate-mapping> <class name="es.itecban.calendario.entidades.Calendario" table="CALENDARIO"> <id name="codCalendario" type="java.lang.String" access="field"> <column name="codCal" length="8" /> <generator class="assigned"></generator> </id> <version name="version" type="int" access="field"> <column name="QSAU29" /> </version> <property name="codServicio" type="java.lang.String" access="field"> <column name="QCSVC3" /> </property> <property name="fechaFinValidezCalendario" type="com.itecban.arq.tda.Fecha" access="field"> <column name="fechaFinValidez" not-null="true" /> </property> <property name="fechaInicioValidezCalendario" type="com.itecban.arq.tda.Fecha" access="field"> <column name="fechaInicioValidez" not-null="true" /> </property> <property name="horaCortePaisGrupoFestivos" type="com.itecban.arq.tda.Hora" access="field"> <column name="horaCortePais" not-null="true" /> </property> <many-to-one name="tp" class="es.itecban.calendario.entidades.TpCalendario" access="field" fetch="select"> <column name="TP_codTpCal" length="3" not-null="true" /> </many-to-one> </class> </hibernate-mapping> When I execute generateChangeLog with the suitable hibernate configuration file, the log shows the next: [generateChangeLog] seen table CALENDARIO D:\...\ant\build.xml:532: liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)] at org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:541) at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:418) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:357) at org.apache.tools.ant.Target.performTasks(Target.java:385) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) at org.apache.tools.ant.Project.executeTarget(Project.java:1298) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32) at org.apache.tools.ant.Project.executeTargets(Project.java:1181) at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423) at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137) ... 30 more Caused by: D:\...\ant\build.xml:532: liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)] at liquibase.ant.GenerateChangeLogTask.execute(GenerateChangeLogTask.java:37) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:357) at org.apache.tools.ant.Target.performTasks(Target.java:385) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) at org.eclipse.ant.internal.ui.antsupport.EclipseSingleCheckExecutor.executeTargets(EclipseSingleCheckExecutor.java:30) at org.apache.tools.ant.Project.executeTargets(Project.java:1181) at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416) ... 52 more Caused by: liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)] at liquibase.database.structure.HibernateDatabaseSnapshot.<init>(HibernateDatabaseSnapshot.java:188) at liquibase.database.HibernateDatabase.createDatabaseSnapshot(HibernateDatabase.java:36) at liquibase.diff.Diff.compare(Diff.java:62) at liquibase.ant.GenerateChangeLogTask.execute(GenerateChangeLogTask.java:26) ... 65 more Caused by: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)] at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:269) at org.hibernate.mapping.Column.getSqlTypeCode(Column.java:138) at liquibase.database.structure.HibernateDatabaseSnapshot.<init>(HibernateDatabaseSnapshot.java:68) ... 68 more When I use hbm2ddl from hibernate tools to generate DDL script, tool generates the sql script without problems. I think that liquibase doesn't support usertypes because it doesn't ask a classpath to view .jar files that contain classes.

    JIRA | 7 years ago | Nathan Voxland
    liquibase.exception.JDBCException: org.hibernate.MappingException: Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)]
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Hibernate mapping with JPA-Annotations: Could not determine type

    Stack Overflow | 6 years ago | Julian
    org.hibernate.MappingException: Could not determine type for: Pet, at table: Owner, for columns: [org.hibernate.mapping.Column(pet)]
  6. 0

    Hibernate mapping with JPA-Annotations: Could not determine type

    soso.io | 9 months ago
    org.hibernate.MappingException: Could not determine type for: Pet, at table: Owner, for columns: [org.hibernate.mapping.Column(pet)]

    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. org.hibernate.MappingException

      Could not determine type for: com.itecban.arq.tda.Fecha, at table: CALENDARIO, for columns: [org.hibernate.mapping.Column(fechaFinValidez)]

      at org.hibernate.mapping.SimpleValue.getType()
    2. Hibernate
      Column.getSqlTypeCode
      1. org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:269)
      2. org.hibernate.mapping.Column.getSqlTypeCode(Column.java:138)
      2 frames
    3. liquibase.database.structure
      HibernateDatabaseSnapshot.<init>
      1. liquibase.database.structure.HibernateDatabaseSnapshot.<init>(HibernateDatabaseSnapshot.java:68)
      2. liquibase.database.structure.HibernateDatabaseSnapshot.<init>(HibernateDatabaseSnapshot.java:188)
      2 frames
    4. Liquibase Core
      Diff.compare
      1. liquibase.database.HibernateDatabase.createDatabaseSnapshot(HibernateDatabase.java:36)
      2. liquibase.diff.Diff.compare(Diff.java:62)
      2 frames
    5. liquibase.ant
      GenerateChangeLogTask.execute
      1. liquibase.ant.GenerateChangeLogTask.execute(GenerateChangeLogTask.java:26)
      2. liquibase.ant.GenerateChangeLogTask.execute(GenerateChangeLogTask.java:37)
      2 frames
    6. Ant
      UnknownElement.execute
      1. org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
      1 frame
    7. Java RT
      Method.invoke
      1. sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
      2. sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      3. java.lang.reflect.Method.invoke(Unknown Source)
      3 frames
    8. Ant
      SingleCheckExecutor.executeTargets
      1. org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
      2. org.apache.tools.ant.Task.perform(Task.java:348)
      3. org.apache.tools.ant.Target.execute(Target.java:357)
      4. org.apache.tools.ant.Target.performTasks(Target.java:385)
      5. org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
      6. org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
      6 frames
    9. org.eclipse.ant
      EclipseSingleCheckExecutor.executeTargets
      1. org.eclipse.ant.internal.ui.antsupport.EclipseSingleCheckExecutor.executeTargets(EclipseSingleCheckExecutor.java:30)
      1 frame
    10. Ant
      Ant.execute
      1. org.apache.tools.ant.Project.executeTargets(Project.java:1181)
      2. org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416)
      2 frames