You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@openjpa.apache.org by Marc Logemann <li...@logemann.org> on 2011/10/07 19:01:20 UTC

weird JDO Exception when using OpenJPA 2 Enhancer

Hi,

something weird is going on. i added a new directory in my ANT task like this:

<openjpac>
            <config propertiesFile="web/META-INF/persistence.xml"/>
            <fileset dir="${build.dir}">
                <!-- <include name="**/model/*.class"/> -->
                <include name="**/domain/*.class"/>
            </fileset>
            <classpath refid="classpath"/>
        </openjpac>

Now with the newly added folder. I am getting the following exception. Note that i checked all my sources if there is any reference to javax.jdo but there is none:

/Users/ml/Development/java/projects/bwh/build.xml:112: java.lang.IllegalArgumentException: java.lang.NoClassDefFoundError: javax/jdo/spi/PersistenceCapable
	at org.apache.openjpa.lib.ant.AbstractTask.execute(AbstractTask.java:175)
	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
	at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	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:1399)
	at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
	at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
	at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
	at org.apache.tools.ant.Main.runBuild(Main.java:809)
	at org.apache.tools.ant.Main.startAnt(Main.java:217)
	at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
	at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
	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 com.intellij.rt.ant.execution.AntMain2.main(AntMain2.java:32)
Caused by: java.lang.IllegalArgumentException: java.lang.NoClassDefFoundError: javax/jdo/spi/PersistenceCapable
	at serp.util.Strings.toClass(Strings.java:164)
	at serp.util.Strings.toClass(Strings.java:108)
	at org.apache.openjpa.lib.meta.ClassArgParser.parseTypes(ClassArgParser.java:164)
	at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4659)
	at org.apache.openjpa.ant.PCEnhancerTask.executeOn(PCEnhancerTask.java:89)
	at org.apache.openjpa.lib.ant.AbstractTask.execute(AbstractTask.java:171)
	... 21 more

If i remove the include and use the one which is currently commented out. Everything works fine as it did years before.... i am clueless..


Thanks for any pointer.....


---
regards
Marc Logemann
http://www.logemann.org
http://www.logentis.de





Re: weird JDO Exception when using OpenJPA 2 Enhancer

Posted by Marc Logemann <li...@logemann.org>.
ok guys. Got it. **/domain searched in a weird package that was generated by a webservice framework and most likely something jdo relevant sneaked into it. I specified the folder now with using ** so that i am in full control of the enhancer ;-)

Really scary to see a persistence API popping up i stopped using years ago ;-)

---
regards
Marc Logemann
http://www.logemann.org
http://www.logentis.de




Am 07.10.2011 um 19:01 schrieb Marc Logemann:

> Hi,
> 
> something weird is going on. i added a new directory in my ANT task like this:
> 
> <openjpac>
>            <config propertiesFile="web/META-INF/persistence.xml"/>
>            <fileset dir="${build.dir}">
>                <!-- <include name="**/model/*.class"/> -->
>                <include name="**/domain/*.class"/>
>            </fileset>
>            <classpath refid="classpath"/>
>        </openjpac>
> 
> Now with the newly added folder. I am getting the following exception. Note that i checked all my sources if there is any reference to javax.jdo but there is none:
> 
> /Users/ml/Development/java/projects/bwh/build.xml:112: java.lang.IllegalArgumentException: java.lang.NoClassDefFoundError: javax/jdo/spi/PersistenceCapable
> 	at org.apache.openjpa.lib.ant.AbstractTask.execute(AbstractTask.java:175)
> 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
> 	at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	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:1399)
> 	at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
> 	at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
> 	at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
> 	at org.apache.tools.ant.Main.runBuild(Main.java:809)
> 	at org.apache.tools.ant.Main.startAnt(Main.java:217)
> 	at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
> 	at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
> 	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 com.intellij.rt.ant.execution.AntMain2.main(AntMain2.java:32)
> Caused by: java.lang.IllegalArgumentException: java.lang.NoClassDefFoundError: javax/jdo/spi/PersistenceCapable
> 	at serp.util.Strings.toClass(Strings.java:164)
> 	at serp.util.Strings.toClass(Strings.java:108)
> 	at org.apache.openjpa.lib.meta.ClassArgParser.parseTypes(ClassArgParser.java:164)
> 	at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4659)
> 	at org.apache.openjpa.ant.PCEnhancerTask.executeOn(PCEnhancerTask.java:89)
> 	at org.apache.openjpa.lib.ant.AbstractTask.execute(AbstractTask.java:171)
> 	... 21 more
> 
> If i remove the include and use the one which is currently commented out. Everything works fine as it did years before.... i am clueless..
> 
> 
> Thanks for any pointer.....
> 
> 
> ---
> regards
> Marc Logemann
> http://www.logemann.org
> http://www.logentis.de
> 
> 
> 
>