JR41095: CMVC 214802 - RESOLVE THE WRONG ELF CLASS: ELFCLASS64 ERROR WITH WEBSPHERE COMMERCE UTILTIES ON SOLARIS.

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • WebSphere Commerce utilities (scripts) that make database
    connections will fail on Solaris with 64bit DB and 64bit
    WebSphere Application Server.
    
    For customer using Oracle, the error would appear like so:
    
    java.lang.UnsatisfiedLinkError:
    /app/oracle/product/11.2.0/client/lib/libocijdbcll.so: ld.so.l:
    java: fatal:
    /app/oracle/product/11.2.0/client/lib/libocijdbcll.so: wrong ELF
     class: ELFCLASS64 (Possible cause: architecture word width
    mismatch)
    
    For customers using DB2, the error would appear like so:
    
    com.ibm.db2.jcc.am.SqlException: [jcc][10389][12245][4.11.77]
    Failure in loading native library db2jcct2,
    java.lang.UnsatisfiedLinkError:
    /opt/IBM/db2/V9.7/lib64/libdb2jcct2.so.1: ld.so.1: java: fatal:
    /opt/IBM/db2/V9.7/lib64/libdb2jcct2.so.1: wrong ELF class:
    ELFCLASS64 (Possible cause: architecture word width mismatch):
    ERRORCODE=-4472, SQLSTATE=null
    
    This impacts higher level processes that call/execute these
    tools, such as fix pack install, which calls updatedb.sh.
    

Local fix

  • Manually edit the failing script.  Find the line that executes
    the java command and add ' -d64 ' to the java command line.
    This is a flag that forces the Java virtual machine to run in 64
    bit mode.
    
    Here are sample instructions
    1)  Make a backup of the utility script
    2)  Open the script a text editor
    3)  Find the line that executes Java.  To find it search for
    "JAVA_EXE"
    4)  Add " -d64 " to the java command line
    5)  Save the file and exit
    6)  Make sure the owner and permissions of the file are not
    changed
    
    Example 1 of changing the Java command line:
    
      Change from this:
      ${JAVA_EXE?} \
        -Dwas.install.root="$WAS_HOME" \
    
      To this:
      ${JAVA_EXE?} \
        -d64
        -Dwas.install.root="$WAS_HOME" \
    
    Example 2 of changing the Java command line:
    
      Change from this:
      ${JAVA_EXE?} $JVMPROPERTIES
    
      To this:
      ${JAVA_EXE?} -d64 $JVMPROPERTIES
    

Problem summary

  • USERS AFFECTED:
    Who: Any customer on WC V7 (GM and higher) on
    Solaris with WAS-64bit and a 64-bit DB client
    When: attempting to install a fix pak, run database utilities
    
    PROBLEM ABSTRACT:
    Error when running WebSphere Commerce utilities on Solaris with
    DB2:  wrong ELF class: ELFCLASS64
    
    BUSINESS IMPACT:
    Delays implementation
    
    RECOMMENDATION:
    

Problem conclusion

  • The Solaris JVM runs in 32bit mode unless a specific JVM
    argument is passed.  While running in 32bit mode it fails when
    it attempts to load the 64bit DB client libraries.  WebSphere
    Application Server sets up an environment variable
    $JVM_EXTRA_CMD_ARGS that specifies the required JVM argument
    '-d64'.  The fix for this issue is to standardize the way that
    the $JVM_EXTRA_CMD_ARGS environment variable is used when
    executing the Java command in WebSphere Commerce utilities.
    With that change the '-d64' Java virtual machine argument is
    used when needed.
    
    -------------------------------------------------------------
    The latest available maintenance information can be obtained
    from the Recommended Fixes for WebSphere Commerce technote:
    http://www.ibm.com/support/docview.wss?rs=3046&uid=swg21261296
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR41095

  • Reported component name

    WC BUS EDITION

  • Reported component ID

    5724I3800

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    YesSpecatt / Installability

  • Submitted date

    2011-11-02

  • Closed date

    2011-11-14

  • Last modified date

    2013-04-16

  • 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

    WC BUS EDITION

  • Fixed component ID

    5724I3800

Applicable component levels

  • R700 PSY

       UP



Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

WebSphere Commerce Enterprise

Software version:

7.0

Reference #:

JR41095

Modified date:

2013-04-16

Translate my page

Machine Translation

Content navigation