You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-dev@ws.apache.org by Chanoch Wiggers <Ch...@wrox.com> on 2002/01/25 19:54:05 UTC

broken support for jdk1.1.8 and earlier

Hi, have seen some reported problems for support of soap 2.2 for jdk 1.1.8
and earlier on both 9X and red hat. This appears to be as a result of a call
to getClassLoader() which returns a null to represent the system class
loader in earlier jdks as allowed by the specs.

to circumvent that I've added a line to check for this and try the system
class loader via the static method in the ClassLoader class. I also added a
check for null at the end where the setServletClassLoaderInContext() method
is called.

i've included a diff below for the changes - it's a hack, I am not sure the
significance of not storing a class loader:


118,123d117
<     //getClassLoader() may return null to represent the root or system
class loader (noticeably on 1.1.8 and earlier)
<     if(servletClassLoader == null) {
<       // get system class loader - this method is allowed to return null
too (see added check below)
<       servletClassLoader = ClassLoader.getSystemClassLoader();
<     }
<
180,181c174
<     if(servletClassLoader != null) {
<       ServerHTTPUtils.setServletClassLoaderIntoContext(servletContext,
---
>     ServerHTTPUtils.setServletClassLoaderIntoContext(servletContext,
183d175
<     }