Wiki source code of Java Client - Trouble-Shooting
Last modified by Lazy Lazarus on 2025/03/28 23:05
Hide last authors
author | version | line-number | content |
---|---|---|---|
![]() |
14.1 | 1 | = Server-Side Errors = |
![]() |
10.1 | 2 | |
![]() |
14.1 | 3 | === Server exception: Unable to perform the server invocation: The method clientSideRequestGetXMLs was not found. === |
4 | |||
![]() |
18.1 | 5 | {{noformat}} |
![]() |
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. | ||
![]() |
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) | ||
![]() |
12.1 | 29 | |
![]() |
18.1 | 30 | {{/noformat}} |
![]() |
12.1 | 31 | |
![]() |
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. |
![]() |
14.1 | 33 | |
34 | = Client-Side Errors = | ||
![]() |
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 | ||
![]() |
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) | ||
![]() |
18.1 | 56 | ... (truncated for clarity) |
57 | Caused by: java.lang.NoClassDefFoundError: com/company/myapp/common/MyClass | ||
![]() |
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) | ||
![]() |
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 | |||
![]() |
21.1 | 70 | {{noformat}} |
71 | APPROOT/WebServerResources/Java/MyFramework.jar | ||
72 | {{/noformat}} | ||
![]() |
18.1 | 73 | |
![]() |
21.1 | 74 | {{note title="WOROOT path"}} |
![]() |
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}} | ||
![]() |
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 |