The message indicates the entity org.apache.airavata.persistance.registry.jpa.model.Application_Descriptor can not be loaded.
Can you double check if this class is accessible from "maven.compile.classpath"? Or turn jdk trace to see where classes are loaded from! Albert On Mon, Feb 3, 2014 at 11:54 AM, Chathuri Wimalasena <[email protected]>wrote: > Hi Devs, > > I have database table names as APPLICATION_DESCRIPTOR, EXPERIMENT_SUMMARY > etc. I'm using openJPA to map this tables to object model. > > In the model class, I annotate each class with table name as below. > > @Entity > @IdClass(Application_Descriptor_PK.class) > @Table(name ="APPLICATION_DESCRIPTOR") > public class Application_Descriptor { > > } > > When I build my project using maven, I'm getting following exception. > > main: > 147 airavata_data INFO [main] openjpa.Tool - Enhancer running on type > > "org.apache.airavata.persistance.registry.jpa.model.Application_Descriptor". > java.lang.IllegalArgumentException: java.lang.ClassNotFoundException: > org.apache.airavata.persistance.registry.jpa.model.Application_Descriptor > at serp.util.Strings.toClass(Strings.java:164) > at serp.util.Strings.toClass(Strings.java:108) > at serp.bytecode.BCClass.getType(BCClass.java:566) > at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:286) > at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4797) > at org.apache.openjpa.ant.PCEnhancerTask.executeOn(PCEnhancerTask.java:89) > at org.apache.openjpa.lib.ant.AbstractTask.execute(AbstractTask.java:171) > at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:390) > at org.apache.tools.ant.Target.performTasks(Target.java:411) > at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1397) > at org.apache.tools.ant.Project.executeTarget(Project.java:1366) > at org.apache.maven.plugin.antrun.AntRunMojo.execute(AntRunMojo.java:270) > at > > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) > at > > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) > at > > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) > at > > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) > at > > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) > at > > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) > at > > org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) > at > > org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) > at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) > at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) > at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) > at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at > > org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) > at > org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) > at > > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) > at > org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) > > I'm specifying model classes in my persistence.xml as below. > > <persistence-unit name="airavata_data"> > > <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider> > > <class>org.apache.airavata.persistance.registry.jpa.model.Gateway</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Configuration</class> > > <class>org.apache.airavata.persistance.registry.jpa.model.Users</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Gateway_Worker</class> > > <class>org.apache.airavata.persistance.registry.jpa.model.Project</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Published_Workflow</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.User_Workflow</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Host_Descriptor</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Service_Descriptor</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Application_Descriptor</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Experiment_Metadata</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Experiment_Configuration_Data</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Experiment_Summary</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Experiment_Input</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Experiment_Output</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Workflow_Data</class> > > <class>org.apache.airavata.persistance.registry.jpa.model.Node_Data</class> > > <!--<class>org.apache.airavata.persistance.registry.jpa.model.Gram_Data</class>--> > > > <class>org.apache.airavata.persistance.registry.jpa.model.Execution_Error</class> > > <class>org.apache.airavata.persistance.registry.jpa.model.GFac_Job_Data</class> > > > <class>org.apache.airavata.persistance.registry.jpa.model.GFac_Job_Status</class> > > <class>org.apache.airavata.persistance.registry.jpa.model.Orchestrator</class> > </persistence-unit> > > Also I added maven-antrun-plugin in my pom.xml as well. > > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-antrun-plugin</artifactId> > <version>${antrun.version}</version> > <executions> > <execution> > <phase>process-classes</phase> > <configuration> > <tasks> > <taskdef name="openjpac" > classname="org.apache.openjpa.ant.PCEnhancerTask" > classpathref="maven.compile.classpath" /> > <openjpac> > <classpath > refid="maven.compile.classpath" /> > </openjpac> > </tasks> > </configuration> > <goals> > <goal>run</goal> > </goals> > </execution> > </executions> > </plugin> > > Any idea why I'm getting this error and how can I get rid of that. > > Thanks and Regards, > Chathuri > -- Albert Lee.
