org.apache.axis.utils.cache.ClassCache not caching classes
----------------------------------------------------------
Key: AXIS-2852
URL: https://issues.apache.org/jira/browse/AXIS-2852
Project: Axis
Issue Type: Bug
Components: Basic Architecture
Affects Versions: 1.2, 1.3, 1.4, 1.5
Environment: Any
Reporter: Francis Hitchens
org.apache.axis.utils.cache.ClassCache.lookup() is used to locate service
classes cached in the classes internal HashMap, classCache. If a class is not
found, then lookup() calls ClassUtils.forName() to load the service class. The
service class is then returned to lookup() and stored in another cache in the
JavaClass object.
At no point is the service class added to the ClassCache HashMap classCache.
Consequently every single Web Service request, needs to call the class loader
to load and instantiate a service object. Under light load this is not
noticeable. Under heavy load on a WebLogic server this behaviour leads to the
JEE container filling up with threads stuck on "waiting for monitor entry" on
the ClassUtils.forName() call as the class loader thread is synchronized .
ClassCache.lookup() needs to be modified to add the service class to the
classCache HashMap.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]