Howdy,
when trying to launch a Maven based WOApplication inside Eclipse
3.4 / WOLips 3.4.5503 on a Windows XP machine which HASN'T WebObjects
installed at first I got some null pointer exception which had
something to do with not being able to read certain environment
variables (I had a stacktrace on it inside the error log view in
Eclipse but my co-worker did hit the clear button when trying to work
the problem out while I was at lunch :-( After that I could never
reproduce it, even when deleting the environment variables and
restarting the machine). Before I went to lunch we tried to set the
environment variables mentioned in <http://wiki.objectstyle.org/
confluence/display/WOL/Installing+WebObjects-WOLips+on+Windows> to
the following values to see what happens:
NEXT_ROOT=C:\Apple
WEBOBJECTS_JAVA_EXTENSIONS=%JAVA_HOME%\lib\ext
WEBOBJECTS_JAVA_HOME=%JAVA_HOME%
However, the NPE went away and the following came up:
[2008-10-14 16:58:1 CEST] <main> <WOResourceManager> Unable to locate
the "JavaWebObjects" bundle
[2008-10-14 16:58:1 CEST] <main> Unable to initialize WOProperties
for reason: Cannot find JavaWebObjects framework !
java.lang.IllegalStateException: Unable to locate the
"JavaWebObjects" bundle
[2008-10-14 16:58:1 CEST] <main> A fatal exception occurred:
<WOApplication>: Cannot be initialized.
[2008-10-14 16:58:1 CEST] <main>
com.webobjects.foundation.NSForwardException
[java.lang.IllegalStateException] Unable to locate the
"JavaWebObjects" bundle:<WOApplication>: Cannot be initialized.
at com.webobjects.appserver.WOApplication.<init>
(WOApplication.java:918)
at com.assense.core.wo.AssenseApplication.<init>
(AssenseApplication.java:25)
at com.tankdisk.Application.<init>(Application.java:68)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance
(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance
(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at java.lang.Class.newInstance0(Class.java:350)
at java.lang.Class.newInstance(Class.java:303)
at com.webobjects.appserver.WOApplication.main
(WOApplication.java:547)
at com.tankdisk.Application.main(Application.java:37)
Caused by: java.lang.IllegalStateException: Unable to locate the
"JavaWebObjects" bundle
at
com.webobjects.appserver.WOResourceManager.__getJavaWebObjectsResourceAs
Stream(WOResourceManager.java:131)
at
com.webobjects.appserver._private.WOProperties.initUserDefaultsKeys
(WOProperties.java:317)
at com.webobjects.appserver.WOApplication._initWOApp
(WOApplication.java:5743)
at com.webobjects.appserver.WOApplication.<init>
(WOApplication.java:779)
... 10 more
What makes me wonder is that even when launching a Maven based
WOApplication a static WO installation seems to be required and
referred (environment variables).
Shouldn't it work out of the box without any WO installed at the
machine at all (and loading all the dependencies from the local .m2/
repository instead)
Is this a bug or a misconception on my side?
thanks,
Lars
p.s.:
The ant.* files look like this (note the windows style backslashes!):
ant.frameworks.wo.wosystemroot:
An empty file result in a full filesystem scan
ant.classpaths.user.home:
\.m2\repository\com\apple\webobjects\JavaXML\5.4.2\JavaXML-5.4.2.jar
\.m2\repository\com\apple\webobjects\JavaJDBCAdaptor\5.4.2
\JavaJDBCAdaptor-5.4.2.jar
\.m2\repository\postgresql\postgresql\7.4.1-jdbc3\postgresql-7.4.1-
jdbc3.jar
\.m2\repository\com\apple\webobjects\JavaEOAccess\5.4.2
\JavaEOAccess-5.4.2.jar
\.m2\repository\javax\mail\mail\1.4.1\mail-1.4.1.jar
\.m2\repository\com\apple\webobjects\JavaEOControl\5.4.2
\JavaEOControl-5.4.2.jar
\.m2\repository\assense\shared\PostgreSQLPlugIn\1.5.4
\PostgreSQLPlugIn-1.5.4.jar
\.m2\repository\javax\activation\activation\1.1\activation-1.1.jar
\.m2\repository\com\apple\webobjects\JavaWebObjects\5.4.2
\JavaWebObjects-5.4.2.jar
\.m2\repository\com\apple\webobjects\JavaFoundation\5.4.2
\JavaFoundation-5.4.2.jar
\.m2\repository\com\apple\webobjects\JavaWOExtensions\5.4.2
\JavaWOExtensions-5.4.2.jar
ant.classpaths.wo.wolocalroot:
An empty file result in a full filesystem scan
ant.classpaths.wo.wosystemroot:
An empty file result in a full filesystem scan
ant.frameworks.user.home:
.m2\repository\com\apple\webobjects\JavaXML\5.4.2\JavaXML-5.4.2.jar
.m2\repository\com\apple\webobjects\JavaJDBCAdaptor\5.4.2
\JavaJDBCAdaptor-5.4.2.jar
.m2\repository\postgresql\postgresql\7.4.1-jdbc3\postgresql-7.4.1-
jdbc3.jar
.m2\repository\com\apple\webobjects\JavaEOAccess\5.4.2
\JavaEOAccess-5.4.2.jar
.m2\repository\javax\mail\mail\1.4.1\mail-1.4.1.jar
.m2\repository\com\apple\webobjects\JavaEOControl\5.4.2
\JavaEOControl-5.4.2.jar
.m2\repository\assense\shared\PostgreSQLPlugIn\1.5.4
\PostgreSQLPlugIn-1.5.4.jar
.m2\repository\javax\activation\activation\1.1\activation-1.1.jar
.m2\repository\com\apple\webobjects\JavaWebObjects\5.4.2
\JavaWebObjects-5.4.2.jar
.m2\repository\com\apple\webobjects\JavaFoundation\5.4.2
\JavaFoundation-5.4.2.jar
.m2\repository\com\apple\webobjects\JavaWOExtensions\5.4.2
\JavaWOExtensions-5.4.2.jar
ant.frameworks.wo.wolocalroot:
An empty file result in a full filesystem scan
This archive was generated by hypermail 2.0.0 : Tue Oct 14 2008 - 19:51:55 EDT