You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by Rahul Srivastava <ra...@mentorix.com> on 2005/05/26 08:22:05 UTC
I am having a problem with enhancing a .class for JDO
Hi
i am having a rpoblem with JDO . please help me for this.
Buildfile: build.xml
compile:
xdoclet:
[ojbdoclet] May 26, 2005 11:08:55 AM xdoclet.XDocletMain start
[ojbdoclet] INFO: Running <ojbrepository/>
[ojbdoclet] May 26, 2005 11:08:56 AM xdoclet.XDocletMain start
[ojbdoclet] INFO: Running <torqueschema/>
build:
build_if_with_mainclass:
enhance-jdori:
[java] Enhancer: options:
[java] verbose = true
[java] quiet = false
[java] forceWrite = true
[java] noWrite = false
[java] sourcePath = null
[java] destinationDirectory = build/classes
[java] propertiesFileName = null
[java] doTiming = false
[java] classNames = {
[java] }
[java] jdoFileNames = {
[java] src/java/org/apache/ojb/tutorial5/Product.jdo
[java] }
[java] classFileNames = {
[java] build/org/apache/ojb/tutorial5/Product.class
[java] }
[java] zipFileNames = {
[java] }
[java] dumpClass = false
[java] noAugment = false
[java] noAnnotate = false
[java] JDO ENHANCER: using file:
file:/D:/ojb-blank/ojb-blank/build/org/ap
che/ojb/tutorial5/Product.class
[java] Class Locator: using class files: {
[java] build/org/apache/ojb/tutorial5/Product.class
[java] }
[java] JDO ENHANCER: using file:
file:/D:/ojb-blank/ojb-blank/src/java/org
apache/ojb/tutorial5/Product.jdo
[java] -------------------------------------------------------------------
-------
[java] JDO ENHANCER: Enhancer: enhancing classfile ...
[java] JDO ENHANCER: scanning class org.apache.ojb.tutorial5.Product
[java] JDO ENHANCER: not found resource: META-INF/package.jdo
[java] JDO ENHANCER: not found resource: WEB-INF/package.jdo
[java] JDO ENHANCER: not found resource: package.jdo
[java] JDO ENHANCER: not found resource: org/package.jdo
[java] JDO ENHANCER: not found resource: org/apache/package.jdo
[java] JDO ENHANCER: not found resource: org/apache/ojb/package.jdo
[java] JDO ENHANCER: not found resource:
org/apache/ojb/tutorial5/package.
do
[java] JDO ENHANCER: found resource:
org/apache/ojb/tutorial5/Product.jdo
[java] com.sun.jdori.enhancer.util.InternalError: assertion failed:
cannot
find class file for class: org/apache/ojb/tutorial5/Product
[java] at com.sun.jdori.enhancer.util.Assertion.affirm(Unknown
Source)
[java] at
com.sun.jdori.enhancer.meta.model.EnhancerMetaDataJDOModelIm
l.declareField(Unknown Source)
[java] at com.sun.jdori.enhancer.core.Analyzer.scanFields(Unknown
Sour
e)
[java] at com.sun.jdori.enhancer.core.Analyzer.scan(Unknown Source)
[java] at com.sun.jdori.enhancer.core.Controller.scan(Unknown
Source)
[java] at
com.sun.jdori.enhancer.core.Controller.enhanceClass(Unknown
ource)
[java] at
com.sun.jdori.enhancer.filter.Enhancer.enhanceClassFile1(Unk
own Source)
[java] at
com.sun.jdori.enhancer.filter.Enhancer.enhanceClassFile(Unkn
wn Source)
[java] at com.sun.jdori.enhancer.Main.enhanceClassFile(Unknown
Source)
[java] at com.sun.jdori.enhancer.Main.enhanceInputFiles(Unknown
Source
[java] at com.sun.jdori.enhancer.Main.process(Unknown Source)
[java] at com.sun.jdori.enhancer.Main.main(Unknown Source)
[java] Fatal error while enhancing: JDO ENHANCER: An internal error
occurr
d while enhancing input class; detailed message: assertion failed: cannot
find
lass file for class: org/apache/ojb/tutorial5/Product
[java] com.sun.jdori.enhancer.EnhancerFatalError: JDO ENHANCER: An
interna
error occurred while enhancing input class; detailed message: assertion
failed
cannot find class file for class: org/apache/ojb/tutorial5/Product
[java] at
com.sun.jdori.enhancer.filter.Enhancer.enhanceClassFile(Unkn
wn Source)
[java] at com.sun.jdori.enhancer.Main.enhanceClassFile(Unknown
Source)
[java] at com.sun.jdori.enhancer.Main.enhanceInputFiles(Unknown
Source
[java] at com.sun.jdori.enhancer.Main.process(Unknown Source)
[java] at com.sun.jdori.enhancer.Main.main(Unknown Source)
[java] aborted with errors.
BUILD FAILED
D:\ojb-blank\ojb-blank\build.xml:226: Java returned: 1
bye
Rahul S
Senior Software Eng.
Lionbridge Tech Pvt Ltd.
Re: I am having a problem with enhancing a .class for JDO
Posted by Martin Kalén <mk...@apache.org>.
Rahul Srivastava wrote:
> Hi
> i am having a rpoblem with JDO . please help me for this.
<snip/>
> [java] com.sun.jdori.enhancer.util.InternalError: assertion failed:
> cannot
> find class file for class: org/apache/ojb/tutorial5/Product
<snip/>
> BUILD FAILED
> D:\ojb-blank\ojb-blank\build.xml:226: Java returned: 1
It looks like you might be trying to follow the JDO tutorial [1].
Unfortunately the tutorial is not 100% updated on the Apache OJB website,
so you will have to read some steps a bit differently and perform some
minor hacking to get going:
"Extract the tutorial-src.jar"
=> "Extract the tutorial5-src.jar"
"Download jdori.jar,jdo.jar from Sun's JDO site"
=> "Download jdori-enhancer.jar,jdori.jar,jdo.jar from Sun's JDO site" [2]
"cd build/resources ; java org.apache.ojb.tutorial5.Main"
=> "cd build ; java -cp
.:classes:../src/java:../lib/jdo.jar:../lib/jdori.jar:../lib/db-ojb-1.0.3.jar:../lib/antlr-2.7.5.jar:../lib/hsqldb.jar:../lib/commons-lang-2.0.jar:../lib/commons-pool-1.2.jar:../lib/commons-collections-2.1.1.jar:../lib/commons-dbcp-1.2.1.jar
org.apache.ojb.tutorial5.Application"
Or for Windows:
cd build
java -cp
.;classes;..\src\java;..\lib\jdo.jar;..\lib\jdori.jar;..\lib\db-ojb-1.0.3.jar;..\lib\antlr-2.7.5.jar;..\lib\hsqldb.jar;..\lib\commons-lang-2.0.jar;..\lib\commons-pool-1.2.jar;..\lib\commons-collections-2.1.1.jar;..\lib\commons-dbcp-1.2.1.jar
org.apache.ojb.tutorial5.Application
Download tutorial5-src.jar from your closest Apach mirror [3]
and extract it into a directory called java as subdirectory in
"src" of your ojb-blank project.
There is also a bug in the ojb-blank build.xml for performing the
Ant-task "enhance-jdori", you can patch build.xml from v1.0.3 release
by changing line 227 to:
<arg line="-v -f -d ${build.dir}/classes ${source.java.dir}/org/apache/ojb/tutorial5/Product.jdo
${build.dir}/classes/org/apache/ojb/tutorial5/Product.class"/>
Secondly, on line 45 adding:
<path id="compile-build-classpath">
<pathelement path="${build.dir}/classes"/>
<path refid="compile-classpath"/>
</path>
[insert blank line here]
And finally, on the new line 231 changing classpathref to:
classpathref="compile-build-classpath"
For more specific help, please tell us some more details
(Are you building from source or binary release?
Which O/S are you using (Windows, Linux, ...)?
Which version of OJB are you using?
Exactly what are you trying to do, eg which Ant-target?)
The JDO tutorial on the Apache OJB website and the ojb-blank project
will be updated so that you don't have perform all of these inconveniences
in a future release (hopefully before 1.0.4).
Regards,
Martin
[1] http://db.apache.org/ojb/docu/tutorials/jdo-tutorial.html
[2] http://java.sun.com/products/jdo/
[3] http://www.apache.org/dyn/closer.cgi/db/ojb/
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org