DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14457>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14457 NoClassDefFoundError: ServletContext using jdk1.4.1 for Axis clients Summary: NoClassDefFoundError: ServletContext using jdk1.4.1 for Axis clients Product: Axis Version: 1.0 Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: Other Component: Serialization/Deserialization AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Axis clients that run without "servlet.jar" get NoClassDefFoundError: ServletContext when using jdk1.4.1. This didn't happen with jdk1.3.1. It looks like the method EngineConfigurationFactoryFinder.newFactory has specific handling code for NoClassDefFoundErrors at line 227 (Axis 1.0), but using 1.4, the error occurs slightly early, at line 214 where there is no handler. I presume this is due to a difference in class loading in 1.4. A work-around for 1.4 appears to be to include "servlet.jar" along with any client code. Here's the stack for the failure. Using 1.3, the handler at line 224 would have just logged the problem. Exception in thread "main" java.lang.NoClassDefFoundError: javax/servlet/ServletContext [Loaded java.lang.StackTraceElement from /home/billg/jdk1.4.1/jre/lib/rt.jar] at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:1627) at java.lang.Class.getMethod0(Class.java:1746) at java.lang.Class.getDeclaredMethod(Class.java:1233) at org.apache.commons.discovery.tools.ClassUtils.findPublicStaticMethod (ClassUtils.java:112) at org.apache.axis.configuration.EngineConfigurationFactoryFinder.newFactory (EngineConfigurationFactoryFinder.java:214) at org.apache.axis.configuration.EngineConfigurationFactoryFinder.access$300 (EngineConfigurationFactoryFinder.java:92)