Dashboard > WebObjects > ... > Java Client > Java Client - Trouble-Shooting
  WebObjects Log In View a printable version of the current page.  
  Java Client - Trouble-Shooting
Added by David Avendasora, last edited by David Avendasora on Jun 23, 2008  (view change)
Labels: 
(None)

Server-Side Errors

Server exception: Unable to perform the server invocation: The method clientSideRequestGetXMLs was not found.

[2008-6-23 15:1:0 EDT] <WorkerThread0> Server exception: Unable to perform the server invocation: The method clientSideRequestGetXMLs was not found.
[2008-6-23 15:1:0 EDT] <WorkerThread0> java.lang.IllegalArgumentException: Unable to perform the server invocation: The method clientSideRequestGetXMLs was not found.
	at com.webobjects.eodistribution.common._EOServerInvocation.doInvokeWithTarget(_EOServerInvocation.java:128)
	at com.webobjects.eodistribution.EODistributionContext._processClientRequest(EODistributionContext.java:494)
	at com.webobjects.eodistribution.EODistributionContext.responseToClientMessage(EODistributionContext.java:582)
	at com.webobjects.eodistribution.WOJavaClientComponent.handleClientRequest(WOJavaClientComponent.java:1148)
	at com.webobjects.eodistribution.WOJavaClientComponent.invokeAction(WOJavaClientComponent.java:445)
	at com.webobjects.appserver._private.WOComponentReference.invokeAction(WOComponentReference.java:127)
	at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105)
	at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115)
	at com.webobjects.appserver.WOComponent.invokeAction(WOComponent.java:1079)
	at com.webobjects.appserver.WOSession.invokeAction(WOSession.java:1357)
	at com.webobjects.appserver.WOApplication.invokeAction(WOApplication.java:1745)
	at com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedPage(WOComponentRequestHandler.java:206)
	at com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedSession(WOComponentRequestHandler.java:298)
	at com.webobjects.appserver._private.WOComponentRequestHandler._dispatchWithPreparedApplication(WOComponentRequestHandler.java:332)
	at com.webobjects.appserver._private.WOComponentRequestHandler._handleRequest(WOComponentRequestHandler.java:369)
	at com.webobjects.appserver._private.WOComponentRequestHandler.handleRequest(WOComponentRequestHandler.java:442)
	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:613)

This error is generated at application startup when you have the wojavaclient.jar loading prior to the regular WO Frameworks - specifically JavaEOApplication.framework.

Client-Side Errors

java.lang.NoClassDefFoundError

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
	at com.webobjects.foundation.NSForwardException._runtimeExceptionForThrowable(NSForwardException.java:39)
	at com.webobjects.eodistribution.common._EOReferenceRecordingCoder$_Decoder.decodeObject(_EOReferenceRecordingCoder.java:769)
	at com.webobjects.eodistribution.common._EOReferenceRecordingCoder.decodeObject(_EOReferenceRecordingCoder.java:611)
	at com.webobjects.eodistribution.common._EOReferenceRecordingCoder.decodeObjects(_EOReferenceRecordingCoder.java:649)
	at com.webobjects.foundation.NSArray.decodeObject(NSArray.java:1326)
	at sun.reflect.GeneratedMethodAccessor4.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:767)
	at com.webobjects.eodistribution.common._EOReferenceRecordingCoder.decodeObject(_EOReferenceRecordingCoder.java:611)
	at com.webobjects.eodistribution.common._EOServerReturnValue.decodeObject(_EOServerReturnValue.java:65)
	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)
        ... (truncated for clarity)
Caused by: java.lang.NoClassDefFoundError: com/company/myapp/common/MyClass
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:675)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        ... (truncated for clarity)

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:

APPROOT/WebServerResources/Java/MyFramework.jar
Be Careful

Don't use the WOROOT path of the framework (WOROOT/Library/Frameworks/MyFramework.framework/WebServerResources/Java/MyFramework.jar)
because this is only valid for the core WebObjects frameworks. Any other frameworks (yours, Wonder, etc) need to be located in the APPROOT.

Site powered by a free Open Source Project / Non-profit License (more) of Confluence - the Enterprise wiki.
Learn more or evaluate Confluence for your organisation.
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.4 Build:#809 Jun 12, 2007) - Bug/feature request - Contact Administrators