IBM Support

IV12603: JVM FAILS TO LOAD WITH ISO8859-2/15 ENCODINGS

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

APAR status

  • Closed as program error.

Error description

  • Error Message: java -Dos.encoding=ISO8859-2 -version
    Exception in thread 'main' java/lang/ExceptionInInitializerError
    at java/lang/J9VMInternals.initialize (J9VMInternals.java:255)
    at java/nio/ByteBuffer.allocateDirect (ByteBuffer.java:306)
    at sun/io/CharToByteSingleByte.createCopy
    (CharToByteSingleByte.java:570
    )
    at sun/io/CharToByteISO8859_2.<clinit>
    (CharToByteISO8859_2.java:164)
    at java/lang/J9VMInternals.initializeImpl (Native Method)
    at java/lang/J9VMInternals.initialize (J9VMInternals.java:233)
    at java/lang/Class.forNameImpl (Native Method)
    at java/lang/Class.forName (Class.java:137)
    at sun/io/Converters.getConverterClass (Converters.java:288)
    at sun/io/Converters.newConverter (Converters.java:338)
    at sun/io/CharToByteConverter.getConverter
    (CharToByteConverter.java:98)
    at java/lang/StringCoding.makeEncoder (StringCoding.java:190)
    at java/lang/StringCoding$EncoderCache$1.run
    (StringCoding.java:253)
    at java/security/AccessController.doPrivileged
    (AccessController.java:25
    4)
    at java/lang/StringCoding$EncoderCache.getEncoder
    (StringCoding.java:250
    )
    at java/lang/StringCoding.getEncoder (StringCoding.java:440)
    at java/lang/StringCoding.encode (StringCoding.java:582)
    at java/lang/String.getBytes (String.java:686)
    at com/ibm/oti/util/Util.<clinit> (Util.java:21)
    at java/lang/J9VMInternals.initializeImpl (Native Method)
    at java/lang/J9VMInternals.initialize (J9VMInternals.java:233)
    at java/lang/System.getPropertyList (Native Method)
    at java/lang/System.ensureProperties (System.java:259)
    at java/lang/System.<clinit> (System.java:64)
    at java/lang/J9VMInternals.initializeImpl (Native Method)
    at java/lang/J9VMInternals.initialize (J9VMInternals.java:233)
    at java/lang/ClassLoader.initializeClassLoaders
    (ClassLoader.java:83)
    at java/lang/Thread.initialize (Thread.java:339)
    at java/lang/Thread.<init> (Thread.java:137)
    java/lang/NullPointerException
    at java/nio/Bits.unaligned (Bits.java:626)
    at java/nio/DirectByteBuffer.<clinit> (DirectByteBuffer.java:55)
    at java/lang/J9VMInternals.initializeImpl (Native Method)
    at java/lang/J9VMInternals.initialize (J9VMInternals.java:233)
    at java/nio/ByteBuffer.allocateDirect (ByteBuffer.java:306)
    at sun/io/CharToByteSingleByte.createCopy
    (CharToByteSingleByte.java:570
    )
    at sun/io/CharToByteISO8859_2.<clinit>
    (CharToByteISO8859_2.java:164)
    at java/lang/J9VMInternals.initializeImpl (Native Method)
    at java/lang/J9VMInternals.initialize (J9VMInternals.java:233)
    at java/lang/Class.forNameImpl (Native Method)
    at java/lang/Class.forName (Class.java:137)
    at sun/io/Converters.getConverterClass (Converters.java:288)
    at sun/io/Converters.newConverter (Converters.java:338)
    at sun/io/CharToByteConverter.getConverter
    (CharToByteConverter.java:98)
    at java/lang/StringCoding.makeEncoder (StringCoding.java:190)
    at java/lang/StringCoding$EncoderCache$1.run
    (StringCoding.java:253)
    at java/security/AccessController.doPrivileged
    (AccessController.java:25
    4)
    at java/lang/StringCoding$EncoderCache.getEncoder
    (StringCoding.java:250
    )
    at java/lang/StringCoding.getEncoder (StringCoding.java:440)
    at java/lang/StringCoding.encode (StringCoding.java:582)
    at java/lang/String.getBytes (String.java:686)
    at com/ibm/oti/util/Util.<clinit> (Util.java:21)
    at java/lang/J9VMInternals.initializeImpl (Native Method)
    at java/lang/J9VMInternals.initialize (J9VMInternals.java:233)
    at java/lang/System.getPropertyList (Native Method)
    at java/lang/System.ensureProperties (System.java:259)
    at java/lang/System.<clinit> (System.java:64)
    at java/lang/J9VMInternals.initializeImpl (Native Method)
    at java/lang/J9VMInternals.initialize (J9VMInternals.java:233)
    at java/lang/ClassLoader.initializeClassLoaders
    (ClassLoader.java:83)
    at java/lang/Thread.initialize (Thread.java:339)
    at java/lang/Thread.<init> (Thread.java:137)
    JVMJ9VM015W Initialization error for library jclse7b_26(14):
    JVMJ9VM009E J9VMDll
    Main failed
    Error: Could not create the Java Virtual Machine.
    Error: A fatal exception has occurred. Program will exit.
    .
    Stack Trace: N/A
    .
    

Local fix

Problem summary

  • With these encodings, during the JVM load time initiliazation of
    encoding specific classes happens and they were trying to get
    the system architechture property value which is not available
    by that time in the system property table and the value returned
    is NULL. When this value is compared against the known
    architechture names using String.equals(), this throws NPE as
    the string used to compare is a NULL string
    

Problem conclusion

  • This defect will be fixed in:
    7.0.0 SR1
    .
    Architechture property will be available in the system property
    table when the JVM is completely loaded. So this property value
    is queried only after the JVM is loaded completely
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV12603

  • Reported component name

    JAVA CLASS LIBS

  • Reported component ID

    620700130

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-01-02

  • Closed date

    2012-01-05

  • Last modified date

    2012-01-05

  • 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

  • R700 PSY

       UP



Document information

More support for: Runtimes for Java Technology
Java Class Libraries

Software version: 700

Reference #: IV12603

Modified date: 05 January 2012