PO01456: CLASSCASTEXCEPTION OCCURS WHEN IMPLEMENTING CUSTOM WORKRESOLVER THAT IMPLEMENTS THE WORKRESOLVER INTERFACE

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as fixed if next.

Error description

  • The class curam\core\sl\impl\DefaultWorkResolverHelper.java has
    a method instantiateDefaultWorkResolver(). This method reads
    the configured work resolver class name from property file, and
    returns an instance of the same.  However, instead of casting
    to interface type, it tries to cast to an implementation type:
    
    try { workResolver =
    (DefaultWorkResolver)Class.forName(workResolverName).
    newInstance(); }
    
    Also the return type is of type DefaultWorkResolver instead of
    the interface curam.util.workflow.impl.WorkResolver. As a
    result, if a customer implements their own work resolver which
    implements the WorkResolver interface, the cast fails, and the
    benefit of defining an interface and configuring a custom
    implementation class in the property file is lost.
    

Local fix

  • Extend the out of box "DefaultWorkResolver" class and override
    the required methods (resolveWork()).  Although not the
    documented pattern, this should ensure that the custom logic
    will be invoked and should mitigate against the class cast
    exceptions being seen.
    

Problem summary

  • CLASSCASTEXCEPTION OCCURS WHEN IMPLEMENTING CUSTOM WORKRESOLVER
    THAT IMPLEMENTS THE WORKRESOLVER INTERFACE
    

Problem conclusion

  • 6.0.5.3
    The workflow documentation specifies that the recommended way
    for a client to add a custom work resolver is to extend the
    provided "curam.core.sl.impl.DefaultWorkResolverAdapter" class
    and add the logic to resolve the work into that custom class.
    However, due to an issue in a work resolver helper class used
    throughout the application logic, this recommended
    customization pattern could not be used easily without the need
    to override other classes which called work resolver functions.
    This issue with the work resolver helper class has now been
    resolved which now allows the documented pattern to add a
    custom work resolver class to be implemented more easily.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PO01456

  • Reported component name

    CURAM SOCIAL PG

  • Reported component ID

    5725H2600

  • Reported release

    604

  • Status

    CLOSED FIN

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-06-28

  • Closed date

    2014-02-19

  • Last modified date

    2014-02-19

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

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

Modules/Macros

  • TEC
    

Fix information

Applicable component levels

  • R605 PSY

       UP



Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

Cúram Social Program Management

Software version:

604

Reference #:

PO01456

Modified date:

2014-02-19

Translate my page

Machine Translation

Content navigation