Hi Filip,
Thanks a lot for your time and letting me know the reason.
Thanks,
A Srivani.
-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On
Behalf Of Filip Hanik - Dev Lists
Sent: Tuesday, May 09, 2006 11:02 PM
To: Tomcat Users List
Subject: Re: classloader problem
Hi A Srivani,
I this is not a problem with tomcat, instead it is a problem with your
deployment.
You are putting commons-discovery.jar, and this JAR file is storing a
reference to the webapp classloader.
When the app is reloaded, the old webapp classloader gets invalidated,
and a new one is created.
but since you put the the JAR in shared/lib that instance doesn't get
reloaded, and is now holding a reference to the wrong classloader.
This is simple a deployment problem, the correct way to deploy it is to
have it in WEB-INF/lib or fix the commons-discovery code.
Filip
A srivani wrote:
> Hi Maarten,
>
> Thanks for your reply. I tried by keeping axis.jar in common/lib
> directory
> of tomcat, but it didn't work for me. BTW, in my jdk library there is
no
> axis.jar. Could you please suggest me any other way of solving the
> problem.
>
> Thanks,
> A Srivani.
>
>
> On 5/2/06, MW Janssen <[EMAIL PROTECTED]> wrote:
>>
>> he,
>>
>> i had the same problem...what i did was removing axis.jar from my jdk
>> libary
>> directory and put it just in common/lib directory of tomcat (not in
>> WE-INF-lib). SO in fact its there once on my server, and then it
works
>> great.
>>
>> Maarten
>>
>>
>>
>> -Oorspronkelijk bericht-
>> Van: A srivani [mailto:[EMAIL PROTECTED]
>> Verzonden: dinsdag 2 mei 2006 8:54
>> Aan: users@tomcat.apache.org
>> Onderwerp: Fwd: classloader problem
>>
>> -- Forwarded message --
>> From: A srivani <[EMAIL PROTECTED]>
>> Date: May 2, 2006 12:16 PM
>> Subject: Re: classloader problem
>> To: [EMAIL PROTECTED]
>>
>> Hi there,
>>
>> http://www.mail-archive.com/users@tomcat.apache.org/msg07773.html
>>
>> I am facing similar problem as in above link.
>>
>> In my webapplication axis is used to connect webservices. If the
>> axis.jaris
>> in WEB-INF/lib I can reload my app and everything is fine.
>> But when I moved axis.jar to CATALINA_HOME/shared/lib to shrink the
size
>> of
>> my war file I get a NullPointerException (stack trace follows) when
the
>> application has been reloaded and I try to connect to a service. The
>> application runs fine until I try to connect to a webservice. What
could
>> be
>> the reason for this?
>>
>> I surfed the forums related to the problem and found that some are
>> suggesting to make reloadable=true in server.xml.But it is not
possible
>> for
>> me.
>>
>>
>>
>> Thanks in advance.
>> A Srivani.
>>
>>
>>
>> *java.lang.NullPointerException
>>at
>>
org.apache.catalina.loader.WebappClassLoader.findResources(WebappClassLo
>> ader.java:956)
>> *at java.lang.ClassLoader.getResources(ClassLoader.java
:1015)
>>at
>>
org.apache.commons.discovery.jdk.JDK12Hooks.getResources(JDK12Hooks.java
>> :150)
>>at
>>
org.apache.commons.discovery.resource.DiscoverResources$1.getNextResourc
>> es(DiscoverResources.java :153)
>>at
>>
org.apache.commons.discovery.resource.DiscoverResources$1.getNextResourc
>> e(DiscoverResources.java:129)
>>at
>>
org.apache.commons.discovery.resource.DiscoverResources$1.hasNext(Discov
>> erResources.java:116)
>>at
>>
org.apache.commons.discovery.resource.names.DiscoverNamesInFile$1.getNex
>> tClassNames(DiscoverNamesInFile.java:
>> 186)
>>at
>>
org.apache.commons.discovery.resource.names.DiscoverNamesInFile$1.getNex
>> tClassName(DiscoverNamesInFile.java:1
>> 70)
>>at
>>
org.apache.commons.discovery.resource.names.DiscoverNamesInFile$1.hasNex
>> t(DiscoverNamesInFile.java:157)
>>at
>>
org.apache.commons.discovery.resource.names.NameDiscoverers$1.getNextIte
>> rator(NameDiscoverers.java:143)
>>at
>>
org.apache.commons.discovery.resource.names.NameDiscoverers$1.hasNext(Na
>> meDiscoverers.java:126)
>>at
>>
org.apache.commons.discovery.resource.classes.ResourceClassDiscoverImpl$
>> 1.getNextResource(ResourceClassDiscov
>> erImpl.java:159)
>>at
>>
org.apache.commons.discovery.resource.classes.ResourceClassDiscoverImpl$
>> 1.hasNext(ResourceClassDiscoverImpl.j
>> ava:147)
>>at
>>
org.apache.axis.configuration.EngineConfigurationFactoryFinder$1.run(Eng
>> ineConfigurationFactoryFinder.java:12
>> 0)
>>at java.security.AccessController.doPrivileged(Native Method)
>>at
>>
org.apache.axis.configuration.EngineConfigurationFactoryFinder.newFactor
>> y(EngineConfigurationFactoryFinder.ja
>> va:113)
>>at
>>
org.apache.axis.configuration.EngineConfigurationFactoryFinder.newFactor
>> y(EngineConfigurationFactoryFinder.ja
>> va:160)
>>at
>> org.apache.axis.client.Service.getEngineConfiguration
(Service.java:812)
>>at
>> org.apache.axis.client.Service.getAxisClient(Service.java:103)
>>at org.apache.