A customer of mine has a very old WebObjects app running on an old Sun Solaris 
box. The app was built on WindowsXP with Project Builder. No Wonder anywhere to 
be seen.

We are trying to get this app (the xyz.woa) up and running on a MacMini OS X 
10.9.5. We have both Java 1.6 and Java 8 available. We succeeded to start the 
app via Monitor. The default Main shows but the app fails with the following 
exception when the code tries to execute this line:

loggedUser = (ZpdUser)EOUtilities.objectMatchinKeyAncValue(ec, "ZpdUser", 
"sUserId", userId);


Exception logging in User: com.webobjects.foundation.NSForwardException 
[java.lang.NoSuchFieldError] _EOGlobalModelLock:java.lang.NoSuchFieldError: 
_EOGlobalModelLock
com.webobjects.foundation.NSForwardException [java.lang.NoSuchFieldError] 
_EOGlobalModelLock:java.lang.NoSuchFieldError: _EOGlobalModelLock
        at 
com.webobjects.foundation.NSForwardException._runtimeExceptionForThrowable(NSForwardException.java:39)
        at 
com.webobjects.foundation.NSSelector._safeInvokeMethod(NSSelector.java:124)
        at 
com.webobjects.foundation.NSNotificationCenter$_Entry.invokeMethod(NSNotificationCenter.java:588)
        at 
com.webobjects.foundation.NSNotificationCenter.postNotification(NSNotificationCenter.java:532)
        at 
com.webobjects.foundation.NSNotificationCenter.postNotification(NSNotificationCenter.java:562)
        at 
com.webobjects.eocontrol.EOObjectStoreCoordinator.requestStore(EOObjectStoreCoordinator.java:223)
        at 
com.webobjects.eocontrol.EOObjectStoreCoordinator.objectStoreForFetchSpecification(EOObjectStoreCoordinator.java:287)
        at 
com.webobjects.eocontrol.EOObjectStoreCoordinator.objectsWithFetchSpecification(EOObjectStoreCoordinator.java:476)
        at 
com.webobjects.eocontrol.EOEditingContext.objectsWithFetchSpecification(EOEditingContext.java:4069)
        at 
com.webobjects.eocontrol.EOEditingContext.objectsWithFetchSpecification(EOEditingContext.java:4444)
        at 
com.webobjects.eoaccess.EOUtilities.objectsMatchingValues(EOUtilities.java:216)
        at 
com.webobjects.eoaccess.EOUtilities.objectsMatchingKeyAndValue(EOUtilities.java:190)
        at 
com.webobjects.eoaccess.EOUtilities.objectMatchingKeyAndValue(EOUtilities.java:320)
        at LoginUser.login(LoginUser.java:51)
        at DirectAction._doLogin(DirectAction.java:42)
        at DirectAction.zpdGuestLoginAction(DirectAction.java:31)
        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.webobjects.appserver.WODirectAction.performActionNamed(WODirectAction.java:144)
        at 
com.webobjects.appserver._private.WOActionRequestHandler._handleRequest(WOActionRequestHandler.java:259)
        at 
com.webobjects.appserver._private.WOActionRequestHandler.handleRequest(WOActionRequestHandler.java:158)
        at 
com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1687)
        at 
com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
        at 
com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
        at java.lang.Thread.run(Thread.java:695)
Caused by: java.lang.NoSuchFieldError: _EOGlobalModelLock
        at ZpdDB$UnbrokenEOModel.entityNamed(ZpdDB.java:41)
        at 
com.webobjects.eoaccess.EOModelGroup.entityNamed(EOModelGroup.java:493)
        at 
com.webobjects.eoaccess.EODatabaseContext._cooperatingObjectStoreNeeded(EODatabaseContext.java:1169)
        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.webobjects.foundation.NSSelector._safeInvokeMethod(NSSelector.java:122)

The very same code running against the same database works from Solaris. I have 
currently no easy access to the source (somewhere on a XP Machine). Any idea 
what could be wrong? For a test the customer has copied the xyz.woa directory 
to a different Sun workstation (where Apple WebObjects runtime has been 
installed) and tried it there with the very same exception. So it looks as if 
we miss something in the environment setup. Question is: What?

Background: The customer has once (>4 years ago) asked me to port the 
application to the modern world but then cancelled the project. And now the old 
Solaris box is dying and the customer desparately needs a replacement 
deployment environment. About a dozen apps have been moved over from Soalris to 
OS X with no problem (all Wonder), just this baby refuses to work (no Wonder - 
pun intended). And of course we have no time now to Wonderize, recompile, and 
test things.

Thanks for any hints
---markus---


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to