Rant: Why I hate Java Client
Rant: Why I hate Java Client
- Subject: Rant: Why I hate Java Client
- From: "Pierce T. Wetter III" <email@hidden>
- Date: Wed, 20 Feb 2008 13:13:03 -0700
So I get this backtrace (see below).
So this is some sort of config problem, brought on somehow by the fact
that I've moved all the .jar cruft we had hanging out in /Library/Java/
Extensions into a framework. It looks like the server is forwarding
some sort of EOGeneralAdaptorException to the client which might have
had useful information in it but client has no idea how to unarchive
it because for some reason it can't access eocasses, so it then throws
a completely different exception on the client side.
Debugging all this is like being put into a straightjacket,
handcuffed, gagged, thrown into a pit, and then asked to make a full
course dinner.
Plus none of this stuff works for me from Eclipse, because no one ever
got around to porting it fully to Eclipse when they moved the rest of
the projects over.
Meanwhile, the Support folks are whining, because I lowered the boom
and told them Java Client was going away, so they have to adjust to an
app that isn't just a thin coat of paint over Direct2JavaClient and
actually come up with a specification for what all they use this piece
of shit for.
I've spent 40 hours over the last 2 weeks fighting with this stupid
thing. It takes me about an hour to build a screen in the new app that
will replace this crap.
Pierce
Exception in thread "AWT-EventQueue-0"
com.webobjects.foundation.NSForwardException for
java.lang.NoClassDefFoundError: com/webobjects/eoaccess/
EOGeneralAdaptorException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at
com
.webobjects
.foundation._NSUtilities._classWithPartialName(_NSUtilities.java:307)
at
com.webobjects.foundation._NSUtilities.classWithName(_NSUtilities.java:
291)
at
com
.webobjects
.eodistribution
.client
.EODistributedClassDescription
.decodeObject(EODistributedClassDescription.java:434)
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:585)
at com.webobjects.eodistribution.common._EOReferenceRecordingCoder
$_Decoder.decodeObject(_EOReferenceRecordingCoder.java:704)
at
com
.webobjects
.eodistribution
.common
._EOReferenceRecordingCoder
.decodeObject(_EOReferenceRecordingCoder.java:551)
at
com.webobjects.eocontrol.EOKeyGlobalID.decodeObject(EOKeyGlobalID.java:
187)
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:585)
at com.webobjects.eodistribution.common._EOReferenceRecordingCoder
$_Decoder.decodeObject(_EOReferenceRecordingCoder.java:704)
at
com
.webobjects
.eodistribution
.common
._EOReferenceRecordingCoder
.decodeObject(_EOReferenceRecordingCoder.java:551)
at
webobjectsexamples
.authentication
.common.AuthenticationInfo.decodeObject(AuthenticationInfo.java:82)
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:585)
at com.webobjects.eodistribution.common._EOReferenceRecordingCoder
$_Decoder.decodeObject(_EOReferenceRecordingCoder.java:704)
at
com
.webobjects
.eodistribution
.common
._EOReferenceRecordingCoder
.decodeObject(_EOReferenceRecordingCoder.java:551)
at
com
.webobjects
.eodistribution
.common._EOServerReturnValue.decodeObject(_EOServerReturnValue.java:62)
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:585)
at com.webobjects.eodistribution.common._EOReferenceRecordingCoder
$_Decoder.decodeObject(_EOReferenceRecordingCoder.java:704)
at
com
.webobjects
.eodistribution
.common
._EOReferenceRecordingCoder
.decodeObject(_EOReferenceRecordingCoder.java:551)
at
com
.webobjects
.eodistribution
.common
._EOReferenceRecordingCoder
.decodeObjects(_EOReferenceRecordingCoder.java:587)
at com.webobjects.foundation.NSArray.decodeObject(NSArray.java:1309)
at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
at
sun
.reflect
.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.webobjects.eodistribution.common._EOReferenceRecordingCoder
$_Decoder.decodeObject(_EOReferenceRecordingCoder.java:704)
at
com
.webobjects
.eodistribution
.common
._EOReferenceRecordingCoder
.decodeObject(_EOReferenceRecordingCoder.java:551)
at
com
.webobjects
.eodistribution
.client.EOHTTPChannel._responseToMessage(EOHTTPChannel.java:533)
at
com
.webobjects
.eodistribution
.client.EOHTTPChannel.responseToMessage(EOHTTPChannel.java:603)
at
com
.webobjects
.eodistribution
.client
.EODistributedObjectStore
.invokeStatelessRemoteMethodWithKeyPath(EODistributedObjectStore.java:
1099)
at
webobjectsexamples
.authentication
.client.AuthenticationCenter.loginUser(AuthenticationCenter.java:228)
at
webobjectsexamples
.authentication.client.LoginController.ok(LoginController.java:91)
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:585)
at com.webobjects.foundation.NSSelector.invoke(NSSelector.java:354)
at
com
.webobjects.foundation.NSSelector._safeInvokeSelector(NSSelector.java:
108)
at
com
.webobjects
.eoapplication
._EOInvocationUtilities
.invokeInstanceMethodWithoutParametersOnObjectIfImplemented
(_EOInvocationUtilities.java:141)
at com.webobjects.eoapplication.EOAction
$_ControllerHierarchy.actionPerformed(EOAction.java:1953)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1882)
at javax.swing.AbstractButton
$Handler.actionPerformed(AbstractButton.java:2202)
at
javax
.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:
420)
at
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at
javax
.swing
.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:
236)
at java.awt.Component.processMouseEvent(Component.java:5602)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
at java.awt.Component.processEvent(Component.java:5367)
at java.awt.Container.processEvent(Container.java:2010)
at java.awt.Component.dispatchEventImpl(Component.java:4068)
at java.awt.Container.dispatchEventImpl(Container.java:2068)
at java.awt.Component.dispatchEvent(Component.java:3903)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:
4256)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:
3936)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3866)
at java.awt.Container.dispatchEventImpl(Container.java:2054)
at java.awt.Window.dispatchEventImpl(Window.java:1791)
at java.awt.Component.dispatchEvent(Component.java:3903)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at
java
.awt
.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:
269)
at
java
.awt
.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:
190)
at
java
.awt
.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:
180)
at java.awt.Dialog$1.run(Dialog.java:535)
at java.awt.Dialog$2.run(Dialog.java:563)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:561)
at java.awt.Component.show(Component.java:1302)
at java.awt.Component.setVisible(Component.java:1255)
at
com
.webobjects
.eoapplication
.EODisplayUtilities._activateWindow(EODisplayUtilities.java:1966)
at
com
.webobjects
.eoapplication
.EODisplayUtilities.activateWindow(EODisplayUtilities.java:1985)
at
com
.webobjects
.eoapplication
.EOSimpleWindowController.activateWindow(EOSimpleWindowController.java:
232)
at
com
.webobjects
.eoapplication
.EOModalDialogController.activateWindow(EOModalDialogController.java:
145)
at
com
.webobjects
.eoapplication
.EOSimpleWindowController
.componentDidBecomeVisible(EOSimpleWindowController.java:386)
at
com
.webobjects
.eoapplication
.EOComponentController.setVisible(EOComponentController.java:1489)
at
com
.webobjects
.eoapplication
.EOComponentController
.showInSupercontroller(EOComponentController.java:1627)
at
com
.webobjects
.eoapplication
.EOComponentController.makeVisible(EOComponentController.java:1535)
at
com
.webobjects
.eoapplication
.EOSimpleWindowController.makeVisible(EOSimpleWindowController.java:406)
at
com
.webobjects
.eogeneration
.EOControllerFactory
.performTaskWithController(EOControllerFactory.java:354)
at
com
.webobjects
.eogeneration
.EOControllerFactory
._activateDefaultControllers(EOControllerFactory.java:782)
at
com
.webobjects
.eogeneration
.EOControllerFactory
.activateDefaultControllers(EOControllerFactory.java:792)
at
com
.webobjects
.eogeneration
.EODynamicApplication.finishInitialization(EODynamicApplication.java:
107)
at com.webobjects.eoapplication.EOApplication
$1.run(EOApplication.java:512)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at
java
.awt
.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:
269)
at
java
.awt
.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:
190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:
176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
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