PQ71236: CLASSLOADER CACHEABLECOMMANDIMPL.EXECUTE SHOULD DETECT CLASSCASTEXCEPTION

 Fixes are available

5.0.1: WebSphere Application Server Version 5.0 Fix Pack 1 (Version 5.0.1)
5.0.1: WebSphere Application Server Enterprise Edition Version 5.0 Fix Pack 1



APAR status
Closed as program error.

Error description
This is for WAS 5 defect 159007

CacheableCommandImpl.execute should detect ClassCastException
due to application reload and serialize/deserialize the
command output to correct the classloader change
Reported by Commerce Suite

<Note by bkmartin (Martin, Brian K.), 2003/02/14 11:51:27,
seq: 2 rel: 0  action: note>
com.ibm.websphere.command.CommandException.Current exception:
Message: null
Stack trace:
com.ibm.websphere.command.CommandException
com.ibm.websphere.command.CacheableCommandImpl.execute
CacheableCommandImpl.java:) at
com.ibm.commerce.accesscontrol.policymanager.PolicyManagerImpl.
getParent OrganizationsForResource(PolicyManagerImpl.java:624)
 com.ibm.commerce.accesscontrol.policymanager.
 PolicyManagerImpl.isAllowed (PolicyManagerImpl.java:736)
 at com.ibm.commerce.accesscontrol.AccManager.isAllowed
 (AccManager.java:367) at
 com.ibm.commerce.accesscontrol.AccManager.isActionAllowed
 (AccManager.java:237)
com.ibm.commerce.accesscontrol.AccManager.canUserExecuteCommand
(AccManager.java:128)
com.ibm.commerce.command.AbstractECCommand.accessControlCheck
(AbstractECCommand.java:73)
com.ibm.commerce.command.AbstractECCommand.execute
(AbstractECCommand.java:215)
com.ibm.commerce.webcontroller.JspExecUnit.execute
(JspExecUnit.java:85) at
com.ibm.commerce.webcontroller.WebController.executeTransaction
(WebController.java:215)
com.ibm.commerce.webcontroller.WebController.processRequest
(WebController.java:865)
com.ibm.commerce.adapter.AbstractHttpAdapter.processRequest
(AbstractHttp Adapter.java:308)
 com.ibm.commerce.server.RequestServlet$2.run
 (RequestServlet.java:1419)         at
com.ibm.commerce.server.RequestServlet.service
(RequestServlet.java:1469)
       at javax.servlet.http.HttpServlet.service
       (HttpServlet.java:853)

com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied
(ServletWrapper.java:243)
    com.ibm.ws.cache.servlet.CacheHook.handleFragment
    (CacheHook.java:219)
  com.ibm.ws.cache.servlet.CacheHook.handleServlet
  (CacheHook.java:127)
  com.ibm.ws.cache.servlet.ServletWrapper.service
  (ServletWrapper.java:225)
  com.ibm.ws.webcontainer.servlet.
 StrictServletInstance.doService(StrictServletInstance.java:110
 at com.ibm.ws.webcontainer.servlet
.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174
  com.ibm.ws.webcontainer.servlet.IdleServletState.service
 (StrictLifecycleServlet.java:313)
 com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service
 StrictLifecycleServlet.java:116)
 com.ibm.ws.webcontainer.servlet.ServletInstance.service
 (ServletInstance.java:258)
  com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.
 dispatch(ValidServletReferenceState.java:42)
  com.ibm.ws.webcontainer.servlet.ServletInstanceReference
 .dispatch(ServletInstanceReference.java:40)
  com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter
 (WebAppFilterChain.java:76)
 com.ibm.commerce.dynacache.filter.CacheFilter.doFilter
(CacheFilter.java:379)
     at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter
(FilterInstanceWrapper.java:132)
 om.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter
(WebAppFilterChain.java:71)
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher
.handleWebAppDispatch(WebAppRequestDispatcher.java:863)
       at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.
dispatch(WebAppRequestDispatcher.java:491)
       at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher
.orward(WebAppRequestDispatcher.java:173)
       at
com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward
(WebAppInvoker.java:79)
Local fix Problem summary
****************************************************************
* USERS AFFECTED: WebSphere Application Server v5 application  *
*                 developers who use command caching           *
****************************************************************
* PROBLEM DESCRIPTION: CacheableCommandImpl.execute should     *
*                      detect ClassCastExceptions              *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
A ClassCastException is thrown when a cache hit is executed
after the application is restarted.  The exception is thrown
because the class was loaded by a previous version of the
application classloader.  CacheableCommandImp.execute should
detect and handle a ClassCastException.
Problem conclusion
Dynacache will now catch and handle a ClassCastException in
the CacheableCommandImpl.execute() method and
serialized/deserialized the command output to correct the
classloader change.
Temporary fix
WAS_Dynacache_03-14-2003_5.0.0_cumulative_Test
Comments
APAR information
APAR number PQ71236
Reported component name WAS BASE 5.0
Reported component ID 5630A3600
Reported release 00W
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Special Attention NoSpecatt
Submitted date 2003-02-20
Closed date 2003-03-18
Last modified date 2003-03-18

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros
CACHEMGT          

Publications Referenced

Fix information

Applicable component levels
R003 PSY    UP
R00A PSY    UP
R00H PSY    UP
R00I PSY    UP
R00S PSY    UP
R00W PSY    UP


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > General
Operating system(s):
Software version: 00W
Software edition:
Reference #: PQ71236
IBM Group: Software Group
Modified date: Mar 18, 2003