Starting with WTP0.7RC2 driver (after switching to
Axis 1.2.1), creating bottom-up Web service using Axis runtime on Tomcat
4.1 does not work. You'll run into the following exception:
Unable to create WSDL from Java
After you hit this error, if you try to go thru a BU-Java scenario with
Tomcat 5.0, it will fail with a similar exception. Bottom line is, once
this error, that's it, you can no longer create botton-up Web service.
You need to
restart Eclipse WTP.
This problem does not occur with Tomcat 5.0. Things
will continue to work until you do a Axis on Tomcat 4.1
We isolated the problem due to classloading
behaviour in Axis 1.2.1 (please see the defect for more detail). I'll
be opening an Axis defect for this. In the meanwhile, we workaround
the problem by not passing in mail.jar and activation.jar in the classpath
variable we pass to Axis
verified that this change only affect the classpath variable used to set
the classpath for Axis Java2WSDLAxisAnt.
I've tested this fix with Tomcat 4.0, 4.1, 5.0 and 5.5 and the Web services
scenarios work fine.
Please discuss, vote, or feel
free to ask any further follow up questions.
The development contact is Kathy Chan, kathy@xxxxxxxxxx.
Rational Studio Java Web Services, IBM Toronto Lab
D3-354, D3/R8V/8200/MKM, 8200 Warden Avenue, Markham, Ontario, Canada,
kathy@xxxxxxxxxx, (905) 413-3022, tieline: 969-6038, fax: (905) 413-4920
----- Forwarded by Kathy
Chan/Toronto/IBM on 27/07/2005 02:32 PM -----
Chris Brealey/Toronto/IBM@IBMCA Sent by: wtp-dev-bounces@xxxxxxxxxxx
27/07/2005 01:27 PM
Please respond to
"General discussion of project-wide or architectural issues."
[wtp-dev] Fw: [Bug 105335]
Axis on Tomcat 4.1 does not work
A heads up: Bug 105335 opened by Jeff represents a critical issue between
Axis 1.2.1 and Tomcat 4.1. We will have to fix this somehow before releasing
WTP 0.7. We are working on this and are hopeful of making a cheap and tactical
fix as described by Jeff in the bug. Worst case is we revert to Axis 1.1.
Cheers - CB.
Senior Advisory Technical Manager, Rational Java Web Services, IBM Canada
D3-275, D3/ENX/8200/MKM, 8200 Warden Avenue, Markham, Ontario, Canada,
cbrealey@xxxxxxxxxx, 905.413.6038, tieline:969.6038, fax:905.413.4920
----- Forwarded by Chris Brealey/Toronto/IBM on 07/27/2005 01:21 PM -----
------- Additional Comments From jeffliu@xxxxxxxxxx 2005-07-27 12:48
The problem is that when the WS wizard invokes the Java2WSDLAxisAnt task,
task itself will construct an AntClassLoader around the classpath that
wizard passes into the task.
In a Tomcat 4.1 scenario, the classpath contains activation.jar and mail.jar,
whereas, in a Tomcat 5.0 scenario, the classpath does NOT contain the two
After the AntClassLoader is constructed, Axis will CACHE this classloader
class call ClassUtils. Later on, when the TypeMappingRegistry is initialized,
the TypeMappingRegistry will determine whether type mapping for attachment
needed. The way this is determined is by calling:
Of course this returns true because ClassUtils uses the CACHED AntClassLoader,
which has activation.jar and mail.jar on its classpath. So the
TypeMappingRegistry will go ahead and initialize the type mapping for
attachment. However, in the attachment type mapping's initialization method,
Since Class.forName("...") will go to the Eclipse class loader,
which does not
have activation.jar and mail.jar on its classpath. A NoClassDefFoundError
being thrown. This exception propagates back to the WS wizard and the wizard
throws up an error dialog. IMHO, this is a bug in Axis. However, we are
that need to workaround it.....
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee._______________________________________________
wtp-dev mailing list