Wiki source code of Java Client - Trouble-Shooting

Last modified by Lazy Lazarus on 2025/03/28 23:05

Hide last authors
David Avendasora 14.1 1 = Server-Side Errors =
David Avendasora 10.1 2
David Avendasora 14.1 3 === Server exception: Unable to perform the server invocation: The method clientSideRequestGetXMLs was not found. ===
4
David Avendasora 18.1 5 {{noformat}}
David Avendasora 12.1 6
7 [2008-6-23 15:1:0 EDT] <WorkerThread0> Server exception: Unable to perform the server invocation: The method clientSideRequestGetXMLs was not found.
8 [2008-6-23 15:1:0 EDT] <WorkerThread0> java.lang.IllegalArgumentException: Unable to perform the server invocation: The method clientSideRequestGetXMLs was not found.
Lazy Lazarus 21.1 9 at com.webobjects.eodistribution.common._EOServerInvocation.doInvokeWithTarget(_EOServerInvocation.java:128)
10 at com.webobjects.eodistribution.EODistributionContext._processClientRequest(EODistributionContext.java:494)
11 at com.webobjects.eodistribution.EODistributionContext.responseToClientMessage(EODistributionContext.java:582)
12 at com.webobjects.eodistribution.WOJavaClientComponent.handleClientRequest(WOJavaClientComponent.java:1148)
13 at com.webobjects.eodistribution.WOJavaClientComponent.invokeAction(WOJavaClientComponent.java:445)
14 at com.webobjects.appserver._private.WOComponentReference.invokeAction(WOComponentReference.java:127)
15 at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105)
16 at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115)
17 at com.webobjects.appserver.WOComponent.invokeAction(WOComponent.java:1079)
18 at com.webobjects.appserver.WOSession.invokeAction(WOSession.java:1357)
19 at com.webobjects.appserver.WOApplication.invokeAction(WOApplication.java:1745)
20 at com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedPage(WOComponentRequestHandler.java:206)
21 at com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedSession(WOComponentRequestHandler.java:298)
22 at com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedApplication(WOComponentRequestHandler.java:332)
23 at com.webobjects.appserver._private.WOComponentRequestHandler._handleRequest(WOComponentRequestHandler.java:369)
24 at com.webobjects.appserver._private.WOComponentRequestHandler.handleRequest(WOComponentRequestHandler.java:442)
25 at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1687)
26 at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
27 at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
28 at java.lang.Thread.run(Thread.java:613)
David Avendasora 12.1 29
David Avendasora 18.1 30 {{/noformat}}
David Avendasora 12.1 31
David Avendasora 16.1 32 This error is generated at application startup when you have the wojavaclient.jar loading prior to the regular WO Frameworks - specifically JavaEOApplication.framework.
David Avendasora 14.1 33
34 = Client-Side Errors =
David Avendasora 18.1 35
36 === java.lang.NoClassDefFoundError ===
37
38 {{noformat}}
39
40 Exception in thread "AWT-EventQueue-0" com.webobjects.foundation.NSForwardException [java.lang.NoClassDefFoundError] com/company/myapp/common/MyClass:java.lang.NoClassDefFoundError: com/company/myapp/common/MyClass
Lazy Lazarus 21.1 41 at com.webobjects.foundation.NSForwardException._runtimeExceptionForThrowable(NSForwardException.java:39)
42 at com.webobjects.eodistribution.common._EOReferenceRecordingCoder$_Decoder.decodeObject(_EOReferenceRecordingCoder.java:769)
43 at com.webobjects.eodistribution.common._EOReferenceRecordingCoder.decodeObject(_EOReferenceRecordingCoder.java:611)
44 at com.webobjects.eodistribution.common._EOReferenceRecordingCoder.decodeObjects(_EOReferenceRecordingCoder.java:649)
45 at com.webobjects.foundation.NSArray.decodeObject(NSArray.java:1326)
46 at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
47 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
48 at java.lang.reflect.Method.invoke(Method.java:585)
49 at com.webobjects.eodistribution.common._EOReferenceRecordingCoder$_Decoder.decodeObject(_EOReferenceRecordingCoder.java:767)
50 at com.webobjects.eodistribution.common._EOReferenceRecordingCoder.decodeObject(_EOReferenceRecordingCoder.java:611)
51 at com.webobjects.eodistribution.common._EOServerReturnValue.decodeObject(_EOServerReturnValue.java:65)
52 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
53 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
54 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
55 at java.lang.reflect.Method.invoke(Method.java:585)
David Avendasora 18.1 56 ... (truncated for clarity)
57 Caused by: java.lang.NoClassDefFoundError: com/company/myapp/common/MyClass
Lazy Lazarus 21.1 58 at java.lang.ClassLoader.defineClass1(Native Method)
59 at java.lang.ClassLoader.defineClass(ClassLoader.java:675)
60 at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
61 at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
62 at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
63 at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
David Avendasora 18.1 64 ... (truncated for clarity)
65
66 {{/noformat}}
67
68 If the client-side application is complaining about not being able to find classes that are part of a framework when run from within Eclipse, it means the the ClasspathClient.txt is missing classpath entries. This file is not automatically maintained by WOLips (yet). Any frameworks that you import into your project must have a corrosponding entry formatted as follows:
69
Lazy Lazarus 21.1 70 {{noformat}}
71 APPROOT/WebServerResources/Java/MyFramework.jar
72 {{/noformat}}
David Avendasora 18.1 73
Lazy Lazarus 21.1 74 {{note title="WOROOT path"}}
David Avendasora 18.1 75 Don't use the WOROOT path of the framework (WOROOT/Library/Frameworks/MyFramework.framework/WebServerResources/Java/MyFramework.jar)
76 because this is only valid for the core WebObjects frameworks. Any other frameworks (yours, Wonder, etc) need to be located in the APPROOT.
77 {{/note}}
Lazy Lazarus 21.1 78
79 {{warning}}
80 **Deployment**
81
82 When deploying keep in mind you must not use the full sized WebObjects frameworks/jar files. These are meant for the server side.
83
84 For client deployment always use the jar files located within theĀ ##WebServerResources## directory of the frameworks. This will save from quite some errors.
85 {{/warning}}
86
87