These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 
Author Message
 Post subject: Neither ant instrument tool works with latest hibernate jars
PostPosted: Sun Oct 08, 2006 5:23 pm 
Beginner
Beginner

Joined: Thu Oct 16, 2003 7:25 pm
Posts: 38
Location: New York City
I have recently upgraded from the Hibernate 3.2 CR3, ann 3.2 CR1, ent 3.2 CR1 versions to the latest releases of those, ie Hibernate 3.2 CR5, ann 3.2 CR3, ent 3.2 CR3. Both of the instrument ant tasks, actually defined the hibernate3.jar, produce problems for me.

I have tried all of the following with both the hibernate-tools.jar 3.2.0 beta 7 and with a home-built one based on the latest SVN Hibernate3 and HibernateExt source.

When running with the org.hibernate.tool.instrument.javassist.InstrumentTask, I get no errors until I attempt to run the org.hibernate.tool.ant.HibernateToolTask on my schema, I get a nasty long stack trace:

Code:
F:\webpublishing\cms\build.xml:192: org.hibernate.MappingException: Could not determine type for: org.hibernate.bytecode.javassist.FieldHandler, for columns: [org.hibernate.mapping.Column(fieldHandler)]
   at org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:539)
   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:384)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
   at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
   at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
Caused by: F:\webpublishing\cms\build.xml:192: org.hibernate.MappingException: Could not determine type for: org.hibernate.bytecode.javassist.FieldHandler, for columns: [org.hibernate.mapping.Column(fieldHandler)]
   at org.hibernate.tool.ant.HibernateToolTask.reportException(HibernateToolTask.java:211)
   at org.hibernate.tool.ant.HibernateToolTask.execute(HibernateToolTask.java:174)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37)
   at org.eclipse.ant.internal.ui.antsupport.EclipseSingleCheckExecutor.executeTargets(EclipseSingleCheckExecutor.java:30)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
   ... 11 more
Caused by: org.hibernate.MappingException: Could not determine type for: org.hibernate.bytecode.javassist.FieldHandler, for columns: [org.hibernate.mapping.Column(fieldHandler)]
   at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:266)
   at org.hibernate.mapping.Column.getSqlTypeCode(Column.java:138)
   at org.hibernate.mapping.Column.getSqlType(Column.java:182)
   at org.hibernate.mapping.Table.sqlCreateString(Table.java:383)
   at org.hibernate.cfg.Configuration.generateSchemaCreationScript(Configuration.java:779)
   at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:94)
   at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:61)
   at org.hibernate.tool.ant.Hbm2DDLExporterTask.execute(Hbm2DDLExporterTask.java:45)
   at org.hibernate.tool.ant.HibernateToolTask.execute(HibernateToolTask.java:171)
   ... 20 more
--- Nested Exception ---
F:\webpublishing\cms\build.xml:192: org.hibernate.MappingException: Could not determine type for: org.hibernate.bytecode.javassist.FieldHandler, for columns: [org.hibernate.mapping.Column(fieldHandler)]
   at org.hibernate.tool.ant.HibernateToolTask.reportException(HibernateToolTask.java:211)
   at org.hibernate.tool.ant.HibernateToolTask.execute(HibernateToolTask.java:174)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37)
   at org.eclipse.ant.internal.ui.antsupport.EclipseSingleCheckExecutor.executeTargets(EclipseSingleCheckExecutor.java:30)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
   at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
   at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
Caused by: org.hibernate.MappingException: Could not determine type for: org.hibernate.bytecode.javassist.FieldHandler, for columns: [org.hibernate.mapping.Column(fieldHandler)]
   at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:266)
   at org.hibernate.mapping.Column.getSqlTypeCode(Column.java:138)
   at org.hibernate.mapping.Column.getSqlType(Column.java:182)
   at org.hibernate.mapping.Table.sqlCreateString(Table.java:383)
   at org.hibernate.cfg.Configuration.generateSchemaCreationScript(Configuration.java:779)
   at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:94)
   at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:61)
   at org.hibernate.tool.ant.Hbm2DDLExporterTask.execute(Hbm2DDLExporterTask.java:45)
   at org.hibernate.tool.ant.HibernateToolTask.execute(HibernateToolTask.java:171)
   ... 20 more
--- Nested Exception ---
org.hibernate.MappingException: Could not determine type for: org.hibernate.bytecode.javassist.FieldHandler, for columns: [org.hibernate.mapping.Column(fieldHandler)]
   at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:266)
   at org.hibernate.mapping.Column.getSqlTypeCode(Column.java:138)
   at org.hibernate.mapping.Column.getSqlType(Column.java:182)
   at org.hibernate.mapping.Table.sqlCreateString(Table.java:383)
   at org.hibernate.cfg.Configuration.generateSchemaCreationScript(Configuration.java:779)
   at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:94)
   at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:61)
   at org.hibernate.tool.ant.Hbm2DDLExporterTask.execute(Hbm2DDLExporterTask.java:45)
   at org.hibernate.tool.ant.HibernateToolTask.execute(HibernateToolTask.java:171)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37)
   at org.eclipse.ant.internal.ui.antsupport.EclipseSingleCheckExecutor.executeTargets(EclipseSingleCheckExecutor.java:30)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
   at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
   at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)


However, when I attempt to use the org.hibernate.tool.instrument.cglib.InstrumentTask, I receive the following stack trace right away:

Code:
java.lang.NoSuchMethodError: net.sf.cglib.core.ClassNameReader.getClassInfo(Lorg/objectweb/asm/ClassReader;)[Ljava/lang/String;
   at org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:539)
   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:384)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
   at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
   at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
Caused by: java.lang.NoSuchMethodError: net.sf.cglib.core.ClassNameReader.getClassInfo(Lorg/objectweb/asm/ClassReader;)[Ljava/lang/String;
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1225)
   at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37)
   at org.eclipse.ant.internal.ui.antsupport.EclipseSingleCheckExecutor.executeTargets(EclipseSingleCheckExecutor.java:30)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
   ... 11 more
Caused by: java.lang.NoSuchMethodError: net.sf.cglib.core.ClassNameReader.getClassInfo(Lorg/objectweb/asm/ClassReader;)[Ljava/lang/String;
   at org.hibernate.tool.instrument.cglib.InstrumentTask$CustomClassDescriptor.<init>(InstrumentTask.java:80)
   at org.hibernate.tool.instrument.cglib.InstrumentTask.getClassDescriptor(InstrumentTask.java:59)
   at org.hibernate.tool.instrument.BasicInstrumentationTask.processClassFile(BasicInstrumentationTask.java:175)
   at org.hibernate.tool.instrument.BasicInstrumentationTask.processFile(BasicInstrumentationTask.java:142)
   at org.hibernate.tool.instrument.BasicInstrumentationTask.execute(BasicInstrumentationTask.java:86)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   ... 15 more
--- Nested Exception ---
java.lang.NoSuchMethodError: net.sf.cglib.core.ClassNameReader.getClassInfo(Lorg/objectweb/asm/ClassReader;)[Ljava/lang/String;
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1225)
   at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37)
   at org.eclipse.ant.internal.ui.antsupport.EclipseSingleCheckExecutor.executeTargets(EclipseSingleCheckExecutor.java:30)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
   at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
   at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
Caused by: java.lang.NoSuchMethodError: net.sf.cglib.core.ClassNameReader.getClassInfo(Lorg/objectweb/asm/ClassReader;)[Ljava/lang/String;
   at org.hibernate.tool.instrument.cglib.InstrumentTask$CustomClassDescriptor.<init>(InstrumentTask.java:80)
   at org.hibernate.tool.instrument.cglib.InstrumentTask.getClassDescriptor(InstrumentTask.java:59)
   at org.hibernate.tool.instrument.BasicInstrumentationTask.processClassFile(BasicInstrumentationTask.java:175)
   at org.hibernate.tool.instrument.BasicInstrumentationTask.processFile(BasicInstrumentationTask.java:142)
   at org.hibernate.tool.instrument.BasicInstrumentationTask.execute(BasicInstrumentationTask.java:86)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   ... 15 more
--- Nested Exception ---
java.lang.NoSuchMethodError: net.sf.cglib.core.ClassNameReader.getClassInfo(Lorg/objectweb/asm/ClassReader;)[Ljava/lang/String;
   at org.hibernate.tool.instrument.cglib.InstrumentTask$CustomClassDescriptor.<init>(InstrumentTask.java:80)
   at org.hibernate.tool.instrument.cglib.InstrumentTask.getClassDescriptor(InstrumentTask.java:59)
   at org.hibernate.tool.instrument.BasicInstrumentationTask.processClassFile(BasicInstrumentationTask.java:175)
   at org.hibernate.tool.instrument.BasicInstrumentationTask.processFile(BasicInstrumentationTask.java:142)
   at org.hibernate.tool.instrument.BasicInstrumentationTask.execute(BasicInstrumentationTask.java:86)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37)
   at org.eclipse.ant.internal.ui.antsupport.EclipseSingleCheckExecutor.executeTargets(EclipseSingleCheckExecutor.java:30)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
   at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
   at org.apache.tools.ant.Task.perform(Task.java:364)
   at org.apache.tools.ant.Target.execute(Target.java:341)
   at org.apache.tools.ant.Target.performTasks(Target.java:369)
   at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
   at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
   at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
   at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
   at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
   at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)


What's going wrong with the instrument code? Are these problems known bugs? If so, are they assigned and being worked on? I'd like to know, cause I'd like to move up to the most recent version that works for our project, and right now, I have to move back to hib-3.2CR3, hibann-3.2CR1, hibentmgr-3.2CR1.

I'm assuming that the part of the hibernate tools codebase that contains the hbm2ddl ant task, among others, seems not to be ready for use with the latest CR5/CR3 releases of the other projects. I suppose that at some point in the near future, the tools will catch up to the releases?

I should also mention that the cglib instrument task fails just as described above for the older versions that I'm using as well, ie. CR3/CR1.

Just so you know, I totally appreciate all the work you guys do on this project. I recommend Hibernate w/annotations to all my developer friends. Thanks for the great library!

Hibernate version:
Hibernate 3.2 CR5
Hibernate Annotations 3.2 CR3
Hibernate Entity Manager 3.2 CR3
Hibernate Tools 3.2.0 beta 7 & home-built from SVN HEAD


Top
 Profile  
 
 Post subject:
PostPosted: Mon Oct 09, 2006 4:57 am 
Hibernate Team
Hibernate Team

Joined: Tue Aug 26, 2003 6:10 am
Posts: 8615
Location: Neuchatel, Switzerland (Danish)
I see two different errors here.

The first from hibernatetool is probably caused by some missing class on the classpath.

The other in the instrument task is cased by you using a different version of ASM/Cglib than what should be used.

_________________
Max
Don't forget to rate


Top
 Profile  
 
 Post subject: My CGLIB was wrong, somehow
PostPosted: Thu Oct 26, 2006 8:09 am 
Beginner
Beginner

Joined: Thu Oct 16, 2003 7:25 pm
Posts: 38
Location: New York City
My CGLIB jar version was correct, but it was a different jar, from a different third-party project. I had one with nodeps in the name, but that didn't work. I replaced it with the one from hibernate and that fixed the issue. Thanks.

Tom


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.