I notice that you are using @OneToMany annotations on fields that are Long,
Integer and String???? You do not have to. The problem is that Hibernate is
now looking for another Entity class called Integer or Long or String. You
only use these association annotations on your own Entity classes.
Lets say for instance that you are intending to have many Cats in one Cart.
It would imply that the Cart class would have declared a Collection that
contains Cats. You will annotate the Collection with @OneToMany in the Cart
class.
And if you need bi-directional association then the Cat class will have
declared a Cart object too. This way, a Cat knows which Cart he is in. You
will then annotate the Cart field with @ManyToOne in the Cat class.
So in the Cat class you will have:
@ManyToOne
@JoinColumn(name="cart_id")
private cart cart;
and in the Cart class you will have
@OneToMany(mappedBy="cart")
private Collection<Cat> cats;
Vincent
On Mon, Jun 16, 2008 at 9:41 AM, Stephanus Astorizkhy <[EMAIL PROTECTED]>
wrote:
> Hi all, im newbie,
> i want to make a cat and cart in 1-to-* relational database.
> I sent attachment for Cart.java and Cat.java
> once i use appgen, i have the following result..
>
>
> C:\appf\eCat>mvn appfuse:gen -Dentity=Cart
> [INFO] Scanning for projects...
> [INFO] Searching repository for plugin with prefix: 'appfuse'.
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] Building Studi Kasus kedua: website eCat
> [INFO] task-segment: [appfuse:gen]
> [INFO]
> ----------------------------------------------------------------------------
> [INFO] Preparing appfuse:gen
> [INFO] [aspectj:compile {execution: default}]
> [INFO] [native2ascii:native2ascii {execution: native2ascii-utf8}]
> [INFO] [native2ascii:native2ascii {execution: native2ascii-8859_1}]
> [INFO] [resources:resources]
> [INFO] Using default encoding to copy filtered resources.
> [INFO] [compiler:compile]
> [INFO] Nothing to compile - all classes are up to date
> [INFO] [appfuse:gen]
> [INFO] [AppFuse] Found 'Address.java' in model package...
> [INFO] [AppFuse] Found 'BaseObject.java' in model package...
> [INFO] [AppFuse] Found 'Cart.java' in model package...
> [INFO] [AppFuse] Adding 'Cart' to hibernate.cfg.xml...
> [INFO] Configuration XML file loaded:
> C:\appf\eCat\src\main\resources\hibernate.cfg.xml
> [INFO] Configuration XML file loaded:
> C:\appf\eCat\src\main\resources\hibernate.cfg.xml
> [INFO] src/main/resources/database.properties not found within the project.
> Trying absolute path.
> [INFO] No hibernate properties file loaded.
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] FATAL ERROR
> [INFO]
> ------------------------------------------------------------------------
> [INFO] @OneToOne or @ManyToOne on ecat.model.Cart.CatId references an
> unknown entity: java.lang.Long
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Trace
> org.hibernate.AnnotationException: @OneToOne or @ManyToOne on
> ecat.model.Cart.CatId references an unknown enti
> ty: java.lang.Long
> at org.hibernate.cfg.FkSecondPass.doSecondPass(FkSecondPass.java:56)
> at
> org.hibernate.cfg.AnnotationConfiguration.processFkSecondPassInOrder(AnnotationConfiguration.java:4
> 28)
> at
> org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:286)
> at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1039)
> at
> org.codehaus.mojo.hibernate3.configuration.AbstractComponentConfiguration.getConfiguration(Abstract
> ComponentConfiguration.java:38)
> at
> org.appfuse.mojo.HibernateExporterMojo.configureExporter(HibernateExporterMojo.java:180)
> at
> org.appfuse.mojo.exporter.AppFuseGeneratorMojo.configureExporter(AppFuseGeneratorMojo.java:208)
> at
> org.appfuse.mojo.HibernateExporterMojo.doExecute(HibernateExporterMojo.java:228)
> at
> org.appfuse.mojo.exporter.AppFuseGeneratorMojo.doExecute(AppFuseGeneratorMojo.java:241)
> at
> org.appfuse.mojo.HibernateExporterMojo.execute(HibernateExporterMojo.java:138)
> at
> org.appfuse.mojo.exporter.AppFuseGeneratorMojo.execute(AppFuseGeneratorMojo.java:194)
> at
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:443)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
>
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.
> java:493)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:463)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleEx
> ecutor.java:311)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.ja
> va:278)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:334)
> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:125)
> at org.apache.maven.cli.MavenCli.main(MavenCli.java:280)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
>
> what should I do?
> Thanks in advance..
>
> ------------------------------
> Sent from Yahoo!
> Mail<http://us.rd.yahoo.com/mailuk/taglines/isp/control/*http://us.rd.yahoo.com/evt=52418/*http://uk.docs.yahoo.com/nowyoucan.html>.
>
> A Smarter Email.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>