IBM Support

PM40139: ClassCastException com.ibm.javart.util.FacesUtil$HandlersDefined InView when Websphere shared-session-context is enabled

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Environment:
    
     - Product name (Build ID or version/patch level):
    IBM rational Business Developer version 8.0.1
    
    Reproducible Y/N: Y
    
    Description of problem:
    
    
    When shared-session-context value='true' in
    ibm-application-ext.xmi, the following error is raised on
    Websphere Application Server version 7.0 when running an EGL JSF
    application:
    
    Caused by: java.lang.ClassCastException:
    com.ibm.javart.util.FacesUtil$HandlersDefinedInView incompatible
    with com.ibm.javart.util.FacesUtil$HandlersDefinedInView
        at
    com.ibm.javart.util.FacesUtil.markHandlerBeanForRemovalOnPageTra
    nsition(FacesUtil.java:1006)
        at
    com.ibm.javart.resources.JSFHandler._startPage(JSFHandler.java:1
    196)
        at jsfhandlers.c_005fspakim.?init?(c_005fspakim.java:179)
        at java.lang.J9VMInternals.newInstanceImpl(Native Method)
        at java.lang.Class.newInstance(Class.java:1325)
        at
    com.sun.faces.mgbean.BeanBuilder.newBeanInstance(BeanBuilder.jav
    a:190)
    
    This happens only with EGL JSF handlers using
    cancelOnPageTransition = yes and shared-session-context
    value='true'.
    
    handler Page1 type JSFHandler
    ????{onConstructionFunction = onConstruction,
    ???? onPrerenderFunction = onPrerender,
    ???? view = 'Page1.jsp',
    ???? viewRootVar = viewRoot,cancelOnPageTransition = yes}
    
    Steps to reproduce:
    
    1) Create 2 EGL JSF projects in the same EAR
    2) in both project, create a new JSF page with
    cancelOnPageTransition = yes
    3) set shared-session-context value='true' in
    ibm-application-ext.xmi
    2) add the EAR to WAS 7.0
    3) Run on server page MyEGLWebPrj1\WebContent\Page1.jsp =? no
    problem
    4) Run on server page MyEGLWebPrj2\WebContent\Page1.jsp =? page
    is displayed but error can be found on the WAS console
    
    
    Workaround:
    
    When possible, set cancelOnPageTransition = no
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    Users Affected
    - RBD 8.0.X user who is using shared session setting and
    cancelOnPageTransition
    
    Problem Description
    - when shared-session-context value="true" in
    ibm-application-ext.xmi, the following error is raised on
    Websphere Application Server version 7.0 when running an EGL
    JSF application with cancelOnPageTransition:
    Caused by: java.lang.ClassCastException:
    com.ibm.javart.util.FacesUtil$HandlersDefinedInView
    incompatible with
    com.ibm.javart.util.FacesUtil$HandlersDefinedInView
        at
    com.ibm.javart.util.FacesUtil.markHandlerBeanForRemovalOnPag
    eTransition(FacesUtil.java:1006)
        at
    com.ibm.javart.resources.JSFHandler._startPage(JSFHandler.ja
    va:1196)
        at
    jsfhandlers.c_005fspakim.?init?(c_005fspakim.java:179)
        at java.lang.J9VMInternals.newInstanceImpl(Native
    Method)
        at java.lang.Class.newInstance(Class.java:1325)
        at
    com.sun.faces.mgbean.BeanBuilder.newBeanInstance(BeanBuilder
    .java:190)
    

Problem conclusion

  • in the old version, it directly did the conversion, it is
    fine when not sharing the session, but has problem when
    sharing the session, it need to first check the type, then
    do the conversion.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM40139

  • Reported component name

    RATL BUS DEV

  • Reported component ID

    5724S5000

  • Reported release

    801

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2011-05-26

  • Closed date

    2011-07-28

  • Last modified date

    2011-07-28

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    RATL BUS DEV

  • Fixed component ID

    5724S5000

Applicable component levels

  • R801 PSN

       UP

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSMQ79","label":"Rational Business Developer"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.0.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
28 July 2011