EXCEPTION_FLT_STACK_CHECK in jre1.6.0_01 with JNI

I have developed an application to manage a note acceptor. The manufacturer provided me a dll to communicate the device but my application is written in Java, so I developed the corresponding JNI to send the commands and obtain the answers.
On the other hand, the dll sends some events to indicate the status of the device, so I developed the corresponding inverse JNI to allow the Java application to do the corresponding operations when an event occurs.
If I use j2sdk1.4.2_05 I have no problem, but with jre1.6.0_01 application crashes and I obtain a file with the information bellow, even when events from C arrive to Java. Any idea?
# An unexpected error has been detected by Java Runtime Environment:
# EXCEPTION_FLT_STACK_CHECK (0xc0000092) at pc=0x0097ce69, pid=2964, tid=3168
# Java VM: Java HotSpot(TM) Client VM (1.6.0-b105 mixed mode)
# Problematic frame:
# v ~RuntimeStub::resolve_opt_virtual_call
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
--------------- T H R E A D ---------------
Current thread (0x0b4e4800): JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@1b59919" [_thread_in_Java, id=3168]
siginfo: ExceptionCode=0xc0000092, ExceptionInformation=0x00000000 0x1bf6ec24
Registers:
EAX=0x06b33dc0, EBX=0x06b33dc0, ECX=0x02a39810, EDX=0x02ed16d0
ESP=0x1bf6ebb8, EBP=0x1bf6ecc8, ESI=0x06ab0848, EDI=0x00b0d6a0
EIP=0x0097ce69, EFLAGS=0x00010216
Top of Stack: (sp=0x1bf6ebb8)
0x1bf6ebb8: ffff1372 ffff0000 ffffffff 0095b55f
0x1bf6ebc8: 00c7001b 1bf6f6c4 ffff0023 6d937fbe
0x1bf6ebd8: 00000000 085e0000 085e0000 1bc00000
0x1bf6ebe8: 0b419400 0000085e 6788943c 0001003f
0x1bf6ebf8: 9b000000 0b3fa308 1ba1eecc eed8eed0
0x1bf6ec08: 00001ba1 0732003f 00000000 c0000000
0x1bf6ec18: 00004000 00000000 3ffec000 0b486f6c
0x1bf6ec28: 00000005 02a394c8 02a395e0 6d7d7e75
Instructions: (pc=0x0097ce69)
0x0097ce59: 00 00 83 ec 6c dd 34 24 9b dd 24 24 dd 5c 24 6c
0x0097ce69: dd 5c 24 74 dd 5c 24 7c dd 9c 24 84 00 00 00 dd
Stack: [0x1bf20000,0x1bf70000), sp=0x1bf6ebb8, free space=314k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
v ~RuntimeStub::resolve_opt_virtual_call
J java.net.URL.<init>(Ljava/net/URL;Ljava/lang/String;)V
j sun.misc.URLClassPath$FileLoader.getResource(Ljava/lang/String;Z)Lsun/misc/Resource;+10
J sun.misc.URLClassPath.getResource(Ljava/lang/String;Z)Lsun/misc/Resource;
j java.net.URLClassLoader$1.run()Ljava/lang/Object;+26
v ~StubRoutines::call_stub
--------------- P R O C E S S ---------------
Java Threads: ( => current thread )
0x0ab07800 JavaThread "Thread-6" [_thread_in_native, id=3288]
0x0af02400 JavaThread "StatusEventQueue" [_thread_blocked, id=2676]
0x0ab04c00 JavaThread "OpEventQueue" [_thread_blocked, id=340]
0x0b4d3400 JavaThread "TimerQueue" daemon [_thread_blocked, id=2728]
0x0b497800 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@169dd64" [_thread_blocked, id=1064]
0x0b4c6400 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@ee20fe" [_thread_blocked, id=4052]
0x0b4acc00 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@75c78d" [_thread_blocked, id=3452]
0x0b486000 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@650646" [_thread_blocked, id=3196]
=>0x0b4e4800 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@1b59919" [_thread_in_Java, id=3168]
0x0b48f400 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@126ba64" [_thread_blocked, id=1576]
0x0b4a3400 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@407166" [_thread_blocked, id=1648]
0x0b4ad400 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@1e4905a" [_thread_blocked, id=3392]
0x0b498800 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@d402dd" [_thread_blocked, id=4056]
0x0b4c7400 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@1e3a0ec" [_thread_blocked, id=1772]
0x0b48d400 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@1e9d9b1" [_thread_blocked, id=2700]
0x0b491400 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@509df8" [_thread_blocked, id=2576]
0x0b4b1400 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@10e1513" [_thread_blocked, id=1448]
0x0b4b0800 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@93c4f1" [_thread_blocked, id=2548]
0x0b4ae400 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@1dbb27d" [_thread_blocked, id=2212]
0x0b4b7800 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@705d28" [_thread_blocked, id=2236]
0x0b4b3c00 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@72d873" [_thread_blocked, id=2876]
0x0b46c400 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@18782a7" [_thread_blocked, id=1904]
0x0b447c00 JavaThread "Thread-4" [_thread_blocked, id=3364]
0x0b437400 JavaThread "Repository Writer of FileDictionary" [_thread_blocked, id=2672]
0x0b43b400 JavaThread "com.jxfs.forum.repository.KeyChangeDispatcher@1b11b79" [_thread_blocked, id=2264]
0x003f7800 JavaThread "DestroyJavaVM" [_thread_blocked, id=2956]
0x0b442800 JavaThread "com.jxfs.general.JxfsDeviceManager$StatusDispatcher@1682a53" [_thread_blocked, id=164]
0x0b42bc00 JavaThread "com.jxfs.general.JxfsDeviceManager$KeyValueChangeDispatcher@dac21" [_thread_blocked, id=2248]
0x0b40f800 JavaThread "com.jxfs.general.JxfsLogger$DeliverMsgs@9b688e" [_thread_blocked, id=1268]
0x0ae7a800 JavaThread "AWT-EventQueue-0" [_thread_blocked, id=2156]
0x0ae85400 JavaThread "AWT-Windows" daemon [_thread_in_native, id=208]
0x0ae84800 JavaThread "AWT-Shutdown" [_thread_blocked, id=2712]
0x0ab23000 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=2796]
0x0aafe800 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=3968]
0x0aaf9c00 JavaThread "CompilerThread0" daemon [_thread_blocked, id=2820]
0x0aaf8800 JavaThread "Attach Listener" daemon [_thread_blocked, id=2244]
0x0aaf7c00 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=2808]
0x0aae8000 JavaThread "Finalizer" daemon [_thread_blocked, id=2800]
0x0aae3c00 JavaThread "Reference Handler" daemon [_thread_blocked, id=2944]
Other Threads:
0x0aae0800 VMThread [id=2908]
0x0ab19400 WatcherThread [id=2812]
VM state:not at safepoint (normal execution)
VM Mutex/Monitor currently owned by a thread: None
Heap
def new generation total 960K, used 467K [0x029d0000, 0x02ad0000, 0x02eb0000)
eden
[error occurred during error reporting, step 190, id 0xc0000092]
Dynamic libraries:
0x00400000 - 0x00423000      C:\JVM\jdk1.6.0\bin\javaw.exe
0x7c910000 - 0x7c9c6000      C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c901000      C:\WINDOWS\system32\kernel32.dll
0x77da0000 - 0x77e4c000      C:\WINDOWS\system32\ADVAPI32.dll
0x77e50000 - 0x77ee1000      C:\WINDOWS\system32\RPCRT4.dll
0x7e390000 - 0x7e420000      C:\WINDOWS\system32\USER32.dll
0x77ef0000 - 0x77f37000      C:\WINDOWS\system32\GDI32.dll
0x76340000 - 0x7635d000      C:\WINDOWS\system32\IMM32.DLL
0x62e30000 - 0x62e39000      C:\WINDOWS\system32\LPK.DLL
0x74d20000 - 0x74d8b000      C:\WINDOWS\system32\USP10.dll
0x77be0000 - 0x77c38000      C:\WINDOWS\system32\msvcrt.dll
0x7c340000 - 0x7c396000      C:\JVM\jdk1.6.0\jre\bin\msvcr71.dll
0x6d7c0000 - 0x6da07000      C:\JVM\jdk1.6.0\jre\bin\client\jvm.dll
0x76b00000 - 0x76b2e000      C:\WINDOWS\system32\WINMM.dll
0x6d310000 - 0x6d318000      C:\JVM\jdk1.6.0\jre\bin\hpi.dll
0x76bb0000 - 0x76bbb000      C:\WINDOWS\system32\PSAPI.DLL
0x6d770000 - 0x6d77c000      C:\JVM\jdk1.6.0\jre\bin\verify.dll
0x6d3b0000 - 0x6d3cf000      C:\JVM\jdk1.6.0\jre\bin\java.dll
0x6d7b0000 - 0x6d7bf000      C:\JVM\jdk1.6.0\jre\bin\zip.dll
0x6d000000 - 0x6d1c3000      C:\JVM\jdk1.6.0\jre\bin\awt.dll
0x72f80000 - 0x72fa6000      C:\WINDOWS\system32\WINSPOOL.DRV
0x774b0000 - 0x775ed000      C:\WINDOWS\system32\ole32.dll
0x5b150000 - 0x5b188000      C:\WINDOWS\system32\uxtheme.dll
0x736e0000 - 0x73729000      C:\WINDOWS\system32\ddraw.dll
0x73b40000 - 0x73b46000      C:\WINDOWS\system32\DCIMAN32.dll
0x746b0000 - 0x746fb000      C:\WINDOWS\system32\MSCTF.dll
0x75160000 - 0x7518e000      C:\WINDOWS\system32\msctfime.ime
0x7c9d0000 - 0x7d1ef000      C:\WINDOWS\system32\shell32.dll
0x77f40000 - 0x77fb6000      C:\WINDOWS\system32\SHLWAPI.dll
0x773a0000 - 0x774a3000      C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2982_x-ww_ac3f9c03\comctl32.dll
0x58c30000 - 0x58cca000      C:\WINDOWS\system32\comctl32.dll
0x6d2b0000 - 0x6d303000      C:\JVM\jdk1.6.0\jre\bin\fontmanager.dll
0x6d570000 - 0x6d583000      C:\JVM\jdk1.6.0\jre\bin\net.dll
0x71a30000 - 0x71a47000      C:\WINDOWS\system32\WS2_32.dll
0x71a20000 - 0x71a28000      C:\WINDOWS\system32\WS2HELP.dll
0x6d590000 - 0x6d599000      C:\JVM\jdk1.6.0\jre\bin\nio.dll
0x6d450000 - 0x6d474000      C:\JVM\jdk1.6.0\jre\bin\jpeg.dll
0x0b780000 - 0x0b7a3000      C:\Archivos de programa\Babylon\Babylon-Pro\CAPTLIB.DLL
0x770f0000 - 0x7717c000      C:\WINDOWS\system32\OLEAUT32.dll
0x74c10000 - 0x74c3c000      C:\WINDOWS\system32\OLEACC.dll
0x76030000 - 0x76095000      C:\WINDOWS\system32\MSVCP60.dll
0x1b9d0000 - 0x1ba0f000      C:\WINDOWS\system32\BNA5.dll
0x1c4b0000 - 0x1c54d000      C:\WINDOWS\system32\BNA5Ctl.dll
0x5f1f0000 - 0x5f207000      C:\WINDOWS\system32\olepro32.dll
VM Arguments:
jvm_args: -DGlobalHelp=DtgHelp.hs
java_command: com.dtg.jxfs.tools.test.JxfsTest C:\Views\nperales_JXFS21P\JXFS_System\JXFS\src\jxfs\..\..\..\..\GLOBALDS\ C:\Views\nperales_JXFS21P\JXFS_System\JXFS\src\jxfs\..\..\..\..\GLOBALDS\Tester\Test.properties
Launcher Type: SUN_STANDARD
Environment Variables:
CLASSPATH=C:\Archivos de programa\Java\jre1.5.0_05\lib\ext\QTJava.zip;C:\Archivos de programa\Rational\ClearQuest\cqjni.jar
PATH=C:\Archivos de programa\Archivos comunes\Unisys\ImageSecurity\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Archivos de programa\UltraEdit;C:\Archivos de programa\QuickTime\QTSystem\;C:\Archivos de programa\Rational\ClearCase\bin;C:\Archivos de programa\Rational\common
USERNAME=nperales
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 15 Model 4 Stepping 1, GenuineIntel
--------------- S Y S T E M ---------------
OS: Windows XP Build 2600 Service Pack 2
CPU:total 1 family 15, cmov, cx8, fxsr, mmx, sse, sse2, ht
Memory: 4k page, physical 1562696k(619700k free), swap 2970100k(2239440k free)
vm_info: Java HotSpot(TM) Client VM (1.6.0-b105) for windows-x86, built on Nov 29 2006 00:48:48 by "java_re" with unknown MS VC++:1310

I have developed an application to manage a note acceptor. The manufacturer provided me a dll to communicate the device but my application is written in Java, so I developed the corresponding JNI to send the commands and obtain the answers.
On the other hand, the dll sends some events to indicate the status of the device, so I developed the corresponding inverse JNI to allow the Java application to do the corresponding operations when an event occurs.
If I use j2sdk1.4.2_05 I have no problem, but with jre1.6.0_01 application crashes and I obtain a file with the information bellow, even when events from C arrive to Java. Any idea?
# An unexpected error has been detected by Java Runtime Environment:
# EXCEPTION_FLT_STACK_CHECK (0xc0000092) at pc=0x0097ce69, pid=2964, tid=3168
# Java VM: Java HotSpot(TM) Client VM (1.6.0-b105 mixed mode)
# Problematic frame:
# v ~RuntimeStub::resolve_opt_virtual_call
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
--------------- T H R E A D ---------------
Current thread (0x0b4e4800): JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@1b59919" [_thread_in_Java, id=3168]
siginfo: ExceptionCode=0xc0000092, ExceptionInformation=0x00000000 0x1bf6ec24
Registers:
EAX=0x06b33dc0, EBX=0x06b33dc0, ECX=0x02a39810, EDX=0x02ed16d0
ESP=0x1bf6ebb8, EBP=0x1bf6ecc8, ESI=0x06ab0848, EDI=0x00b0d6a0
EIP=0x0097ce69, EFLAGS=0x00010216
Top of Stack: (sp=0x1bf6ebb8)
0x1bf6ebb8: ffff1372 ffff0000 ffffffff 0095b55f
0x1bf6ebc8: 00c7001b 1bf6f6c4 ffff0023 6d937fbe
0x1bf6ebd8: 00000000 085e0000 085e0000 1bc00000
0x1bf6ebe8: 0b419400 0000085e 6788943c 0001003f
0x1bf6ebf8: 9b000000 0b3fa308 1ba1eecc eed8eed0
0x1bf6ec08: 00001ba1 0732003f 00000000 c0000000
0x1bf6ec18: 00004000 00000000 3ffec000 0b486f6c
0x1bf6ec28: 00000005 02a394c8 02a395e0 6d7d7e75
Instructions: (pc=0x0097ce69)
0x0097ce59: 00 00 83 ec 6c dd 34 24 9b dd 24 24 dd 5c 24 6c
0x0097ce69: dd 5c 24 74 dd 5c 24 7c dd 9c 24 84 00 00 00 dd
Stack: [0x1bf20000,0x1bf70000), sp=0x1bf6ebb8, free space=314k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
v ~RuntimeStub::resolve_opt_virtual_call
J java.net.URL.<init>(Ljava/net/URL;Ljava/lang/String;)V
j sun.misc.URLClassPath$FileLoader.getResource(Ljava/lang/String;Z)Lsun/misc/Resource;+10
J sun.misc.URLClassPath.getResource(Ljava/lang/String;Z)Lsun/misc/Resource;
j java.net.URLClassLoader$1.run()Ljava/lang/Object;+26
v ~StubRoutines::call_stub
--------------- P R O C E S S ---------------
Java Threads: ( => current thread )
0x0ab07800 JavaThread "Thread-6" [_thread_in_native, id=3288]
0x0af02400 JavaThread "StatusEventQueue" [_thread_blocked, id=2676]
0x0ab04c00 JavaThread "OpEventQueue" [_thread_blocked, id=340]
0x0b4d3400 JavaThread "TimerQueue" daemon [_thread_blocked, id=2728]
0x0b497800 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@169dd64" [_thread_blocked, id=1064]
0x0b4c6400 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@ee20fe" [_thread_blocked, id=4052]
0x0b4acc00 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@75c78d" [_thread_blocked, id=3452]
0x0b486000 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@650646" [_thread_blocked, id=3196]
=>0x0b4e4800 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@1b59919" [_thread_in_Java, id=3168]
0x0b48f400 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@126ba64" [_thread_blocked, id=1576]
0x0b4a3400 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@407166" [_thread_blocked, id=1648]
0x0b4ad400 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@1e4905a" [_thread_blocked, id=3392]
0x0b498800 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@d402dd" [_thread_blocked, id=4056]
0x0b4c7400 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@1e3a0ec" [_thread_blocked, id=1772]
0x0b48d400 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@1e9d9b1" [_thread_blocked, id=2700]
0x0b491400 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@509df8" [_thread_blocked, id=2576]
0x0b4b1400 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@10e1513" [_thread_blocked, id=1448]
0x0b4b0800 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@93c4f1" [_thread_blocked, id=2548]
0x0b4ae400 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@1dbb27d" [_thread_blocked, id=2212]
0x0b4b7800 JavaThread "Support:EventQueue(listeners=Vector@1,events=Vector@1,eventBufferSize=1000)@705d28" [_thread_blocked, id=2236]
0x0b4b3c00 JavaThread "QueueControl(mode=1,suspended=false,jobs=0,regControls=[],claimOwner[])@72d873" [_thread_blocked, id=2876]
0x0b46c400 JavaThread "com.jxfs.general.JxfsDeviceManager$DeviceKeyValueChangeDispatcher@18782a7" [_thread_blocked, id=1904]
0x0b447c00 JavaThread "Thread-4" [_thread_blocked, id=3364]
0x0b437400 JavaThread "Repository Writer of FileDictionary" [_thread_blocked, id=2672]
0x0b43b400 JavaThread "com.jxfs.forum.repository.KeyChangeDispatcher@1b11b79" [_thread_blocked, id=2264]
0x003f7800 JavaThread "DestroyJavaVM" [_thread_blocked, id=2956]
0x0b442800 JavaThread "com.jxfs.general.JxfsDeviceManager$StatusDispatcher@1682a53" [_thread_blocked, id=164]
0x0b42bc00 JavaThread "com.jxfs.general.JxfsDeviceManager$KeyValueChangeDispatcher@dac21" [_thread_blocked, id=2248]
0x0b40f800 JavaThread "com.jxfs.general.JxfsLogger$DeliverMsgs@9b688e" [_thread_blocked, id=1268]
0x0ae7a800 JavaThread "AWT-EventQueue-0" [_thread_blocked, id=2156]
0x0ae85400 JavaThread "AWT-Windows" daemon [_thread_in_native, id=208]
0x0ae84800 JavaThread "AWT-Shutdown" [_thread_blocked, id=2712]
0x0ab23000 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=2796]
0x0aafe800 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=3968]
0x0aaf9c00 JavaThread "CompilerThread0" daemon [_thread_blocked, id=2820]
0x0aaf8800 JavaThread "Attach Listener" daemon [_thread_blocked, id=2244]
0x0aaf7c00 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=2808]
0x0aae8000 JavaThread "Finalizer" daemon [_thread_blocked, id=2800]
0x0aae3c00 JavaThread "Reference Handler" daemon [_thread_blocked, id=2944]
Other Threads:
0x0aae0800 VMThread [id=2908]
0x0ab19400 WatcherThread [id=2812]
VM state:not at safepoint (normal execution)
VM Mutex/Monitor currently owned by a thread: None
Heap
def new generation total 960K, used 467K [0x029d0000, 0x02ad0000, 0x02eb0000)
eden
[error occurred during error reporting, step 190, id 0xc0000092]
Dynamic libraries:
0x00400000 - 0x00423000      C:\JVM\jdk1.6.0\bin\javaw.exe
0x7c910000 - 0x7c9c6000      C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c901000      C:\WINDOWS\system32\kernel32.dll
0x77da0000 - 0x77e4c000      C:\WINDOWS\system32\ADVAPI32.dll
0x77e50000 - 0x77ee1000      C:\WINDOWS\system32\RPCRT4.dll
0x7e390000 - 0x7e420000      C:\WINDOWS\system32\USER32.dll
0x77ef0000 - 0x77f37000      C:\WINDOWS\system32\GDI32.dll
0x76340000 - 0x7635d000      C:\WINDOWS\system32\IMM32.DLL
0x62e30000 - 0x62e39000      C:\WINDOWS\system32\LPK.DLL
0x74d20000 - 0x74d8b000      C:\WINDOWS\system32\USP10.dll
0x77be0000 - 0x77c38000      C:\WINDOWS\system32\msvcrt.dll
0x7c340000 - 0x7c396000      C:\JVM\jdk1.6.0\jre\bin\msvcr71.dll
0x6d7c0000 - 0x6da07000      C:\JVM\jdk1.6.0\jre\bin\client\jvm.dll
0x76b00000 - 0x76b2e000      C:\WINDOWS\system32\WINMM.dll
0x6d310000 - 0x6d318000      C:\JVM\jdk1.6.0\jre\bin\hpi.dll
0x76bb0000 - 0x76bbb000      C:\WINDOWS\system32\PSAPI.DLL
0x6d770000 - 0x6d77c000      C:\JVM\jdk1.6.0\jre\bin\verify.dll
0x6d3b0000 - 0x6d3cf000      C:\JVM\jdk1.6.0\jre\bin\java.dll
0x6d7b0000 - 0x6d7bf000      C:\JVM\jdk1.6.0\jre\bin\zip.dll
0x6d000000 - 0x6d1c3000      C:\JVM\jdk1.6.0\jre\bin\awt.dll
0x72f80000 - 0x72fa6000      C:\WINDOWS\system32\WINSPOOL.DRV
0x774b0000 - 0x775ed000      C:\WINDOWS\system32\ole32.dll
0x5b150000 - 0x5b188000      C:\WINDOWS\system32\uxtheme.dll
0x736e0000 - 0x73729000      C:\WINDOWS\system32\ddraw.dll
0x73b40000 - 0x73b46000      C:\WINDOWS\system32\DCIMAN32.dll
0x746b0000 - 0x746fb000      C:\WINDOWS\system32\MSCTF.dll
0x75160000 - 0x7518e000      C:\WINDOWS\system32\msctfime.ime
0x7c9d0000 - 0x7d1ef000      C:\WINDOWS\system32\shell32.dll
0x77f40000 - 0x77fb6000      C:\WINDOWS\system32\SHLWAPI.dll
0x773a0000 - 0x774a3000      C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2982_x-ww_ac3f9c03\comctl32.dll
0x58c30000 - 0x58cca000      C:\WINDOWS\system32\comctl32.dll
0x6d2b0000 - 0x6d303000      C:\JVM\jdk1.6.0\jre\bin\fontmanager.dll
0x6d570000 - 0x6d583000      C:\JVM\jdk1.6.0\jre\bin\net.dll
0x71a30000 - 0x71a47000      C:\WINDOWS\system32\WS2_32.dll
0x71a20000 - 0x71a28000      C:\WINDOWS\system32\WS2HELP.dll
0x6d590000 - 0x6d599000      C:\JVM\jdk1.6.0\jre\bin\nio.dll
0x6d450000 - 0x6d474000      C:\JVM\jdk1.6.0\jre\bin\jpeg.dll
0x0b780000 - 0x0b7a3000      C:\Archivos de programa\Babylon\Babylon-Pro\CAPTLIB.DLL
0x770f0000 - 0x7717c000      C:\WINDOWS\system32\OLEAUT32.dll
0x74c10000 - 0x74c3c000      C:\WINDOWS\system32\OLEACC.dll
0x76030000 - 0x76095000      C:\WINDOWS\system32\MSVCP60.dll
0x1b9d0000 - 0x1ba0f000      C:\WINDOWS\system32\BNA5.dll
0x1c4b0000 - 0x1c54d000      C:\WINDOWS\system32\BNA5Ctl.dll
0x5f1f0000 - 0x5f207000      C:\WINDOWS\system32\olepro32.dll
VM Arguments:
jvm_args: -DGlobalHelp=DtgHelp.hs
java_command: com.dtg.jxfs.tools.test.JxfsTest C:\Views\nperales_JXFS21P\JXFS_System\JXFS\src\jxfs\..\..\..\..\GLOBALDS\ C:\Views\nperales_JXFS21P\JXFS_System\JXFS\src\jxfs\..\..\..\..\GLOBALDS\Tester\Test.properties
Launcher Type: SUN_STANDARD
Environment Variables:
CLASSPATH=C:\Archivos de programa\Java\jre1.5.0_05\lib\ext\QTJava.zip;C:\Archivos de programa\Rational\ClearQuest\cqjni.jar
PATH=C:\Archivos de programa\Archivos comunes\Unisys\ImageSecurity\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Archivos de programa\UltraEdit;C:\Archivos de programa\QuickTime\QTSystem\;C:\Archivos de programa\Rational\ClearCase\bin;C:\Archivos de programa\Rational\common
USERNAME=nperales
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 15 Model 4 Stepping 1, GenuineIntel
--------------- S Y S T E M ---------------
OS: Windows XP Build 2600 Service Pack 2
CPU:total 1 family 15, cmov, cx8, fxsr, mmx, sse, sse2, ht
Memory: 4k page, physical 1562696k(619700k free), swap 2970100k(2239440k free)
vm_info: Java HotSpot(TM) Client VM (1.6.0-b105) for windows-x86, built on Nov 29 2006 00:48:48 by "java_re" with unknown MS VC++:1310

Similar Messages

  • Problem with JNI and Parallel Port dll

    Hi. I'm doing some testes with JNI. Firs i followed the netbeans tutorial for doing a C programa that prints somthing for java.. like.. "Hello java from C".
    So i tried to load a dll from my dll. Like, I have this dll to use the parallel port on windows Xp. So i created a dll to access it an comunicates eoth java.
    I did everything just fine.
    When I start my Java app, the first thing it does is to load this parallel port dll and configure the functions of it.
    After that .. I get this error
    EXCEPTION_FLT_STACK_CHECK (0xc0000092) at pc=0x0093d269, pid=2284, tid=3000
    Can someone explain why ?
    (Sorry if i wasn't clear enough, english is not my native language, so ask if you don't understand something.. )

    hi ,
    I met the same problem this morning, and searched the www.google.com in order to solve it, as a result, your article was shown on my screen. :)
    Till now I have read some technical information and solved my problems. Maybe the solution be useful to you:
    ==============================
    error message : (Environment : Tomcat 5, Windows 2003, Mysql5)
    2006-3-29 11:53:48 org.apache.catalina.core.StandardWrapper unload
    message: Waiting for 2 instance(s) to be deallocated
    ==============================
    cause: the number of connection to database exceeded.another word,too many connections.
    ==============================
    solution: close the connection when it becomes useless for your program. :)
    ==============================
    ps. Sorry for my weak English . hehe ....

  • Awkward problems with JNI on J2SE 5.0

    I'm experiencing a strange problem with JNI and I hope someone can help me out.I've installed Cygwin, MinGW and then the CDT plug-in for Eclipse C/C++ development. This means I've used the MinGW make utility. It successfully creates the DLL file, but for some awkward reason, function www_tutorial_jni_HelloWorld_displayHelloWorld cannot be found (UnsatisfiedLinkError: displayHelloWorld).
    The Java class looks like this:
    package www.tutorial.jni;
    public class HelloWorld {
        public native void displayHelloWorld();
        static {
            System.loadLibrary("hello");
        public static final void main(String[] args) {
             try {
                  HelloWorld hw = new HelloWorld();
                  hw.displayHelloWorld();
             } catch (Exception e) {
                  System.out.println(e.toString());
    }The header that was generated by javah.exe (version 1.5.0_01) looks like this:
    /* DO NOT EDIT THIS FILE - it is machine generated */
    #include <jni.h>
    /* Header for class www_tutorial_jni_HelloWorld */
    #ifndef _Included_www_tutorial_jni_HelloWorld
    #define _Included_www_tutorial_jni_HelloWorld
    #ifdef __cplusplus
    extern "C" {
    #endif
    * Class:     www_tutorial_jni_HelloWorld
    * Method:    displayHelloWorld
    * Signature: ()V
    JNIEXPORT void JNICALL
    Java_www_tutorial_jni_HelloWorld_displayHelloWorld
      (JNIEnv *, jobject);
    #ifdef __cplusplus
    #endif
    #endifThe C++ implementation looks like this:
    #include <jni.h>
    #include "www_tutorial_jni_HelloWorld.h"
    #include <stdio.h>
    JNIEXPORT void JNICALL
    Java_www_tutorial_jni_HelloWorld_displayHelloWorld(JNIEnv
    *env, jobject obj)
        printf("Hello world!\n");
        return;
    }I've made sure that the fully qualified name of the implementation function is identical to the one in the header. I don't understand why I still get the error; especially since checking the DLL reveals that a function called "Java_www_tutorial_jni_HelloWorld_displayHelloWorld" exists.
    Could someone try and produce a successfull DLL/SO from the C++ code and then try and run the Java part on a 5.0 version of Java? I'm really curious as to what on Earth is going on...

    ... Otherwise, I would have
    to add whatever directory I put my DLL into to the
    PATH variable.Not necessarily. I believe the "PATH" also implicitly includes the "current directory". I also think that most JNI users put their DLL in a directory from which they also launch java (so it's in the current directory).
    >
    ... a java.library.path set.
    If I don't explicitly set a Java library path,
    Eclipse can't even find the DLL. I'm beginning to
    believe that Eclipse somehow screws up running Java
    programs with native code...I don't know about that... Probably just something extra you have to do with your Eclipse project so that it can find the DLL.
    But like I said, I don't really know - just trying to throw out ideas, small as they may be.

  • Problem with JNI

    i have to implement a few standard APIs. As a part of the implementation I have to provide references to an object I create. Now my underlying code is C++ with JNI used to throw the Java APIs. Problem is JNI now returns different references for the same object and hence my prupose id defeated. Could anyone suggest how this problem can be overcome.

    I tried to figure out what your problem is, but can't. Please rephrase it and give a bit more detail on what you are doing and what is going wrong.

  • Problem with jni references

    i have to implement a few standard APIs. As a part of the implementation I have to provide references to an object I create. Now my underlying code is C++ with JNI used to throw the Java APIs. Problem is JNI now returns different references for the same object and hence my prupose id defeated. Could anyone suggest how this problem can be overcome.

    I'm not exactly sure what you're talking about, but it sounds like you may need to look into global references. Look at NewGlobalRef() and DeleteGlobalRef() and see if those help you out.
    God bless,
    -Toby Reyelts
    For all your JNI woes, check out Jace - http://jace.reyelts.com/jace

  • Problem with JNI form C++

    Hi all,
    I'm fairly new to programming with JNI, so please excuse me if I ask a dumb question.
    I'm trying to call a Java method from a C++ class, but when I run the program, it throws an error, crashing the program. I'm pretty sure the problem is that the call to env->getMethodID() is throwing an error. I have looked around to try and find a way call a function with no arguments, but all of the examples that I have found all call a Java main.
    I'll post my code and the error message below so that things are a bit clearer.
    Thanks,
    Robert.
    Here is the main.cpp. This is where the program is started.
    #include "/usr/lib/jvm/java-6-sun-1.6.0.06/include/jni.h"
    int main()
       JNIEnv *env;
       JavaVM *jvm;
       jint res;
       jclass cls;
       jmethodID mid;
       // creation of the JVM
       JavaVMInitArgs vm_args;
       JavaVMOption options[1];
       options[0].optionString = "-Djava.class.path= .";
       vm_args.version = 0x00010002;
       vm_args.options = options;
       vm_args.nOptions = 1;
       vm_args.ignoreUnrecognized = JNI_TRUE;
       res = JNI_CreateJavaVM(&jvm, (void**)&env, &vm_args);
       // now the rest of the code can work
       cls = env->FindClass("Test");
       mid = env->GetMethodID(cls, "run", "()V");
       env->CallVoidMethod(cls, mid);
       jvm->DestroyJavaVM();
    }Here is Test.java
    public class Test
       public void run()
          System.out.println("stuff");
          foo();
       public void foo()
          System.out.println("asdfasdf");
    }And here is the error message.
    # An unexpected error has been detected by Java Runtime Environment:
    #  SIGSEGV (0xb) at pc=0x06245f7d, pid=9054, tid=1076641792
    # Java VM: Java HotSpot(TM) Client VM (10.0-b22 mixed mode, sharing linux-x86)
    # Problematic frame:
    # V  [libjvm.so+0x245f7d]
    # An error report file with more information is saved as:
    # /media/MY STICK/jni/cpp/hs_err_pid9054.log
    # If you would like to submit a bug report, please visit:
    #   http://java.sun.com/webapps/bugreport/crash.jsp
    AbortedEdited by: metaldrummer610 on Apr 23, 2008 8:35 PM

    Yeah, so I just figured out what was wrong. I wasn't calling main from in Java. My bad guys.

  • Opening a new JFrame in a specific DISPLAY on X11 environment with JNI

    Hi,
    I have a problem that I'm unable to solve.
    I have a Java Application (on Linux with X11 XServer display manager ) running in background that has to open, once received the request, JFrames on the client display. So if I launch the client from "display1", I have to open a JFrame on display1 and then if I launch again the client from "display2", I have to open a JFrame on display2.
    But I found no way do specify where (on which display) I want to open my frame.
    I saw there is a JFrame constructor using GraphicsConfiguration but it I can access only to Local GraphicsConfiguration, so I didn't understand the meaning of this parameter. ;-)
    I tryed even to change runtime the value of $DISPLAY environment variable just before the "new" call but it seems that awt connect to XServer only the first time I use a "graphic call" using correctly my $DISPLAY changed value.
    So all my frames appear on the display from which the first client connects.
    There is a way to tell awt to open a window on a specific DISPLAY without JNI ?
    Or, with JNI it's possible to override, in the X11DrawingSurfaceInfo structure, the field "display" (opening a new connection when necessary) for specific JFrame and the return the changed value to the AWT engine ?
    Thanks to all

    Hi,
    Have you had any further luck with this? I'd like to do something very similar to this (read from a config file the XServer address and use it at runtime to display on that particular server - I have multiple displays with different addresses).
    The best I can figure so far is to use ProcessBuilder and launch another java process with the $DISPLAY env variable set (differently for each process - or client display in your case).
    Whilst I may be able to get away with this for my project, it has many many disadvantages and I'd like to be able to change this programmatically/on-the-fly.
    Anyone's help would be greatly appreciated.
    I may just have to scrap using Java..

  • How can I get the time in Microsecond with JNI ?

    How can I get the time in Microsecond with JNI ?

    JNIEXPORT jdouble JNICALL Java_Win32Native_queryPerformanceFrequency (JNIEnv *env, jobject obj) {
         LARGE_INTEGER lFrequency;
         ::QueryPerformanceFrequency(&lFrequency);
         return (jdouble)lFrequency.QuadPart;
    JNIEXPORT jdouble JNICALL Java_Win32Native_queryPerformanceCounter (JNIEnv *env, jobject obj) {
         LARGE_INTEGER lpCounter;
         ::QueryPerformanceCounter(&lpCounter);
         return (jdouble)lpCounter.QuadPart;

  • How to use VS2005 dlls with jni?

    Hello,
    I have a java application using jni and some dlls.
    Previously this dlls were created using VS2003. Now I want to use VS2005 and I
    encountered some problems.
    Everything is working on my station were I have installed VS2005 but when I try to run the
    application on other station (a test station) is not working.
    I get the following error:
    java.lang.UnsatisfiedLinkError: C:\App\Test.dll: This application has failed to start because
    the application configuration is incorrect. Reinstalling the application may fix this problem
         at java.lang.ClassLoader$NativeLibrary.load(Native Method)
         at java.lang.ClassLoader.loadLibrary0(Unknown Source)
         ......First I tried to search all the dependences and copied all missing dlls from my work station to the test
    station in the application directory. Still not working.
    when dlls were made with VS2003 I had only 3 dependences: mfc71d, msvcp71d, msvcr71d. With this dlls in
    the application directory everything was fine.
    Second I tried to install .Net framework(2.0) and vcredist (VS2005_sp1) but still nothing.
    What I'm doing wrong? Is somebody which is using dlls made in VS2005 with jni?
    Thank you
    ,Dragos

    IIRC, that message means the manifest file in the DLL points to assembly that your computer doesn't have, or it has no manifest file.
    You either need to:
    -recompile using static linking so that it has no dependencies
    -stick the correct manifest in
    -include the entire SxS (site by side) assembly folders with your application (only the ones you're dependent on). These are found in something similar to:
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\x86

  • Preserving session with JNI

    I'm working on an application for interacting with a database, the database has a Java API and a C API for some of the backend functions. I'd like to use some of the C API for the backend to improve the performance of the application. The problem is that I can't pass the connection information back and forth between the Java side and the C side. The connection sessions are maintained by objects in either API (a Java class for connections and a C class for connections). These classes aren't identical, but they're very similar.
    I'm not very experienced with JNI, but as far as I've read/tried, I can't pass these objects back and forth between Java and C. Since JVM addressing isn't necessarily absolute, I can't rely on getting an address to reference on the C side, and since (as far as I'm aware) I can only instantiate a Java side connection with Java side methods, I can't refer to a connection from the C-side either.
    Long story short, I'm stuck trying to find a way to make these 2 API's get along so that I can get the added performance of the C backend. For some reason the API's don't have any methods that use session ID's or anything else that would be useful for this sort of thing. Maybe there is something else I could try or maybe I'm just missing something (it wouldn't be the first time).
    Any thoughts/ideas/suggestions would be much appreciated.

    nsop07 wrote:
    I'm working on an application for interacting with a database, the database has a Java API and a C API for some of the backend functions. I'd like to use some of the C API for the backend to improve the performance of the application. And why do you think that will work?
    The problem is that I can't pass the connection information back and forth between the Java side and the C side. The connection sessions are maintained by objects in either API (a Java class for connections and a C class for connections). These classes aren't identical, but they're very similar.
    I'm not very experienced with JNI, but as far as I've read/tried, I can't pass these objects back and forth between Java and C. Since JVM addressing isn't necessarily absolute, I can't rely on getting an address to reference on the C side, and since (as far as I'm aware) I can only instantiate a Java side connection with Java side methods, I can't refer to a connection from the C-side either.
    In java you perserve a pointer, any pointer, via a java long value. Cast it back and forth when you go back and forth.
    Don't forget to provide a mechanism to clean it up.
    Java objects are similar and well defined in JNI - you pass a reference and access it via JNI methods.

  • PC/SC with JNI vs. javax.smartcardio

    Hi,
    for programming card terminals (USB tag readers) the PC/SC was used with JNI. Since the Java Smartcard I/O API (javax.smartcardio, JSR 268) was introduces in 1.6 it makes the JNI obsolete right?
    So there is no need for jpcsc and similar?
    Thanks
    STeN
    Edited by: stenlik on Jun 8, 2011 8:39 PM

    smartcardio uses JNI to access the PC/SC layer. It is built into the JDK so you do not have to distribute the JAR/DLL files any more as they are already delivered. jpcsc still has it's place but as you mentioned it is not required any more (unless your JDK does not have smartcardio).
    Cheers,
    Shane

  • Help needed with JNI -  java.lang.UnsatisfiedLinkError

    I need some help with JNI. I am running on Sun Solaris 7 using their CC compiler. I wrote a simple java program that calls a native method to get a pid. Everything work until I use cout or cerr. Can anyone help? Below is what I am working with.
    Note: The application works. The problem is when the C++ code tries to display text output.
    My error log is as follows:
    java Pid
    Exception in thread "main" java.lang.UnsatisfiedLinkError: /home/dew/test/libPid.so: ld.so.1: /usr/j2se/bin/../bin/sparc/native_threads/java: fatal: relocation error: file /home/dew/test/libPid.so: symbol __1cDstdEcerr_: referenced symbol not found
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1382)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1306)
    at java.lang.Runtime.loadLibrary0(Runtime.java:749)
    at java.lang.System.loadLibrary(System.java:820)
    at Pid.<clinit>(Pid.java:5)
    Pid.java
    ========
    * Pid: Obtains the pid from the jvm.
    class Pid {
    static { System.loadLibrary("Pid"); }
    public native int getPid();
    public static void main(String args[])
    System.out.println("Before construction of Pid");
    Pid z = new Pid();
    System.out.println(z.getPid());
    z = null;
    Pid.cpp
    =========
    * Native method that obtains and returns the processid.
    #include "Pid.h"
    #include "unistd.h"
    #include <iostream.h>
    JNIEXPORT jint JNICALL Java_Pid_getPid(JNIEnv *env, jobject obj) {
    /* cout << "Getting pid\n"; */
    cerr << "Getting pid\n";
    /* printf("Getting pid\n"); */
    return getpid();

    I forgot to include my build information.
    JAVA_HOME = /usr/j2se/
    LD_LIBRARY_PATH = ./:/opt/readline/lib:/opt/termcap/lib:/usr/bxpro/xcessory/lib:/${JAVA_HOME}/lib:/usr/RogueWave/workspaces/SOLARIS7/SUNPRO50/0d/lib:/usr/RogueWave/workspaces/SOLARIS7/SUNPRO50/3d/lib:/usr/sybase/lib
    javac Pid.java
    javah Pid
    CC -G -I${JAVA_HOME}/include -I${JAVA_HOME}/include/solaris Pid.cpp -o libPid.so
    Thanks again,
    Don

  • Calling an existing C code with JNI under linux.

    Hi all,
    I am trying to use an exsiting c code with jni but I am keep getting
    java.lang.UnsatisfiedLinkError, I am working under linux.
    This is what I have done so far:
    1.export LD_LIBRARY_PATH='pwd'/lib
    2. created HspellNative.java with the static System.loadLibrary("HspellNative") and native function called hspellInit
    3. compiled the java class
    4. javah -jni HspellNative
    5. HspellNative.c:
    #include <jni.h>
    #include <stdio.h>
    #include "HspellNative.h"
    #include "hspell.h"
    JNIEXPORT jint JNICALL
    Java_HspellNative_hspellInit ( JNIEnv* env, jobject obj )
         struct dict_radix **dict;
         return ( (jint) (hspell_init(dict,0) ) );
    6. could be the problematic one:
    gcc -o lib/libHspellNative.so -shared -I/opt/bea/jdk142_05/include -I/opt/bea/jdk142_05/include/linux hspell.c HspellNative.c
    7. java HspellNative
    8. getting the following error:
    Exception in thread "main" java.lang.UnsatisfiedLinkError: /opt/haim/Hspell/hspell-0.9/lib/libHspellNative.so: /opt/haim/Hspell/hspell-0.9/lib/libHspellNative.so: undefined symbol: hspell_debug
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1586)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1511)
    at java.lang.Runtime.loadLibrary0(Runtime.java:788)
    at java.lang.System.loadLibrary(System.java:834)
    at HspellNative.<clinit>(HspellNative.java:18)
    My problem is that I don't know how to combine my HspellNative.c to the existing hspell.c, I know I should put them together in the shared library somehow, but how ?
    Please advice.
    Thanks in advance,
    Haim.

    I know there is something wrong with the .so, the question is: what ? and how do I fix it ?
    This is the ldd ldd libHspellNative.so output:
    /etc/libcwait.so => /etc/libcwait.so (0x0060b000)
    libc.so.6 => /lib/tls/libc.so.6 (0x00111000)
    /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00359000)
    I have no idea what it means...
    I think I will try the SWIG.
    Thanks any way.

  • Problem with JNI in a Solaris shared library

    Hi,
    I have a problem.
    I have used JNI in my .dll on Windows & .so on Solaris . I have also used the same JNI code in a .exe on Windows & an executable on Solaris. 3 out of the above 4 combinations work & 1 doesen't. When I use JNI from a .so on Solaris 8(with/without the J2SE recommended patch), the JVM seems to have some exception & dumps core when I invoke CreateJavaVM(). See Below - I've included the output on the screen & the output from 'pstack core' :
    Unexpected Signal : 11 occurred at PC=0xFED29D44
    Function=[Unknown. Nearest: JVM_GetMethodIxExceptionIndexes+0x1994]
    Library=/usr/java/jre/lib/sparc/libjvm.so
    Current Java thread:
    Dynamic libraries:
    0x10000 SblSim
    0xff280000 /usr/lib/libnsl.so.1
    0xfec00000 /usr/java/jre/lib/sparc/libjvm.so
    0xff370000 /usr/lib/libpthread.so.1
    0xff350000 /usr/lib/librt.so.1
    0xff260000 /usr/lib/libsocket.so.1
    0xff390000 /usr/lib/libdl.so.1
    0xff230000 /usr/lib/libCrun.so.1
    0xff200000 /usr/lib/libm.so.1
    0xff340000 /usr/lib/libw.so.1
    0xff1b0000 /usr/lib/libthread.so.1
    0xff080000 /usr/lib/libc.so.1
    0xff180000 /usr/lib/libmp.so.2
    0xff160000 /usr/lib/libaio.so.1
    0xff1f0000 /usr/platform/SUNW,Sun-Blade-1000/lib/libc_psr.so.1
    0xfebd0000 /usr/j2se/jre/lib/sparc/native_threads/libhpi.so
    0xfeba0000 /usr/j2se/jre/lib/sparc/libverify.so
    0xfeb60000 /usr/j2se/jre/lib/sparc/libjava.so
    0xfeb40000 /usr/j2se/jre/lib/sparc/libzip.so
    0xfe920000 /usr/lib/locale/en_US.ISO8859-1/en_US.ISO8859-1.so.2
    0xf1400000 ./libaicd.so
    0xfc480000 ./libmttoolkit.so
    0xfdfe0000 ./libmttlogger.so
    0xfdfb0000 /usr/j2se/jre/lib/sparc/libnet.so
    Local Time = Tue Nov 12 09:51:37 2002
    Elapsed Time = 29
    # HotSpot Virtual Machine Error : 11
    # Error ID : 4F530E43505002D5 01
    # Please report this error at
    # http://java.sun.com/cgi-bin/bugreport.cgi
    # Java VM: Java HotSpot(TM) Client VM (1.4.0_01-b03 mixed mode)
    # An error report file has been saved as hs_err_pid3120.log.
    # Please refer to the file for further information.
    Abort(coredump)
    Below is the output of 'pstack core'
    $ pstack core
    core 'core' of 3120: SblSim libaicd.so 127.0.0.1 9999
    ----------------- lwp# 1 / thread# 1 --------------------
    ff1c9764 __sigprocmask (ff1cbf60, 0, 0, 565f8, ff1de000, 0) + 8
    ff1be110 _sigon   (565f8, ff1e5930, 6, ffbedba4, 565f8, 6) + d0
    ff1c1150 thrpkill (0, 1, 6, ff1de000, 1, ff140450) + f8
    ff0cb900 raise (6, 0, 0, ffffffff, ff1403bc, 4) + 40
    ff0b58ec abort (ff13c000, ffbedcf8, 0, fffffff8, 4, ffbedd19) + 100
    feee2700 ???????? (1, fef98e50, ffbedd98, 0, feffc130, feee1258)
    feee12c8 ???????? (60650, b, fed29d44, ffbeeab8, b, 0)
    fede77c0 ???????? (fed29d44, ffbeeab8, ffbee800, fed29d44, fed03744, 0)
    ff1cb824 __sighndlr (b, ffbeeab8, ffbee800, fede6f38, 5669c, 5668c) + c
    ff1c84d8 sigacthandler (b, 565f8, 0, 0, 0, ff1de000) + 708
    --- called from signal handler with signal 11 (SIGSEGV) ---
    fed29d44 ???????? (0, 60650, 0, 0, 0, 0)
    fed2d7d4 ???????? (606e4, 0, 0, ffbeed00, 0, 0)
    f172e818 __1cHJNIEnv_JNewObject6MpnH_jclass_pnK_jmethodID_E_pnI_jobject__ (606e4, 0, 0, ffbeed70, 39, 107f90) + 70
    f172dbf8 __1cGJEvent2t5B6M_v_ (107f60, f1a877f4, db088, ff0c1c44, 107f48, 0) + 80
    f16f2864 __1cGCEvent2t6Mii_v_ (107f60, 0, 1, ff13c000, 107f48, 0) + 7c
    f16e62e8 __1cVCISCHelperThreadMutex2t6M_v_ (107f50, 0, 560ac, 30f68, fefe4000, 0) + c0
    f16ddc34 __1cLinitGlobals6F_v_ (0, 1, 19a, f1a198ec, f1a198ec, 0) + 5c
    f16de4e4 CreateISCDriverInstance (0, 5cc40, 0, 57608, 565e8, 0) + 554
    00034f08 __1cJRunSblSim6F_v_ (1, ffbef322, ffbef32c, ff13fc70, 100d4, 0) + 320
    00035588 main (4, ffbef1dc, ffbef1f0, 55c00, 0, 0) + 1a8
    00018460 _start   (0, 0, 0, 0, 0, 0) + 108
    ----------------- lwp# 2 / thread# 2 --------------------
    ff11e958 _signotifywait (ff1de000, 59, 0, 0, 0, 0) + 8
    ff1c2030 thr_yield (0, 0, 0, 0, 0, 0) + 8c
    ----------------- lwp# 3 --------------------------------
    ff1c9774 private___lwp_cond_wait (ff075d70, ff1ded9c, ff1de000, 0, 0, 4) + 8
    ff11c554 doorreturn (ff075cb0, ff1ba740, 0, 0, 0, 0) + 68
    ----------------- lwp# 4 / thread# 4 --------------------
    ff11efbc ___lwp_cond_wait (60048, 60030, fe901ad0, 0, 0, fe901ac8) + 8
    ff116610 lwpcond_timedwait (1cb8c88, 3dd1157a, fe901ba4, 60030, 60048, 1) + 98
    fecfc7d8 ???????? (0, 1, 0, 581b8, feffa26c, 0)
    fecfcfd4 ???????? (ff00a15c, feffa4b8, feffa4b4, 0, 0, 0)
    fecfccc0 ???????? (d3980, 0, 0, 0, 0, 0)
    fecfcbd0 ???????? (d3980, ff1df688, 1, 1, ff1de000, 0)
    ff1cb728 threadstart (d3980, 0, 0, 0, 0, 0) + 40
    ----------------- lwp# 5 --------------------------------
    ff11c4fc doorreturn (4, ff1df688, ff1df6a0, 3, ff1de000, 1) + 10
    ff1ba740 lwpstart (fea95d70, 0, 6000, ff075b74, 0, 0) + 18
    ff1c2030 thr_yield (0, 0, 0, 0, 0, 0) + 8c
    ----------------- lwp# 6 / thread# 5 --------------------
    ff11efbc ___lwp_cond_wait (d5720, d5708, 0, fed10a40, 0, 0) + 8
    fed110d4 ???????? (d56c8, 0, 5000, 5210, d4d38, 4d24)
    fed10824 ???????? (fdf8172c, 0, 0, d4d38, d4d38, 30dec8)
    fed103b0 ???????? (d4dcc, fdf81824, 0, 0, 0, 0)
    fa40cc94 ???????? (f2000380, b6, fdf818a4, ffffffff, 0, fdf817c0)
    fa405da0 ???????? (f2000380, b6, fdf818a8, fa415444, 0, fdf81840)
    fa405da0 ???????? (fdf81938, 0, 0, fa4157a4, 2f4210, fdf818d8)
    fa400438 ???????? (fdf819c0, fdf81c08, a, f6050b68, fa40bc8c, fdf81b50)
    fecfe2f8 ???????? (fdf81c00, fdf81a88, fdf81b48, d4d38, d4d38, fdf81a9c)
    fed0ff90 ???????? (fefe4000, d5298, fdf81b3c, fdf81b38, fdf81b48, d4d38)
    fed0fdf0 ???????? (fdf81c00, fdf81bfc, fdf81bf0, fdf81be8, fdf81be0, d4d38)
    fed0fd78 ???????? (d4d38, d4d38, ac9a0, d5298, 2d4488, fed0fa60)
    fed0fa88 ???????? (d4d38, 0, 0, 0, 0, 0)
    fecfcbd0 ???????? (d4d38, ff1df688, 1, 1, ff1de000, 0)
    ff1cb728 threadstart (d4d38, 0, 0, 0, 0, 0) + 40
    ----------------- lwp# 7 / thread# 6 --------------------
    ff11efbc ___lwp_cond_wait (d7040, d7028, 0, 1, 0, 0) + 8
    fed110d4 ???????? (d6fe8, 0, 5000, 5210, d6658, 4d24)
    fed10824 ???????? (fa38169c, 0, 0, d6658, d6658, 30dec8)
    fed103b0 ???????? (d66ec, fa38179c, 0, 0, 0, 0)
    fa40cc94 ???????? (f2000490, b6, fa3817a0, fa414050, 0, fa381730)
    fa405da0 ???????? (f2000478, b6, fa3818b4, fa415444, 0, fa3817d8)
    fa405c4c ???????? (f2000478, b6, fa381934, fa415444, d6658, fa381858)
    fa405c4c ???????? (fa381938, 0, 0, fa38197c, 2f4210, fa3818d8)
    fa400438 ???????? (fa3819c0, fa381c08, a, f60520b8, fa40bc8c, fa381b50)
    fecfe2f8 ???????? (fa381c00, fa381a88, fa381b48, d6658, d6658, fa381a9c)
    fed0ff90 ???????? (fefe4000, d6bb8, fa381b3c, fa381b38, fa381b48, d6658)
    fed0fdf0 ???????? (fa381c00, fa381bfc, fa381bf0, fa381be8, fa381be0, d6658)
    fed0fd78 ???????? (d6658, d6658, ac9e0, d6bb8, 2d4488, fed0fa60)
    fed0fa88 ???????? (d6658, 0, 0, 0, 0, 0)
    fecfcbd0 ???????? (d6658, ff1df688, 1, 1, ff1de000, 0)
    ff1cb728 threadstart (d6658, 0, 0, 0, 0, 0) + 40
    ----------------- lwp# 8 / thread# 7 --------------------
    ff11d194 _poll    (0, 0, 0, fa281a28, ff13f1b4, fa281a28) + 8
    ff1cb134 select (0, a, 0, ff1de000, fa281e14, 0) + 34
    fed32afc ???????? (d8040, 0, a, 0, 0, 0)
    fed328b4 ???????? (d8040, 0, 0, 0, 0, 0)
    fecfcbd0 ???????? (d8040, ff1df688, 1, 1, ff1de000, 0)
    ff1cb728 threadstart (d8040, 0, 0, 0, 0, 0) + 40
    ----------------- lwp# 9 / thread# 8 --------------------
    ff11efbc ___lwp_cond_wait (5f998, 5f980, 2e7aa0, ff1de000, fa181e14, 0) + 8
    fecfc634 ???????? (5f950, 0, 0, 0, feffa26c, 0)
    fed3371c ???????? (3c00, 3f44, 0, 0, 0, 0)
    fecfcbd0 ???????? (d81a8, ff1df688, 1, 1, ff1de000, 0)
    ff1cb728 threadstart (d81a8, 0, 0, 0, 0, 0) + 40
    ----------------- lwp# 10 / thread# 9 --------------------
    ff11f008 lwpsema_wait (f1f81e30, ff1de000, 0, f1f81d70, ff3e2628, 0) + c
    ff1b94c0 _swtch   (f1f81d70, ffffffff, ff1de000, 5, 1000, 0) + 158
    ff1bcc64 sema_wait (ff020fe0, ff1e98e4, 5000, 10000, 534d, 1) + bc
    fed345c8 ???????? (0, 6, b, a, 1, 0)
    fed34254 ???????? (ff002ae4, ff00a5a0, ff00a5d4, dab90, 2d4488, fed0fa60)
    fed0fa88 ???????? (da630, 0, 0, 0, 0, 0)
    fecfcbd0 ???????? (da630, ff1df688, 1, 1, ff1de000, 0)
    ff1cb728 threadstart (da630, 0, 0, 0, 0, 0) + 40
    ----------------- lwp# 11 / thread# 10 --------------------
    ff11efbc ___lwp_cond_wait (604e8, 604d0, 2e7aa0, feffa26c, 106c40, 0) + 8
    fecfc88c ???????? (604a0, 0, 0, dbbd0, feffa26c, 0)
    fed349ac ???????? (db670, db670, dbfd0, dbbd0, 2d4488, fed0fa60)
    fed0fa88 ???????? (db670, 0, 0, 0, 0, 0)
    fecfcbd0 ???????? (db670, ff1df688, 1, 1, ff1de000, 0)
    ff1cb728 threadstart (db670, 0, 0, 0, 0, 0) + 40
    -------------------------- thread# 3 --------------------
    ff1bddbc reapwait (ff1e29e0, 20520, 0, ff1de000, 0, 0) + 38
    ff1bdb14 _reaper  (ff1dee30, ff1e4740, ff1e29e0, ff1dee08, 1, fe400000) + 38
    ff1cb728 threadstart (0, 0, 0, 0, 0, 0) + 40

    This is an update to the original message -
    I have tried both HotSpot & Server JVMs but still see the
    same behavior. I'm using 1.4 .
    I'd like to provide more information to those who can help
    me. I have a feeling there might be something wrong in my
    CC options. Thus you will find below what my CC statement
    looks like for one of the files in my project & for the
    linking of the final shared library. I also have
    provided the output of ldd on my shared library libaicd.so
    & for comparison the output of ldd on libjvm.so as that
    might provide some usefull information just incase
    something looks suspecious & might ring a bell.
    /opt/SUNWspro.cc6/bin/CC -c -KPIC -g -DDEBUG=DEBUG -
    D_DEBUG -mt -DSOLARIS -DSTD_STREAM -
    I/vob1/qwsrc/fw/include -I.-I/vob4/source/idl -
    I/vob4/source/mttoolkit -I/vob4/source/mttoolkit/tools -
    I/vob4/source/integrations/siebel/aicd -
    I/vob4/source/include -I/vob1/qwsrc/fw/include -
    I/vob4/source/source -I/vob4/source/mttoolkit -
    I/vob1/external/platform_neutral/siebel/scapi/include -
    I/external/sparc/Sun/jdk/1.3.1/include -
    I/external/sparc/Sun/jdk/1.3.1/include/solaris -
    I/vob4/source/idl -I/vob4/source/mttoolkit -
    I/vob4/source/mttoolkit/tools -
    I/vob4/source/mttoolkit/vnet -
    I/vob4/source/mttoolkit/bool -DUNIX -
    D_USE_MTTServerToolkit -D_JAVA_ WIAcceptTimeOut.cpp -
    o /space/users/janak/buildoutput/sparc/debug/obj/integratio s/siebel/aicd/WIAcceptTimeOut.o
    /opt/SUNWspro.cc6/bin/CC -G -
    o /space/users/janak/buildoutput/sparc/debug/lib/fw/libaicd.so
    /space/us
    ers/janak/buildoutput/sparc/debug/obj/integrations/siebel/ai
    cd/AgentService.o /space/users/janak/buildoutput/sparc/debug
    /obj/integrations/siebel/aicd/AgentServiceCmds.o /space/user
    s/janak/buildoutput/sparc/debug/obj/integrations/siebel/aicd
    /AgentServiceEvents.o /space/users/janak/buildoutput/sparc/d
    ebug/obj/integrations/siebel/aicd/AgentServiceICAReq.o /spac
    e/users/janak/buildoutput/sparc/debug/obj/integrations/siebe
    l/aicd/AgentServiceICEvents.o /space/users/janak/buildoutput
    /sparc/debug/obj/integrations/siebel/aicd/AgentServiceUtilit
    ies.o /space/users/janak/buildoutput/sparc/debug/obj/integra
    tions/siebel/aicd/AvMc.o /space/users/janak/buildoutput/spar
    c/debug/obj/integrations/siebel/aicd/InternationalStrings.o
    /space/users/janak/buildoutput/sparc/debug/obj/integrations/
    siebel/aicd/JEvent.o /space/users/janak/buildoutput/sparc/de
    bug/obj/integrations/siebel/aicd/JMultipleEvents.o /space/us
    ers/janak/buildoutput/sparc/debug/obj/integrations/siebel/ai
    cd/JNIObject.o /space/users/janak/buildoutput/sparc/debug/ob
    j/integrations/siebel/aicd/JObject.o /space/users/janak/buil
    doutput/sparc/debug/obj/integrations/siebel/aicd/JSemaphore.
    o /space/users/janak/buildoutput/sparc/debug/obj/integration
    s/siebel/aicd/JWorkerThread.o /space/users/janak/buildoutput
    /sparc/debug/obj/integrations/siebel/aicd/MultipleEvents.o /
    space/users/janak/buildoutput/sparc/debug/obj/integrations/s
    iebel/aicd/Param.o /space/users/janak/buildoutput/sparc/debu
    g/obj/integrations/siebel/aicd/ParamQueue.o /space/users/jan
    ak/buildoutput/sparc/debug/obj/integrations/siebel/aicd/RefC
    ount.o /space/users/janak/buildoutput/sparc/debug/obj/integr
    ations/siebel/aicd/SiebelDriver.o /space/users/janak/buildou
    tput/sparc/debug/obj/integrations/siebel/aicd/SiebelEvent.o
    /space/users/janak/buildoutput/sparc/debug/obj/integrations/
    siebel/aicd/SiebelWorkItem.o /space/users/janak/buildoutput/
    sparc/debug/obj/integrations/siebel/aicd/SingleEvent.o /spac
    e/users/janak/buildoutput/sparc/debug/obj/integrations/siebe
    l/aicd/SmartPtr.o /space/users/janak/buildoutput/sparc/debug
    /obj/integrations/siebel/aicd/StdAfx.o /space/users/janak/bu
    ildoutput/sparc/debug/obj/integrations/siebel/aicd/ThreadPoo
    l.o /space/users/janak/buildoutput/sparc/debug/obj/integrati
    ons/siebel/aicd/Utilities.o /space/users/janak/buildoutput/s
    parc/debug/obj/integrations/siebel/aicd/WIAcceptTimeOut.o -
    lnsl -lc -lCstd -
    L/space/users/janak/buildoutput/sparc/debug/lib/cti -
    lmttoolkit -
    L/space/users/janak/buildoutput/sparc/debug/lib/fw -
    lmttlogger -
    L/space/users/janak/buildoutput/sparc/debug/lib/fw -
    lqwlicmtt -
    L/external/sparc/Sun/jdk/1.3.1/jre/lib/sparc/server -
    Bdynamic -ljvm -mt -lpthread -lposix4
    $ ldd /usr/j2se/jre/lib/sparc/libjvm.so
    libCrun.so.1 => /usr/lib/libCrun.so.1
    libdl.so.1 => /usr/lib/libdl.so.1
    libthread.so.1 => /usr/lib/libthread.so.1
    libsocket.so.1 => /usr/lib/libsocket.so.1
    libnsl.so.1 => /usr/lib/libnsl.so.1
    libm.so.1 => /usr/lib/libm.so.1
    libw.so.1 => /usr/lib/libw.so.1
    libc.so.1 => /usr/lib/libc.so.1
    libmp.so.2 => /usr/lib/libmp.so.2
    /usr/platform/SUNW,Sun-Blade-1000/lib/libc_psr.so.1
    $ ldd libaicd.so
    libnsl.so.1 => /usr/lib/libnsl.so.1
    libc.so.1 => /usr/lib/libc.so.1
    libmttoolkit.so => ./libmttoolkit.so
    libmttlogger.so => ./libmttlogger.so
    libjvm.so => /usr/java/jre/lib/sparc/libjvm.so
    libpthread.so.1 => /usr/lib/libpthread.so.1
    librt.so.1 => /usr/lib/librt.so.1
    libdl.so.1 => /usr/lib/libdl.so.1
    libmp.so.2 => /usr/lib/libmp.so.2
    libCrun.so.1 => /usr/lib/libCrun.so.1
    libthread.so.1 => /usr/lib/libthread.so.1
    libsocket.so.1 => /usr/lib/libsocket.so.1
    libm.so.1 => /usr/lib/libm.so.1
    libaio.so.1 => /usr/lib/libaio.so.1
    libw.so.1 => /usr/lib/libw.so.1
    /usr/platform/SUNW,Sun-Blade-1000/lib/libc_psr.so.1

  • JDB shows inconsistent behaviour with JNI Based Programs.

    package com.RJCBEmulator;
    public class Testing
         public static void main(String[] args) {
    System.out.println("Start");
              NativeObject myClass = new NativeObject();
         System.out.println("Second line main" );
              myClass.printInfo();
    public class NativeObject {
         static
              System.loadLibrary("RJCBEmulator");
         public NativeObject()
              nativeHandle = InitializeNative(1);
         public native long InitializeNative(int nClassId);
    public void printInfo()
    System.out.println( "Successful" );
         public long nativeHandle;
    JNIEXPORT jlong JNICALL Java_com_RJCBEmulator_NativeObject_InitializeNative(JNIEnv *env, jobject obj, jint jnIID)
    printf( "Inside InitializeNative\n");
    jlong retVal;
    switch( jnIID )
         case 1 :
         // do something
         break;
         case 2 :
         // do something
         break;
    return 999;
    when executed this program with java, I get this trace.
    Start
    Inside InitializeNative
    Second line main
    Successful
    and when running the same program in jdb, I get the following trace
    Start
    Second line main
    Successful
    Inside InitializeNative
    I am using jre1.4.1, I tried it with 1.3.1 and it works. Looks like JNI code is getting executed on a separate thread in JDB based on jre1.4.1.
    Is there anybody who is facing this problem? Is there a workaround?

    Start by testing your application using J2SE 1.4.1
    (or the latest release available to you) and adding
    "-Xcheck:jni" to the command line. This will perform
    extra run-time checking on all JNI calls.
    I don't
    just want to see what native code parts that is
    entered, I also want to be able to set breakpoints in
    the native code (C code).There are debuggers that can work with both Java Language
    and native code, but they need native support (in addition
    to the Java Platform Debugger Architecture [JPDA]) to do it.
    One example (on Solaris) is the latest release of dbx.
    For more information, take a look at:
    http://wwws.sun.com/software/sundev/suncc/documentation/mr/READMEs/dbx.html#new

Maybe you are looking for

  • Remote app and Ipad with Apple TV

    I use the Remote app with both an iPad and iPhone to control my first gen Apple TV. This works fine except for one thing. When I select "Apple TV" as the library, using an iPhone I have access to all my library including Podcasts. When I run the same

  • SP/InfoPath - Duplicate Values

    Hello,  I have been trying to resolve this issue off and on for the past couple of weeks, no one seems to be able to assist me on the internet. Keep in mind I am a business user (process improvement manager). My new employer is getting a little anxio

  • File info greyed out & peculiar finder behavior.

    A while ago I went into Terminal to 'show hidden files' in order to show '...And God Created Woman.mpg' which disappeared (because of the leading dots), I didn't mind the invisible files at first but when I tried to drag and drop copy my Music folder

  • Is CS5 Illustrator (Education Edition 2010) compatible with Windows 8???

    I have Illustrator CS5 (education edition 2010) and I just got a new computer with Windows 8.1...Is this compatible with the version of Adobe I have??

  • BizTalk Host Application Adapters - Set Client Context Values

    http://technet.microsoft.com/en-us/library/bb726925(v=bts.10).aspx Client Context The schema provides the node, TIClientContext, allowing context values to be passed. There are several Client Context properties supported by the adapter, listed in Tab