IBM Support

IV12395: SERVICELOADER LOSES CLASSPATH ORDER

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Error Message: There is one properties file for each Service,
    and the ServiceLoader will load the properties file line by
    line. The symptom is that the sequence of ServiceLoader.iterator
    is not guaranteed the same as the sequence in properties file.
    .
    Stack Trace: N/A
    .
    

Local fix

  • No workaround
    

Problem summary

  • The problem is that ServiceLoader uses a HashSet to store the
    classes which read from service properties file. The sequence of
    items in a HashSet is not the same as when putting them into the
    HashSet.
    

Problem conclusion

  • This defect will be fixed in:
    6.0.1 SR2
    6.0.0 SR11
    .
    Use an ArrayList to store the classes to ensure the sequence of
    ServiceLoader.iterator is the same as defined in properties
    file.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV12395

  • Reported component name

    JAVA CLASS LIBS

  • Reported component ID

    620700130

  • Reported release

    600

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2011-12-20

  • Closed date

    2011-12-23

  • Last modified date

    2012-07-02

  • 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

    JAVA CLASS LIBS

  • Fixed component ID

    620700130

Applicable component levels

  • R600 PSY

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCVQ3Y","label":"Java Class Libraries"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
02 July 2012