XCode v Eclipse problem with WO WebServices development
XCode v Eclipse problem with WO WebServices development
- Subject: XCode v Eclipse problem with WO WebServices development
- From: Des Oates <email@hidden>
- Date: Wed, 26 Jan 2005 01:33:48 +0000
I'm wondering if there is anyone who can point me in the direction of where I'm going wrong here.
I'm trying to get a Web Services server project running using WOLips and Eclipse. I've got a very simple project that publishes the Calculator class from Apple's example documentation as a test project. The Application's constructor simply calls super() and this method:
private void initWebServices () {
NSLog.out.appendln("Initializing WebServices...");
WOWebServiceRegistrar.registerWebService(Calculator.class, true);
}
With the XCode project it compiles and runs fine. I can view the generated wsdl when the server is running. However with the Eclipse project I get lots of NoClassDefFoundErrors at runtime like the one shown below
<x-tad-bigger>[2005-01-26 00:26:47 GMT] <main> java.lang.NoClassDefFoundError: org/apache/axis/AxisFault</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at java.lang.Class.forName0(Native Method)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at java.lang.Class.forName(Class.java:141)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.webservices.generation._WSRuleUtilities.class$(_WSRuleUtilities.java:34)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.webservices.generation._WSRuleUtilities.<clinit>(_WSRuleUtilities.java:39)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at java.lang.Class.forName0(Native Method)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at java.lang.Class.forName(Class.java:141)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.foundation._NSUtilities._classWithPartialName(_NSUtilities.java:307)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.foundation._NSUtilities.classWithName(_NSUtilities.java:291)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.foundation.NSBundle.initPrincipalClass(NSBundle.java:2555)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.foundation.NSBundle.InitPrincipalClasses(NSBundle.java:711)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.foundation.NSBundle.<clinit>(NSBundle.java:369)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.appserver._private.WOProperties.initUserDefaultsKeys(WOProperties.java:179)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.appserver.WOApplication._initWOApp(WOApplication.java:5046)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.appserver.WOApplication.<init>(WOApplication.java:553)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at Application.<init>(Application.java:15)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at java.lang.reflect.Constructor.newInstance(Constructor.java:274)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at java.lang.Class.newInstance0(Class.java:308)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at java.lang.Class.newInstance(Class.java:261)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.appserver.WOApplication.main(WOApplication.java:323)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at Application.main(Application.java:11)
</x-tad-bigger>Looking at this trace log, it looks like the AxisFault class is not on the classpath, but both projects include an identical set of 12 WO frameworks and nothing else. These are:
JavaWebServicesGeneration
JavaWebServicesSupport
JavaFoundation
JavaEOControl
JavaEOAccess
JavaWebObjects
JavaWOExtensions
JavaXML
JavaDTWGeneration
JavaDirectoToWeb
JavaEOProject
JavaJDBCAdaptor
So my first question is to figure out why the axis library is being found by XCode, but not Eclipse.
Then, it I then add the axis.jar and the saaj.jar to the Eclipse project I get another error as shown in this trace:
<x-tad-bigger>Initializing WebServices...</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger>[2005-01-26 01:00:27 GMT] <main> A fatal exception occurred: null</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger>[2005-01-26 01:00:27 GMT] <main> java.lang.NoClassDefFoundError</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at org.apache.axis.utils.XMLUtils.<clinit>(XMLUtils.java:76)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.appserver.WOWebServiceRegistrar.setUpDeploymentDocument(WOWebServiceRegistrar.java:46)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at com.webobjects.appserver.WOWebServiceRegistrar.<clinit>(WOWebServiceRegistrar.java:38)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at Application.initWebServices(Application.java:23)</x-tad-bigger><x-tad-bigger>
</x-tad-bigger><x-tad-bigger> at Application.<init>(Application.java:18)</x-tad-bigger>
which kinda baffles me because the class (org.apache.axis.utils.XMLUtils) is in the axis jar, which is in the classpath.
Can anyone think of any reason why this would happen, or suggest any pointers. Is it a properties problem?
Thanks
Des
Environment Spec:
Mac OS X 10.3.7
Eclipse 3.0.0
WOLips 1.1.0.90
XCode 1.5
IDE 389.0
Core 387.0
ToolSupport 372.0
_______________________________________________
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