WebSphere JVM Access Violation Problem running Java program that calls methods in a Windows C++ DLL

Discussion in 'Java' started by adgarcia13, Jun 27, 2006.

  1. adgarcia13

    adgarcia13 Guest

    Greetings,

    Am having a problem running an Eclipse Java program in the IDE on
    Windows XP that calls Windows C++ methods in a Windows DLL via JNI. The
    JNI wrapper was developed using the SUN JVM. When we run the java
    program using the SUN JVM it all works well; when we attempt this using
    the JVM available with IBM Websphere 6.0.2.5 we have the following
    problem when we attempted to make the first C++ init method call:

    JVMDG217: Dump Handler is Processing Signal 11 - Please Wait.
    JVMDG303: JVM Requesting Java core file
    JVMDG304: Java core file written to
    C:\EclipseWorkspace\AppName\javacore.20060626.095514.392.txt

    and in the dump file found the following:

    NULL
    ------------------------------------------------------------------------
    0SECTION TITLE subcomponent dump routine
    NULL ===============================
    1TISIGINFO signal 11 received
    1TIDATETIME Date: 2006/06/26 at 09:55:32
    1TIFILENAME Javacore filename:
    D:\EclipseWorkspace\SQLParser\javacore.20060626.095532.392.txt
    NULL
    ------------------------------------------------------------------------
    0SECTION XHPI subcomponent dump routine
    NULL ==============================
    1XHEXCPCODE Exception code: C0000005 Access Violation
    1XHEXCPADDRESS Fault address: 1001F1C3 01:0001E1C3
    1XHEXCPMODULE Fault module:
    D:\IBM\WebSphere\AppServer\_jvm\jre\bin\classic\jvm.dll
    NULL
    1XHREGISTERS Registers:
    2XHREGISTER EAX:00000000
    2XHREGISTER EBX:05E552D4
    2XHREGISTER ECX:0032AB18
    2XHREGISTER EDX:05E553A0
    2XHREGISTER ESI:002B1998
    2XHREGISTER EDI:00000000
    2XHREGISTER CS:EIP:001B:1001F1C3
    2XHREGISTER SS:ESP:0023:0006FC48 EBP:00000000
    2XHREGISTER DS:0023 ES:0023 FS:003B GS:0000
    NULL
    1XHFLAGS Flags:00010246
    NULL
    NULL
    ------------------------------------------------------------------------
    0SECTION CI subcomponent dump routine
    NULL ============================
    1CIJAVAVERSION J2RE 1.4.2 IBM Windows 32 build cn142ifx-20051115 (SR3 +
    94164 + 97403 + 97482)
    1CIRUNNINGAS Running as a standalone JVM
    1CICMDLINE D:\IBM\WebSphere\AppServer\_jvm\bin\javaw.exe -classpath
    D:\EclipseWorkspace\SQLParser DSSqlParser.SqlParser
    1CIJAVAHOMEDIR Java Home Dir: D:\IBM\WebSphere\AppServer\_jvm\jre
    1CIJAVADLLDIR Java DLL Dir: D:\IBM\WebSphere\AppServer\_jvm\jre\bin
    1CISYSCP Sys Classpath:
    D:\IBM\WebSphere\AppServer\_jvm\jre\lib\core.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\graphics.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\security.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\server.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\xml.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\charsets.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmcertpathprovider.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjaasactivelm.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjaaslm.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjcefw.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjgssprovider.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjssefips.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjsseprovider.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmorb.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmorbapi.jar;D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmpkcs.jar
    1CIUSERARGS UserArgs:
    2CIUSERARG vfprintf 0x403000
    2CIUSERARG -Dinvokedviajava
    2CIUSERARG
    -Djava.class.path=D:\EclipseWorkspace\SQLParser
    2CIUSERARG vfprintf
    NULL
    1CIJVMMI JVM Monitoring Interface (JVMMI)
    NULL ------------------------
    2CIJVMMIOFF No events are enabled.
    NULL
    NULL
    ------------------------------------------------------------------------
    0SECTION DC subcomponent dump routine
    NULL ============================
    1DCHEADEREYE Header eye catcher DCST
    1DCHEADERLEN Header length 24
    1DCHEADERVER Header version 1
    1DCHEADERMOD Header modification 0
    2DCARRAYINFO 10 - index 9 signature S name short[] factor 2
    2DCARRAYINFO 11 - index 10 signature I name int[] factor 4
    2DCARRAYINFO 12 - index 11 signature J name long[] factor 8
    NULL
    ------------------------------------------------------------------------
    0SECTION DG subcomponent dump routine
    NULL ============================
    1DGTRCENABLED Trace enabled: Yes
    2DGTRCTYPE Trace: Internal
    2DGTRCBUFFERS Buffer specification: 8k
    2DGTRCBUFALLOC Buffers allocated: 0
    2DGTRCBUFUSED Buffers in use: 0
    1DGJDUMPBUFF Javadump buffer size (allocated): 2621440
    NULL
    ------------------------------------------------------------------------
    0SECTION ST subcomponent dump routine
    NULL ============================
    1STGCMODES Resettable GC: No
    1STGCMODES Concurrent GC: No
    1STCURHBASE Current Heap Base: 0x101801FC
    1STCURHLIM Current Heap Limit: 0x1057FBFC
    1STMWHBASE Middleware Heap Base: 0x101801FC
    1STMWHLIM Middleware Heap Limit: 0x1057FBFC
    1STGCHELPERS Number of GC Helper Threads: 0
    1STJVMOPTS -Xconcurrentlevel: 0
    1STJVMOPTS -Xconcurrentbackground: 0
    1STGCCTR GC Counter: 0
    1STAFCTR AF Counter: 0
    1STHEAPFREE Bytes of Heap Space Free: 2f2e40
    1STHEAPALLOC Bytes of Heap Space Allocated: 3ffa00
    1STSMBASE SM Base: 0x0
    1STSMEND SM End: 0x0
    1STPAMSTART PAM Start: 0x0
    1STPAMEND PAM End: 0x0
    1STCOMACTION Compact Action: 0
    NULL
    ------------------------------------------------------------------------
    0SECTION XE subcomponent dump routine
    NULL ============================
    1XETHRESHOLD MMI threshold for java methods is set to 2000
    1XEJITINIT JIT is initialized
    1XEJVMPIOFF JVMPI is not activated
    1XEJNITHRESH MMI threshold for JNI methods is set to 0
    1XETRCHIS Trace history length is set to 4
    1XEJITDUMP JIT dump routine is not yet implemented.
    NULL
    ------------------------------------------------------------------------
    0SECTION LK subcomponent dump routine
    NULL ============================
    NULL
    1LKPOOLINFO Monitor pool info:
    2LKPOOLINIT Initial monitor count: 32
    2LKPOOLEXPNUM Minimum number of free monitors before expansion: 5
    2LKPOOLEXPBY Pool will next be expanded by: 16
    2LKPOOLTOTAL Current total number of monitors: 32
    2LKPOOLFREE Current number of free monitors: 28
    NULL
    1LKMONPOOLDUMP Monitor Pool Dump (flat & inflated object-monitors):
    2LKMONINUSE sys_mon_t:0x0026FD30 infl_mon_t: 0x002B227C:
    3LKMONOBJECT java.lang.ref.Reference$Lock@10200598/102005A0:
    <unowned>
    3LKNOTIFYQ Waiting to be notified:
    3LKWAITNOTIFY "Reference Handler" (0x1D6FAA0)
    2LKMONINUSE sys_mon_t:0x0026FDC0 infl_mon_t: 0x002B22D4:
    3LKMONOBJECT java.lang.ref.ReferenceQueue$Lock@102002D0/102002D8:
    <unowned>
    3LKNOTIFYQ Waiting to be notified:
    3LKWAITNOTIFY "Finalizer" (0x1DF35E8)
    NULL
    1LKREGMONDUMP JVM System Monitor Dump (registered monitors):
    2LKREGMON JITC PIC Lock (0x01EB1448): <unowned>
    2LKREGMON JITC CHA lock (0x01E9B090): <unowned>
    2LKREGMON JITC MB UPDATE lock (0x026A0070): <unowned>
    2LKREGMON JITC Global_Compile lock (0x026A0020): <unowned>
    2LKREGMON Free Class Loader Cache Entry lock (0x002B4098):
    <unowned>
    NULL
    1LKOBJMONDUMP Java Object Monitor Dump (flat & inflated
    object-monitors):
    2LKINFLATEDMON java.lang.ref.ReferenceQueue$Lock@102002D0/102002D8
    3LKINFLDETAILS locknflags 80000400 Monitor inflated infl_mon
    0x002B22D4
    2LKINFLATEDMON java.lang.ref.Reference$Lock@10200598/102005A0
    3LKINFLDETAILS locknflags 80000200 Monitor inflated infl_mon
    0x002B227C
    NULL
    ------------------------------------------------------------------------
    0SECTION XM subcomponent dump routine
    NULL ============================
    NULL
    1XMCURTHDINFO Current Thread Details
    NULL ----------------------
    3XMTHREADINFO "main" (TID:0x101EB9B8, sys_thread_t:0x2B1B70,
    state:R, native ID:0xCBC) prio=5:
    pending=java.lang.NoClassDefFoundError
    4XESTACKTRACE at DSSqlParser.SqlParser.init(Native Method)
    4XESTACKTRACE at DSSqlParser.SqlParser.main(SqlParser.java:69)
    1XMTHDINFO All Thread Details
    NULL ------------------
    NULL
    2XMFULLTHDDUMP Full thread dump Classic VM (J2RE 1.4.2 IBM Windows 32
    build cn142ifx-20051115 (SR3 + 94164 + 97403 + 97482), native threads):
    3XMTHREADINFO "Finalizer" (TID:0x101EB8B0, sys_thread_t:0x1DF35E8,
    state:CW, native ID:0x4AC) prio=8
    4XESTACKTRACE at java.lang.Object.wait(Native Method)
    4XESTACKTRACE at
    java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)
    4XESTACKTRACE at
    java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:160)
    4XESTACKTRACE at
    java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:225)
    3XMTHREADINFO "Reference Handler" (TID:0x101EB908,
    sys_thread_t:0x1D6FAA0, state:CW, native ID:0xBB8) prio=10
    4XESTACKTRACE at java.lang.ref.Reference.process(Native
    Method)
    4XESTACKTRACE at
    java.lang.ref.Reference.access$300(Reference.java:50)
    4XESTACKTRACE at
    java.lang.ref.Reference$ReferenceHandler.run(Reference.java:130)
    3XMTHREADINFO "Signal dispatcher" (TID:0x101EB960,
    sys_thread_t:0x1DE63C8, state:R, native ID:0xD84) prio=5
    3XMTHREADINFO "main" (TID:0x101EB9B8, sys_thread_t:0x2B1B70,
    state:R, native ID:0xCBC) prio=5:
    pending=java.lang.NoClassDefFoundError
    4XESTACKTRACE at DSSqlParser.SqlParser.init(Native Method)
    4XESTACKTRACE at DSSqlParser.SqlParser.main(SqlParser.java:69)
    NULL
    ------------------------------------------------------------------------
    0SECTION CL subcomponent dump routine
    NULL ============================
    1CLCLASSPATH Classpath
    Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\core.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\graphics.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\security.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\server.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\xml.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\charsets.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmcertpathprovider.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjaasactivelm.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjaaslm.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjcefw.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjgssprovider.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjssefips.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmjsseprovider.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmorb.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmorbapi.jar),Z(D:\IBM\WebSphere\AppServer\_jvm\jre\lib\ibmpkcs.jar)
    1CLFLAGOLDJAVA Oldjava mode false
    1CLFLAGBOOTSTRP Bootstrapping false
    1CLFLAGVERBOSE Verbose class dependencies false
    1CLENUMVERIFY Class verification VERIFY_REMOTE
    1CLPNTRNAMECLLO Namespace to classloader 0x00000000
    1CLPNTRCLSEXT Extension loader 0x101EB830
    1CLPNTRSYSLOADR System classloader 0x101EB7B0
    1CLTEXTCLLOS Classloader summaries
    1CLTEXTCLLSS 12345678:
    1=primordial,2=extension,3=shareable,4=middleware,5=system,6=trusted,7=application,8=delegating
    2CLTEXTCLLOADER -----ta- Loader
    sun/misc/Launcher$AppClassLoader(0x01EAC960), Shadow 0x101EB7B0, Parent
    sun/misc/Launcher$ExtClassLoader(0x101EB830)
    3CLNMBRLOADEDCL Number of loaded classes 1
    3CLNMBRCACHECLS Number of cached classes 259
    3CLHEXDALLOCTIO Allocation used for loaded classes 1
    3CLHEXDPCKGEOWN Package owner 0x101EB7B0
    2CLTEXTCLLOADER -xh-st-- Loader
    sun/misc/Launcher$ExtClassLoader(0x01EA20D0), Shadow 0x101EB830, Parent
    *none*(0x00000000)
    3CLNMBRLOADEDCL Number of loaded classes 0
    3CLNMBRCACHECLS Number of cached classes 0
    3CLHEXDALLOCTIO Allocation used for loaded classes 3
    3CLHEXDPCKGEOWN Package owner 0x101EB830
    2CLTEXTCLLOADER p-h-st-- Loader *System*(0x00361F20), Shadow
    0x00000000
    3CLNMBRLOADEDCL Number of loaded classes 306
    3CLNMBRCACHECLS Number of cached classes 306
    3CLHEXDALLOCTIO Allocation used for loaded classes 3
    3CLHEXDPCKGEOWN Package owner 0x00000000
    1CLTEXTCLLOD ClassLoader loaded classes
    2CLTEXTCLLOAD Loader
    sun/misc/Launcher$AppClassLoader(0x01EAC960)
    3CLTEXTCLASS DSSqlParser/SqlParser(0x101DF0E0)
    2CLTEXTCLLOAD Loader
    sun/misc/Launcher$ExtClassLoader(0x01EA20D0)
    2CLTEXTCLLOAD Loader *System*(0x00361F20)
    3CLTEXTCLASS java/io/DataOutput(0x002DA068)
    3CLTEXTCLASS sun/net/www/URLConnection(0x01E76898)
    3CLTEXTCLASS
    com/ibm/jvm/io/FileOutputStream(0x002DC2D8)
    3CLTEXTCLASS
    java/util/Hashtable$EmptyIterator(0x002D4758)
    3CLTEXTCLASS java/lang/ClassLoader(0x002D29A8)
    3CLTEXTCLASS java/lang/Comparable(0x002D0738)
    NULL
    ------------------------------------------------------------------------
    0SECTION Javadump End section
    1DGJDUMP Javadump Buffer Usage Information
    NULL =================================
    2DGJDUMPALLOC Javadump buffer size (allocated): 2621440
    2DGJDUMPUSED Javadump buffer size (used) : 34558
    NULL ---------------------- END OF DUMP
    -------------------------------------

    Any help is appreciated.

    ADG13
     
    adgarcia13, Jun 27, 2006
    #1
    1. Advertising

  2. adgarcia13

    Chris Uppal Guest

    adgarcia13 wrote:

    > Am having a problem running an Eclipse Java program in the IDE on
    > Windows XP that calls Windows C++ methods in a Windows DLL via JNI. The
    > JNI wrapper was developed using the SUN JVM. When we run the java
    > program using the SUN JVM it all works well; when we attempt this using
    > the JVM available with IBM Websphere 6.0.2.5 we have the following
    > problem when we attempted to make the first C++ init method call:


    The dump file doesn't mean a thing to me, but one small suggestion is that you
    may be making false assumptions about JNI which the Sun JVM either doesn't care
    about or does care, but doesn't check. The IBM JVMs' implementations
    of -Xcheck:jni is more helpful than the Sun one (it found a false assumption in
    my own JNI code), so it might be helpful to run with that turned on.

    -- chris
     
    Chris Uppal, Jun 28, 2006
    #2
    1. Advertising

  3. On 27 Jun 2006 10:00:38 -0700, adgarcia13 wrote:
    > Am having a problem running an Eclipse Java program in the IDE on
    > Windows XP that calls Windows C++ methods in a Windows DLL via JNI.
    > The JNI wrapper was developed using the SUN JVM. When we run the
    > java program using the SUN JVM it all works well; when we attempt
    > this using the JVM available with IBM Websphere 6.0.2.5 we have the
    > following problem when we attempted to make the first C++ init
    > method call:


    Signal 11 on Unix would indicate a segmentation fault, I don't know if
    it's something similar on Windows.

    Since the dump indicates a pending "NoClassDefFoundError" in
    SqlParser.init(), I'll take a guess and suggest that you failed to
    check the return value from FindClass() or similar JNI API function
    before proceeding to use the value in a subsequent call.

    /gordon

    --
    [ do not email me copies of your followups ]
    g o r d o n + n e w s @ b a l d e r 1 3 . s e
     
    Gordon Beaton, Jun 28, 2006
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Young-Jin Lee

    MS JVM and Sun JVM problem

    Young-Jin Lee, Jan 20, 2004, in forum: Java
    Replies:
    3
    Views:
    593
    Mickey Segal
    Jan 21, 2004
  2. Doug Trammell

    JNI Access Violation in jvm.dll

    Doug Trammell, Mar 4, 2004, in forum: Java
    Replies:
    5
    Views:
    8,284
    Chris Uppal
    Mar 5, 2004
  3. Naresh Agarwal

    jvm.dll vs java.dll

    Naresh Agarwal, Jun 14, 2005, in forum: Java
    Replies:
    5
    Views:
    3,867
  4. Dundonald
    Replies:
    1
    Views:
    491
    Daniel Pitts
    Dec 21, 2007
  5. newbie

    JBoss -> Websphere calls

    newbie, Mar 10, 2008, in forum: Java
    Replies:
    0
    Views:
    279
    newbie
    Mar 10, 2008
Loading...

Share This Page