> On 10.02.2016, at 16:46, Johann Werner <[email protected]> wrote:
> 
> Hi Markus,
> 
> perhaps a mix of different WO versions? That old app using WO 5.3, 5.2, … and 
> installed on the OS X machine 5.4? The field _EOGlobalModelLock comes from 
> the WO jars or should be as it is not found apparently.
> 
> jw


Yes, that was it. App was compiled/linked against 5.2.3 but the OS X the 
customer had installed had 5.4.2 in /System/Library/Frameworks. Had to put the 
older Frameworks someplace and edit the startup script inside .woa to define 
WOROOT properly. The default script tests against OS name, finds Darwin, and 
hardcodes /System/Library/Frameworks

Thanks for your tips, problem solved, customer happy, me happy, too :-)
Owe you a beer in Montréal

---markus---

> 
> 
>> Am 10.02.2016 um 16:24 schrieb Markus Ruggiero <[email protected]>:
>> 
>> 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/jw%40oyosys.com
>> 
>> This email sent to [email protected]
> 


 _______________________________________________
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