On Oct 17, 2007, at 1:21 PM, Georg von Bülow wrote: Hi Frank, in my case that won´t work, as I want to build a RCP Eclipse Plugin. So instead of accessing the jars from the WebObjects Installation, everything is copied and included in my project. Meanwhile I could track down the problem to one certain point when NSBundle´s classloader calls getResources("/Resources/Info.plist"). In my application, this doesn´t return anything. Eclipse uses different classloaders, as I learnt now (see e.g. http://www.eclipsezone.com/articles/eclipse-vms/), so maybe this causes the whole trouble. Haven´t found out how to resolve it yet, though. Anyway, seems to be rather an RCP problem than WebObjects. Georg
It seems more obvious the problem is in how you have the app configured. Here is an app:
xyzzy.woa/Contents/Info.plist xyzzy.woa/Contents/MacOS/MacOSClassPath.txt xyzzy.woa/Contents/MacOS/xyzzy xyzzy.woa/Contents/pbdevelopment.plist xyzzy.woa/Contents/PkgInfo xyzzy.woa/Contents/Resources/Extra.api xyzzy.woa/Contents/Resources/Extra.wo xyzzy.woa/Contents/Resources/Extra.wo/Extra.html xyzzy.woa/Contents/Resources/Extra.wo/Extra.wod xyzzy.woa/Contents/Resources/Extra.wo/Extra.woo xyzzy.woa/Contents/Resources/Java/xyzzy.jar xyzzy.woa/Contents/Resources/Main.api xyzzy.woa/Contents/Resources/Main.wo xyzzy.woa/Contents/Resources/Main.wo/Main.html xyzzy.woa/Contents/Resources/Main.wo/Main.wod xyzzy.woa/Contents/Resources/Main.wo/Main.woo xyzzy.woa/Contents/Resources/Properties xyzzy.woa/Contents/Resources/WOAfile.icns xyzzy.woa/Contents/UNIX/UNIXClassPath.txt xyzzy.woa/Contents/Windows/CLSSPATH.TXT xyzzy.woa/Contents/Windows/xyzzy.CMD xyzzy.woa/xyzzy xyzzy.woa/xyzzy.CMD xyzzy.woa/WOBootstrap.jar
If your app is looking for an Info.plist inside a Resources directory, that would be wrong. It should be inside a Contents directory. Unless you are talking about a framework.
Does the RCP architecture allow you put this inside a jar file and access it? Does it need to be inside a jar file. If it requires a jar file, it should access the contents of the jar file as if they were at the top-level of the a directory.
Then the question is, is your app and/or framework configured correctly. Application bundle directories have a Contents directory. Framework bundle directories do not. In an application, the Info.plist is inside the Contents directory. In a framework, it is inside the Resources directory. In both, the jar needs to be in a Java directory inside a Resources directory.
It may help if you post (on a website and not to the list) parts of your project that demonstrate the problem. Or not.
thanx - ray
Hi,
some years ago I coded a commandline java-program for EOF on win, I used this simple
cmd to start it:
java -classpath "D:\j2sdk1.4.0_01\jre\lib\ext\msutil.jar;D:\j2sdk1.4.0_01\jre\lib\ext\mssqlserver.jar;D:\j2sdk1.4.0_01\jre\lib\ext\msbase.jar;d:\apple\Library\Frameworks\JavaWebObjects.framework\Resources\Java\javawebobjects.jar;d:\apple\Library\Frameworks\JavaEOControl.framework\Resources\Java\javaeocontrol.jar;d:\apple\Library\Frameworks\JavaXML.framework\Resources\Java\javaxml.jar;;d:\apple\Library\Frameworks\JavaEOAccess.framework\Resources\Java\javaeoaccess.jar;d:\apple\Library\Frameworks\JavaWOExtensions.framework\Resources\Java\JavaWOExtensions.jar;.\JavaJDBCAdaptor.framework\Resources\Java\javajdbcadaptor.jar;d:\apple\Library\Frameworks\JavaFoundation.framework\Resources\Java\javafoundation.jar;." MyJavaProgram
- the eof ".eomodeld"-folder was located in the current directory (I guess that's your point here...)
- I also copied the "JavaJDBCAdaptor.framework"-folder to the current folder (I think this is not neccesary)
- msutil.jar, mssqlserver.jar and msbase.jar are (old) sql-server jdbc driver jars, put your necessary jars in the classpath
HTH
Frank
-----Original Message-----
From: webobjects-dev-bounces+webobjects=email@hidden
[mailto:webobjects-dev-bounces+webobjects=symposion.de@lists.a
pple.com]O
n Behalf Of Georg von Bülow
Sent: Wednesday, October 17, 2007 4:30 PM
To: Ray Kiddy
Cc: WebObjects (Group)
Subject: Re: pure EOF in RCP
Hi Ray and Florijan,
thank you for your help, but I still couldn´t get it work.
I tried to include the entire Frameworks in the classpath of
my RCP app,
not only the jars. Like this I maintain the directory structure
/Resources/Java etc, but the error remains the same.
So at runtime RCP finds WebObject classes, but NSBundle still doesn´t
have a MainBundle. Not sure what is missing to set up Main Bundle
correctly or where I should put the Frameworks, will keep on trying.
Georg
On Oct 16, 2007, at 6:53 AM, Georg von Bülow wrote:
Hi,
having read the stepwise article about 100% pure EOF Applications
(http://www.stepwise.com/Articles/Technical/2001-07-01.01.html),
I´m trying to figure out if it´s possible to get EOF
working inside
an RCP Application.
So I added the relevant WebObjects jars to lib (eoacess,
eocontrol,
javafoundation, javaxml, javajdbcadaptor) and compiled
successfully.
But on runtime the application always fails with:
java.lang.ExceptionInInitializerError
at
com.moleque.pas.checklist.Application.loadModel(Application.java:65)
at
com.moleque.pas.checklist.Application.run(Application.java:36)
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(Plat
formActivator.java:78)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.r
unApplication(EclipseAppLauncher.java:92)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.s
tart(EclipseAppLauncher.java:68)
...
Caused by: java.lang.NullPointerException
at
com.webobjects.foundation.NSBundle.LoadUserAndBundleProperties
(NSBundle.java:313)
at
com.webobjects.foundation.NSBundle.(NSBundle.java:2262)
... 15 more
The problem is that MainBundle cannot be resolved, that is already
trying
NSBundle.mainBundle() returns the above error.
Has anyone got to work EOF with RCP? Or can point to me how to
overcome this NSBundle problem?
I´m using Eclipse 3.2.2, WebObjects jars 5.3.2, and Windows XP.
Thanks for any hints in advance,
Georg
--
\o/ Georg von Bülow, Moleque de Idéias Educação e Tecnologia Ltda
| Phone: 55-21-2710-0178 E-mail: email@hidden
/ \ http://www.moleque.com.br Niterói - Rio de Janeiro - Brasil
This looks like problems I have had while trying many different
runtime configurations.
An NSBundle is not just a jar file, but it is also the directory
structure, with a '.framework' directory, a 'Contents' directory
(sometimes), a 'Resources' directory, a 'Java' directory, and so on
and so forth.
The easiest way to unravel NSBundle problems is to try to use just
directories, then use the directories inside a jar, then try moving
the jar where you want it to go.
Does this help?
- ray
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
moleque.com.br
This email sent to email@hidden
--
\o/ Georg von Bülow, Moleque de Idéias Educação e Tecnologia Ltda
| Phone: 55-21-2710-0178 E-mail: email@hidden
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
|