Hello Everyone,

I am attempting to integrate a Java JNI Library with Tomcat and GWT. I have
had good sucess as
far as initial proto-typing. I am aware of the classloaders (common, shared,
and webapp), but seem to be
missing something big here. I basically have problems cleanly using this
Java OPC Library.  

I included a lot of extra information that may or may not be useful,
hopefully someone can see something
stand out? The library works great when running as Java Application, once I
move to Tomcat, i begin to see problems.

My hunch is that is has something to do with the JeasyOpc library
multi-threading, I have noticed that
the threads that it spawns reports that its class loader is
'WebAppClassLoader', the part that I am
initially confused about is this,

If my classes/libraries(dll) are located in ./common/lib or ./shared/lib why
would my threads be loaded 
by WebAppClassLoader? There are no duplicates in WEB-INF/lib, am I looking
in the right place?

  My shared/lib is generating threads with  thread = new Thread(this);
Should I be forcing the class loader
  context that I want?? I am I even looking in the right place?
  
  Thanks in Advance, the following are some notes that I took last night, I
realize some of it
  is specific to OPC Client/Server, but I'm hoping my integration technique
(Tomcat / Java / JNI) is the
  problem.
  

JEasyOpc is an open source Java OPC Client Library. This library uses JNI
(Java Native Interface) to access JCustomOpc.dll (Delphi originally).

Using Tomcat 6 with JRE6

Testing Notes:
When running a pure java application, I can successfully connect to the OPC
server, register items/groups and also disconnect
cleanly from the server (no hanging clients). Taking note that the library
always reports Thread-0 no matter how many simultaneous
applications I run (ony tested 4-5 at once).

When deploying as a webapp on the Tomcat server, I can connect to the OPC
server, register tags, and upon exiting,
the following conditions occur in some particular order...

  [1] Upon Exit The library reports shutting down, but with an
"UnableRemoveGroupException: Unable to remove some group." exception.
     The client drops clean from Kepware server (as the java classes has
effectively died due to the runtime exception
      and in Java once all references to a class or library are gone, then
it will processed through the garbage collector
      automatically).
  
        [1A]    Notice below 4 times on condition [1]. 
                Then does not report disconnect and leaves a client hanging., 
Tomcat
also failed
                06.05.2009 17:43:38 [Thread-13] INFO  
javafish.clients.opc.JEasyOpc  -
The OPC Client is connected.
                06.05.2009 17:43:38 [Thread-13] INFO  
javafish.clients.opc.JEasyOpc  - OPC
Groups are registered.
                06.05.2009 17:43:38 [Thread-13] INFO  
javafish.clients.opc.JEasyOpc  -
Asynchronous mode 2.0 is started.
                06.05.2009 17:44:28 [Thread-13] ERROR 
javafish.clients.opc.JEasyOpc  -
javafish.clients.opc.exception.UnableRemoveGroupException: Unable to remove
some group.
                06.05.2009 17:44:28 [Thread-13] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is disconnected.
                06.05.2009 17:45:14 [Thread-14] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is connected.
                06.05.2009 17:45:14 [Thread-14] INFO  
javafish.clients.opc.JEasyOpc  - OPC
Groups are registered.
                06.05.2009 17:45:14 [Thread-14] INFO  
javafish.clients.opc.JEasyOpc  -
Asynchronous mode 2.0 is started.
                06.05.2009 17:45:25 [Thread-14] ERROR 
javafish.clients.opc.JEasyOpc  -
javafish.clients.opc.exception.UnableRemoveGroupException: Unable to remove
some group.
                06.05.2009 17:45:25 [Thread-14] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is disconnected.
                06.05.2009 17:45:50 [Thread-15] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is connected.
                06.05.2009 17:45:50 [Thread-15] INFO  
javafish.clients.opc.JEasyOpc  - OPC
Groups are registered.
                06.05.2009 17:45:50 [Thread-15] INFO  
javafish.clients.opc.JEasyOpc  -
Asynchronous mode 2.0 is started.
                06.05.2009 17:45:57 [Thread-15] ERROR 
javafish.clients.opc.JEasyOpc  -
javafish.clients.opc.exception.UnableRemoveGroupException: Unable to remove
some group.
                06.05.2009 17:45:57 [Thread-15] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is disconnected.
                06.05.2009 17:46:04 [Thread-16] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is connected.
                06.05.2009 17:46:04 [Thread-16] INFO  
javafish.clients.opc.JEasyOpc  - OPC
Groups are registered.
                06.05.2009 17:46:04 [Thread-16] INFO  
javafish.clients.opc.JEasyOpc  -
Asynchronous mode 2.0 is started.
                06.05.2009 17:46:08 [Thread-16] ERROR 
javafish.clients.opc.JEasyOpc  -
javafish.clients.opc.exception.UnableRemoveGroupException: Unable to remove
some group.
                06.05.2009 17:46:08 [Thread-16] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is disconnected.
                06.05.2009 17:46:14 [Thread-17] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is connected.
                06.05.2009 17:46:14 [Thread-17] INFO  
javafish.clients.opc.JEasyOpc  - OPC
Groups are registered.
                06.05.2009 17:46:14 [Thread-17] INFO  
javafish.clients.opc.JEasyOpc  -
Asynchronous mode 2.0 is started.
        
  [2] Upon exit The library reports that everything shuts down fine, when
there is obviously still a hanging client.

    [2A] Once we get to this point, I then run another instance of the
webapp, and crash the Java Runtime Environment,
        see attached log below
    
    
  [3] Everything works, and cleanly disconnects, log reports
        06.05.2009 18:30:19 [Thread-13] INFO  javafish.clients.opc.JEasyOpc  -
The OPC Client is connected.
        06.05.2009 18:30:19 [Thread-13] INFO  javafish.clients.opc.JEasyOpc  -
OPC Groups are registered.
        06.05.2009 18:30:19 [Thread-13] INFO  javafish.clients.opc.JEasyOpc  -
Asynchronous mode 2.0 is started.
        06.05.2009 18:30:22 [Thread-13] INFO  javafish.clients.opc.JEasyOpc  -
OPC Groups are unregistered successfully.
        06.05.2009 18:30:22 [Thread-13] INFO  javafish.clients.opc.JEasyOpc  -
The OPC Client is disconnected.
        Kepware Reports clean disconnect too,.
        
        [3A] I'm seeing a pattern here? Clean connect as above, but always on 
the
2nd connection (i.e. run webapp again)
             that we get no reporting of shutdown, Kepware reports 1 connection 
and
0 tags. Which can be cleared
             by "Tools/Reinitialize" in Kepware.
                06.05.2009 18:41:30 [Thread-12] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is connected.
                06.05.2009 18:41:30 [Thread-12] INFO  
javafish.clients.opc.JEasyOpc  - OPC
Groups are registered.
                06.05.2009 18:41:30 [Thread-12] INFO  
javafish.clients.opc.JEasyOpc  -
Asynchronous mode 2.0 is started.
                06.05.2009 18:41:38 [Thread-12] INFO  
javafish.clients.opc.JEasyOpc  - OPC
Groups are unregistered successfully.
                06.05.2009 18:41:38 [Thread-12] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is disconnected.
                06.05.2009 18:42:04 [Thread-13] INFO  
javafish.clients.opc.JEasyOpc  - The
OPC Client is connected.
                06.05.2009 18:42:04 [Thread-13] INFO  
javafish.clients.opc.JEasyOpc  - OPC
Groups are registered.          
                06.05.2009 18:42:04 [Thread-13] INFO  
javafish.clients.opc.JEasyOpc  -
Asynchronous mode 2.0 is started.
                
        [3b] Kepware reports 1 Connection and Tags, Tomcat is still running.
        
        [3c] Kepware reports 1 Connection and All registered Tag, Tomcat is
still running.
        
        These conditions occur when:
        
                * Only client side code resides in the Web Application Class 
Loader, all
server side code and libraries
                riside in ./common/libs which makes everything there accessible 
by all web
applications.
                
                
                The closeOPC method is called in OpcManager
                public void closeOPC()   {
                        opc.terminate();
                        JOpc.coUninitialize();
                }

Follow-up

[1] Why exactly is it having trouble removing groups?
[2a]. Study output and glean info.
[3]. Can I stabilze the system to act like this? -- Close, [3c] when all
java code is in ./WEB-INF 


Running experiments and report output:


[3]
[3a]
Re-Init Kepware
Start Tomcat
[3]
[3]
[3a]
Re-Init Kepware
Start Tomcat
[3]
[3a]
Start Tomcat
[3]
[3]
[1]
[3a]
Start Tomcat
Re-Init Kepware
[3]
[3a]
Start Tomcat
Re-Init Kepware
[3b]
Re-Init Kepware
[3]
[3a]
Start Tomcat
?Re-Init Kepware
[1]
[3c]
Re-Init Kepware
[3c]
Re-Init Kepware
[3c]
Kepware 1 Client 1 Active Tag
[3c]
Kepware 2 Client 1 Active Tag
Re-Init Kepware
[3c]
[3c]
[3c]
[3c]
Kepware 4 Client 1 Active Tag
Re-Init Kepware
Stop Tomcat
Start Tomcat
[1]
[1]
[1]
[1]
[1a]
Re-Started KepWare (Demo Timeout)
Start Tomcat
[3]
[1]
[1a]
Re-Init Kepware
Start Tomcat
[1]
[3c]

------------------------------------------------------

Next,
Moved all server side code to Web Application Classloader ./WEB-INF/libs
JCustomOpc.dll remains in ./common/libs


Starting test,
[3c]
[3c]
[3c] 
Kepware reports 3 connections 1 tag
Re-Init Kepware
[3c]
[3c]
[3c]
Seems to be consistent.




[2] What exactly is staying alive, starting from servlet and moving to
back-end libraries.
"Tools/Reinitialize" in Kepware and notice the connections
      drop to Zero, and then watch one of the connections re-connect even
when your webapp is closed, the library is
      still alive and well, long after your GWT, Servlet and the servel are
dead, 
      this may have everything to do with the way Tomcat deals with the JVM
and JNI dll libraries, class loaders etc.
      



====== stdout.log from tomcat, ============



>From above, you will notice I connected 5 times, and report 4 exceptions
upon disconnect, after these 4 times
the Kepware server report clean disconnects,. On the 5th connection upon
exit, nothing was reported, and Kepware
reported 1 connection with 0 tags. (Described in [1] above)
The 6th time I attempted to connect and crashed the JRE and Tomcat Server
also stopped with this crash report:

#
# An unexpected error has been detected by Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x77ea4dca, pid=3644,
tid=240
#
# Java VM: Java HotSpot(TM) Client VM (11.2-b01 mixed mode, sharing
windows-x86)
# Problematic frame:
# C  [RPCRT4.dll+0x34dca]
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

---------------  T H R E A D  ---------------

Current thread (0x02f92400):  JavaThread "Thread-17" daemon
[_thread_in_native, id=240, stack(0x03b10000,0x03b60000)]

siginfo: ExceptionCode=0xc0000005, reading address 0x03ee9786

Registers:
EAX=0x00000000, EBX=0x03ee9786, ECX=0x03b5f6b0, EDX=0x00000000
ESP=0x03b5f558, EBP=0x03b5f564, ESI=0x03b5f6b4, EDI=0x03b5f5b4
EIP=0x77ea4dca, EFLAGS=0x00010206

Top of Stack: (sp=0x03b5f558)
0x03b5f558:   00000000 00000000 00000000 03b5f948
0x03b5f568:   77ef660f 00000000 00000007 03eea242
0x03b5f578:   03b5f6b0 0600016e 03b5f980 03a0276c
0x03b5f588:   000bf878 00000010 000a40b0 00000008
0x03b5f598:   00008007 00000000 000bdf80 240cbf88
0x03b5f5a8:   03b5f5a8 2c0f919a 00000000 03b5f588
0x03b5f5b8:   000a40b0 00000000 00000000 03b5f5d0
0x03b5f5c8:   00000010 00e62da1 00000000 00000001 

Instructions: (pc=0x77ea4dca)
0x77ea4dba:   5e 14 89 47 08 89 47 0c 39 46 10 89 45 08 76 22
0x77ea4dca:   66 8b 03 f6 c4 08 0f 85 9b d7 00 00 a8 6c 0f 84 


Stack: [0x03b10000,0x03b60000],  sp=0x03b5f558,  free space=317k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native
code)
C  [RPCRT4.dll+0x34dca]
C  [RPCRT4.dll+0x8660f]
C  [RPCRT4.dll+0x84e42]
C  [RPCRT4.dll+0x1a83b]
C  [JCustomOpc.dll+0x64375]
C  [JCustomOpc.dll+0x643f2]
j  javafish.clients.opc.JOpc.unregisterGroupsNative()V+0
J  javafish.clients.opc.JEasyOpc.run()V
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  javafish.clients.opc.JOpc.unregisterGroupsNative()V+0
J  javafish.clients.opc.JEasyOpc.run()V
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
=>0x02f92400 JavaThread "Thread-17" daemon [_thread_in_native, id=240,
stack(0x03b10000,0x03b60000)]
  0x02fb9c00 JavaThread "http-8080-5" daemon [_thread_blocked, id=4444,
stack(0x03930000,0x03980000)]
  0x02ffa800 JavaThread "http-8080-4" daemon [_thread_blocked, id=3012,
stack(0x038e0000,0x03930000)]
  0x03072800 JavaThread "http-8080-3" daemon [_thread_in_native, id=2376,
stack(0x03890000,0x038e0000)]
  0x00990800 JavaThread "http-8080-2" daemon [_thread_blocked, id=5456,
stack(0x03840000,0x03890000)]
  0x00a0cc00 JavaThread "http-8080-1" daemon [_thread_blocked, id=4760,
stack(0x037e0000,0x03830000)]
  0x030bb800 JavaThread "TP-Monitor" daemon [_thread_blocked, id=2524,
stack(0x03720000,0x03770000)]
  0x030d8c00 JavaThread "TP-Processor4" daemon [_thread_in_native, id=4480,
stack(0x036d0000,0x03720000)]
  0x0305b800 JavaThread "TP-Processor3" daemon [_thread_blocked, id=176,
stack(0x03680000,0x036d0000)]
  0x03099400 JavaThread "TP-Processor2" daemon [_thread_blocked, id=580,
stack(0x03630000,0x03680000)]
  0x030c5400 JavaThread "TP-Processor1" daemon [_thread_blocked, id=1764,
stack(0x035e0000,0x03630000)]
  0x030b5c00 JavaThread "http-8080-Acceptor-0" daemon [_thread_in_native,
id=5928, stack(0x03590000,0x035e0000)]
  0x0304c800 JavaThread
"ContainerBackgroundProcessor[StandardEngine[Catalina]]" daemon
[_thread_blocked, id=1960, stack(0x03540000,0x03590000)]
  0x009c1c00 JavaThread "Thread-1" [_thread_in_native, id=3808,
stack(0x00cb0000,0x00d00000)]
  0x00962400 JavaThread "Low Memory Detector" daemon [_thread_blocked,
id=5464, stack(0x00c10000,0x00c60000)]
  0x0095e800 JavaThread "CompilerThread0" daemon [_thread_blocked, id=6064,
stack(0x00bc0000,0x00c10000)]
  0x0095a800 JavaThread "Attach Listener" daemon [_thread_blocked, id=4984,
stack(0x00b70000,0x00bc0000)]
  0x00959400 JavaThread "Signal Dispatcher" daemon [_thread_blocked,
id=4464, stack(0x00b20000,0x00b70000)]
  0x00954400 JavaThread "Finalizer" daemon [_thread_blocked, id=700,
stack(0x00ad0000,0x00b20000)]
  0x0094f800 JavaThread "Reference Handler" daemon [_thread_blocked,
id=5188, stack(0x00a80000,0x00ad0000)]
  0x006c7400 JavaThread "main" [_thread_in_native, id=1748,
stack(0x00670000,0x006c0000)]

Other Threads:
  0x0094e000 VMThread [stack: 0x00a30000,0x00a80000] [id=4716]
  0x00964400 WatcherThread [stack: 0x00c60000,0x00cb0000] [id=2516]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 def new generation   total 960K, used 503K [0x24070000, 0x24170000,
0x24550000)
  eden space 896K,  53% used [0x24070000, 0x240e8268, 0x24150000)
  from space 64K,  35% used [0x24150000, 0x24155b40, 0x24160000)
  to   space 64K,   0% used [0x24160000, 0x24160000, 0x24170000)
 tenured generation   total 4096K, used 4083K [0x24550000, 0x24950000,
0x28070000)
   the space 4096K,  99% used [0x24550000, 0x2494cd48, 0x2494ce00,
0x24950000)
 compacting perm gen  total 12288K, used 5369K [0x28070000, 0x28c70000,
0x2c070000)
   the space 12288K,  43% used [0x28070000, 0x285ae458, 0x285ae600,
0x28c70000)
    ro space 8192K,  63% used [0x2c070000, 0x2c587e48, 0x2c588000,
0x2c870000)
    rw space 12288K,  53% used [0x2c870000, 0x2cedcb38, 0x2cedcc00,
0x2d470000)

Dynamic libraries:
0x00400000 - 0x0040f000         C:\Program Files\Apache Software 
Foundation\Tomcat
6.0\bin\tomcat6.exe
0x7c900000 - 0x7c9b2000         C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c8f6000         C:\WINDOWS\system32\kernel32.dll
0x7e410000 - 0x7e4a1000         C:\WINDOWS\system32\USER32.dll
0x77f10000 - 0x77f59000         C:\WINDOWS\system32\GDI32.dll
0x77dd0000 - 0x77e6b000         C:\WINDOWS\system32\ADVAPI32.dll
0x77e70000 - 0x77f02000         C:\WINDOWS\system32\RPCRT4.dll
0x77fe0000 - 0x77ff1000         C:\WINDOWS\system32\Secur32.dll
0x77c10000 - 0x77c68000         C:\WINDOWS\system32\MSVCRT.dll
0x7c9c0000 - 0x7d1d7000         C:\WINDOWS\system32\SHELL32.dll
0x77f60000 - 0x77fd6000         C:\WINDOWS\system32\SHLWAPI.dll
0x76390000 - 0x763ad000         C:\WINDOWS\system32\IMM32.DLL
0x773d0000 - 0x774d3000 
C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83\comctl32.dll
0x5d090000 - 0x5d12a000         C:\WINDOWS\system32\comctl32.dll
0x6d800000 - 0x6da56000         C:\Program Files\Java\jre6\bin\client\jvm.dll
0x76b40000 - 0x76b6d000         C:\WINDOWS\system32\WINMM.dll
0x7c360000 - 0x7c3b6000         C:\WINDOWS\system32\MSVCR71.dll
0x6d290000 - 0x6d298000         C:\Program Files\Java\jre6\bin\hpi.dll
0x76bf0000 - 0x76bfb000         C:\WINDOWS\system32\PSAPI.DLL
0x6d7b0000 - 0x6d7bc000         C:\Program Files\Java\jre6\bin\verify.dll
0x6d330000 - 0x6d34f000         C:\Program Files\Java\jre6\bin\java.dll
0x6d7f0000 - 0x6d7ff000         C:\Program Files\Java\jre6\bin\zip.dll
0x6d610000 - 0x6d623000         C:\Program Files\Java\jre6\bin\net.dll
0x71ab0000 - 0x71ac7000         C:\WINDOWS\system32\WS2_32.dll
0x71aa0000 - 0x71aa8000         C:\WINDOWS\system32\WS2HELP.dll
0x10000000 - 0x10036000         C:\WINDOWS\system32\biolsp.dll
0x77a80000 - 0x77b15000         C:\WINDOWS\system32\CRYPT32.dll
0x77b20000 - 0x77b32000         C:\WINDOWS\system32\MSASN1.dll
0x774e0000 - 0x7761d000         C:\WINDOWS\system32\ole32.dll
0x77120000 - 0x771ab000         C:\WINDOWS\system32\OLEAUT32.dll
0x00e10000 - 0x00e22000         C:\WINDOWS\system32\VetRedir.dll
0x71a50000 - 0x71a8f000         C:\WINDOWS\system32\mswsock.dll
0x662b0000 - 0x66308000         C:\WINDOWS\system32\hnetcfg.dll
0x034c0000 - 0x034d8000         C:\Program Files\CA\eTrustITM\ISafe\ISafeIf.dll
0x71a90000 - 0x71a98000         C:\WINDOWS\System32\wshtcpip.dll
0x76f20000 - 0x76f47000         C:\WINDOWS\system32\DNSAPI.dll
0x76fb0000 - 0x76fb8000         C:\WINDOWS\System32\winrnr.dll
0x76f60000 - 0x76f8c000         C:\WINDOWS\system32\WLDAP32.dll
0x63560000 - 0x63568000         C:\Program Files\National 
Instruments\Shared\mDNS
Responder\nimdnsNSP.dll
0x63550000 - 0x63559000         C:\WINDOWS\system32\nimdnsResponder.dll
0x78130000 - 0x781cb000 
C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\MSVCR80.dll
0x76d60000 - 0x76d79000         C:\WINDOWS\system32\Iphlpapi.dll
0x16080000 - 0x160a5000         C:\Program Files\Bonjour\mdnsNSP.dll
0x76fc0000 - 0x76fc6000         C:\WINDOWS\system32\rasadhlp.dll
0x03980000 - 0x039fc000         C:\Program Files\Apache Software 
Foundation\Tomcat
6.0\common\lib\JCustomOpc.dll
0x77c00000 - 0x77c08000         C:\WINDOWS\system32\version.dll
0x5ad70000 - 0x5ada8000         C:\WINDOWS\system32\uxtheme.dll
0x58d40000 - 0x58d47000         C:\WINDOWS\system32\Wship6.dll
0x76fd0000 - 0x7704f000         C:\WINDOWS\system32\CLBCATQ.DLL
0x77050000 - 0x77115000         C:\WINDOWS\system32\COMRes.dll
0x03b70000 - 0x03e35000         C:\WINDOWS\system32\xpsp2res.dll
0x6d000000 - 0x6d14a000         C:\Program Files\Java\jre6\bin\awt.dll
0x73000000 - 0x73026000         C:\WINDOWS\system32\WINSPOOL.DRV

VM Arguments:
jvm_args: -Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat
6.0 -Dcatalina.base=C:\Program Files\Apache Software Foundation\Tomcat 6.0
-Djava.endorsed.dirs=C:\Program Files\Apache Software Foundation\Tomcat
6.0\endorsed -Djava.io.tmpdir=C:\Program Files\Apache Software
Foundation\Tomcat 6.0\temp
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=C:\Program Files\Apache Software
Foundation\Tomcat 6.0\conf\logging.properties vfprintf 
java_command: <unknown>
Launcher Type: generic

Environment Variables:
CLASSPATH=.;C:\JOPCClient\lib\opiopcio.jar;C:\Program
Files\Java\jre6\lib\ext\QTJava.zip
PATH=C:\Program Files\Common
Files\ArchestrA\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program
Files\NTRU Cryptosystems\NTRU TCG Software Stack\bin\;C:\Program Files\Wave
Systems Corp\Dell Preboot Manager\Access Client\v5\;C:\Program Files\Common
Files\Roxio Shared\DLLShared\;C:\PROGRA~1\CA\SHARED~1\SCANEN~1;C:\Program
Files\CA\SharedComponents\ScanEngine;C:\Program
Files\CA\SharedComponents\CAUpdate\;C:\Program
Files\CA\SharedComponents\ThirdParty\;C:\Program
Files\CA\SharedComponents\SubscriptionLicense\;C:\PROGRA~1\CA\ETRUST~1;C:\PROGRA~1\IVIFOU~1\VISA\WinNT\Bin;C:\Program
Files\IVI Foundation\IVI\bin;C:\Program Files\IVI
Foundation\VISA\WinNT\Bin\;C:\Program Files\IVI
Foundation\VISA\WinNT\Bin;C:\Program Files\TortoiseSVN\bin;C:\Program
Files\Wonderware\InTouch\;C:\Program Files\OpenSSH\bin;C:\Program
Files\National Instruments\LabVIEW 8.6\vi.lib\NIScanEngine;C:\Program
Files\Microsoft SQL Server\90\Tools\binn\;C:\JOPCClient\bin;c:\program
files\java\jdk1.6.0_12\bin;C:\Program Files\QuickTime\QTSystem\;C:\Program
Files\National Instruments\LabVIEW 8.6\\vi.lib\NIScanEngine
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 6 Model 15 Stepping 10, GenuineIntel



---------------  S Y S T E M  ---------------

OS: Windows XP Build 2600 Service Pack 3

CPU:total 2 (2 cores per cpu, 1 threads per core) family 6 model 15 stepping
10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3

Memory: 4k page, physical 2095000k(839380k free), swap 4036032k(2764764k
free)

vm_info: Java HotSpot(TM) Client VM (11.2-b01) for windows-x86 JRE
(1.6.0_12-b04), built on Jan 17 2009 09:57:14 by "java_re" with MS VC++ 7.1

time: Wed May 06 17:46:17 2009
elapsed time: 174 seconds





----------------- Here's a second report a few minutes later
------------------------------------





#
# An unexpected error has been detected by Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x77ea4dca, pid=5500,
tid=4744
#
# Java VM: Java HotSpot(TM) Client VM (11.2-b01 mixed mode, sharing
windows-x86)
# Problematic frame:
# C  [RPCRT4.dll+0x34dca]
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

---------------  T H R E A D  ---------------

Current thread (0x02fcc800):  JavaThread "Thread-14" daemon
[_thread_in_native, id=4744, stack(0x03e80000,0x03ed0000)]

siginfo: ExceptionCode=0xc0000005, reading address 0x03b19786

Registers:
EAX=0x00000000, EBX=0x03b19786, ECX=0x03ecf890, EDX=0x00000000
ESP=0x03ecf738, EBP=0x03ecf744, ESI=0x03ecf894, EDI=0x03ecf794
EIP=0x77ea4dca, EFLAGS=0x00010206

Top of Stack: (sp=0x03ecf738)
0x03ecf738:   00000000 00000000 00000000 03ecfb28
0x03ecf748:   77ef660f 00000000 00000007 03b1a242
0x03ecf758:   03ecf890 0600016e 03ecfb60 039f1c6c
0x03ecf768:   000b73b8 00000010 000b9038 00000008
0x03ecf778:   00008007 00000000 000a39f0 2407d8a8
0x03ecf788:   03ecf788 2c0f919a 00000000 03ecf768
0x03ecf798:   000b9038 00000000 00000000 03ecf7b0
0x03ecf7a8:   00000010 00e62da1 00000000 00000001 

Instructions: (pc=0x77ea4dca)
0x77ea4dba:   5e 14 89 47 08 89 47 0c 39 46 10 89 45 08 76 22
0x77ea4dca:   66 8b 03 f6 c4 08 0f 85 9b d7 00 00 a8 6c 0f 84 


Stack: [0x03e80000,0x03ed0000],  sp=0x03ecf738,  free space=317k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native
code)
C  [RPCRT4.dll+0x34dca]
C  [RPCRT4.dll+0x8660f]
C  [RPCRT4.dll+0x84e42]
C  [RPCRT4.dll+0x1a83b]
C  [JCustomOpc.dll+0x64375]
C  [JCustomOpc.dll+0x643f2]
j  javafish.clients.opc.JOpc.unregisterGroupsNative()V+0
j  javafish.clients.opc.JOpc.unregisterGroups()V+1
j  javafish.clients.opc.JEasyOpc.run()V+274
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  javafish.clients.opc.JOpc.unregisterGroupsNative()V+0
j  javafish.clients.opc.JOpc.unregisterGroups()V+1
j  javafish.clients.opc.JEasyOpc.run()V+274
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
=>0x02fcc800 JavaThread "Thread-14" daemon [_thread_in_native, id=4744,
stack(0x03e80000,0x03ed0000)]
  0x03012400 JavaThread "http-8080-5" daemon [_thread_blocked, id=4864,
stack(0x03920000,0x03970000)]
  0x00947400 JavaThread "http-8080-4" daemon [_thread_blocked, id=572,
stack(0x038d0000,0x03920000)]
  0x00a09400 JavaThread "http-8080-3" daemon [_thread_blocked, id=6084,
stack(0x03880000,0x038d0000)]
  0x0096f400 JavaThread "http-8080-2" daemon [_thread_in_native, id=460,
stack(0x03830000,0x03880000)]
  0x03117400 JavaThread "http-8080-1" daemon [_thread_blocked, id=1476,
stack(0x037e0000,0x03830000)]
  0x03115400 JavaThread "TP-Monitor" daemon [_thread_blocked, id=308,
stack(0x03720000,0x03770000)]
  0x0310f000 JavaThread "TP-Processor4" daemon [_thread_in_native, id=4988,
stack(0x036d0000,0x03720000)]
  0x0310dc00 JavaThread "TP-Processor3" daemon [_thread_blocked, id=4548,
stack(0x03680000,0x036d0000)]
  0x0310c800 JavaThread "TP-Processor2" daemon [_thread_blocked, id=4804,
stack(0x03630000,0x03680000)]
  0x030fe800 JavaThread "TP-Processor1" daemon [_thread_blocked, id=5344,
stack(0x035e0000,0x03630000)]
  0x030f2000 JavaThread "http-8080-Acceptor-0" daemon [_thread_in_native,
id=3464, stack(0x03590000,0x035e0000)]
  0x03101400 JavaThread
"ContainerBackgroundProcessor[StandardEngine[Catalina]]" daemon
[_thread_blocked, id=4620, stack(0x03540000,0x03590000)]
  0x009b9800 JavaThread "Thread-1" [_thread_in_native, id=2300,
stack(0x00cb0000,0x00d00000)]
  0x00962400 JavaThread "Low Memory Detector" daemon [_thread_blocked,
id=5680, stack(0x00c10000,0x00c60000)]
  0x0095c000 JavaThread "CompilerThread0" daemon [_thread_blocked, id=2520,
stack(0x00bc0000,0x00c10000)]
  0x0095a800 JavaThread "Attach Listener" daemon [_thread_blocked, id=5928,
stack(0x00b70000,0x00bc0000)]
  0x00959400 JavaThread "Signal Dispatcher" daemon [_thread_blocked,
id=1936, stack(0x00b20000,0x00b70000)]
  0x00951000 JavaThread "Finalizer" daemon [_thread_blocked, id=2772,
stack(0x00ad0000,0x00b20000)]
  0x0094f800 JavaThread "Reference Handler" daemon [_thread_blocked,
id=2660, stack(0x00a80000,0x00ad0000)]
  0x006c7400 JavaThread "main" [_thread_in_native, id=5396,
stack(0x00670000,0x006c0000)]

Other Threads:
  0x0094e000 VMThread [stack: 0x00a30000,0x00a80000] [id=732]
  0x00963c00 WatcherThread [stack: 0x00c60000,0x00cb0000] [id=2152]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 def new generation   total 960K, used 131K [0x24070000, 0x24170000,
0x24550000)
  eden space 896K,  12% used [0x24070000, 0x2408b6b0, 0x24150000)
  from space 64K,  33% used [0x24150000, 0x24155600, 0x24160000)
  to   space 64K,   0% used [0x24160000, 0x24160000, 0x24170000)
 tenured generation   total 4096K, used 3958K [0x24550000, 0x24950000,
0x28070000)
   the space 4096K,  96% used [0x24550000, 0x2492da50, 0x2492dc00,
0x24950000)
 compacting perm gen  total 12288K, used 5362K [0x28070000, 0x28c70000,
0x2c070000)
   the space 12288K,  43% used [0x28070000, 0x285ac818, 0x285aca00,
0x28c70000)
    ro space 8192K,  63% used [0x2c070000, 0x2c587e48, 0x2c588000,
0x2c870000)
    rw space 12288K,  53% used [0x2c870000, 0x2cedcb38, 0x2cedcc00,
0x2d470000)

Dynamic libraries:
0x00400000 - 0x0040f000         C:\Program Files\Apache Software 
Foundation\Tomcat
6.0\bin\tomcat6.exe
0x7c900000 - 0x7c9b2000         C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c8f6000         C:\WINDOWS\system32\kernel32.dll
0x7e410000 - 0x7e4a1000         C:\WINDOWS\system32\USER32.dll
0x77f10000 - 0x77f59000         C:\WINDOWS\system32\GDI32.dll
0x77dd0000 - 0x77e6b000         C:\WINDOWS\system32\ADVAPI32.dll
0x77e70000 - 0x77f02000         C:\WINDOWS\system32\RPCRT4.dll
0x77fe0000 - 0x77ff1000         C:\WINDOWS\system32\Secur32.dll
0x77c10000 - 0x77c68000         C:\WINDOWS\system32\MSVCRT.dll
0x7c9c0000 - 0x7d1d7000         C:\WINDOWS\system32\SHELL32.dll
0x77f60000 - 0x77fd6000         C:\WINDOWS\system32\SHLWAPI.dll
0x76390000 - 0x763ad000         C:\WINDOWS\system32\IMM32.DLL
0x773d0000 - 0x774d3000 
C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83\comctl32.dll
0x5d090000 - 0x5d12a000         C:\WINDOWS\system32\comctl32.dll
0x6d800000 - 0x6da56000         C:\Program Files\Java\jre6\bin\client\jvm.dll
0x76b40000 - 0x76b6d000         C:\WINDOWS\system32\WINMM.dll
0x7c360000 - 0x7c3b6000         C:\WINDOWS\system32\MSVCR71.dll
0x6d290000 - 0x6d298000         C:\Program Files\Java\jre6\bin\hpi.dll
0x76bf0000 - 0x76bfb000         C:\WINDOWS\system32\PSAPI.DLL
0x6d7b0000 - 0x6d7bc000         C:\Program Files\Java\jre6\bin\verify.dll
0x6d330000 - 0x6d34f000         C:\Program Files\Java\jre6\bin\java.dll
0x6d7f0000 - 0x6d7ff000         C:\Program Files\Java\jre6\bin\zip.dll
0x6d610000 - 0x6d623000         C:\Program Files\Java\jre6\bin\net.dll
0x71ab0000 - 0x71ac7000         C:\WINDOWS\system32\WS2_32.dll
0x71aa0000 - 0x71aa8000         C:\WINDOWS\system32\WS2HELP.dll
0x10000000 - 0x10036000         C:\WINDOWS\system32\biolsp.dll
0x77a80000 - 0x77b15000         C:\WINDOWS\system32\CRYPT32.dll
0x77b20000 - 0x77b32000         C:\WINDOWS\system32\MSASN1.dll
0x774e0000 - 0x7761d000         C:\WINDOWS\system32\ole32.dll
0x77120000 - 0x771ab000         C:\WINDOWS\system32\OLEAUT32.dll
0x00e10000 - 0x00e22000         C:\WINDOWS\system32\VetRedir.dll
0x71a50000 - 0x71a8f000         C:\WINDOWS\system32\mswsock.dll
0x662b0000 - 0x66308000         C:\WINDOWS\system32\hnetcfg.dll
0x034c0000 - 0x034d8000         C:\Program Files\CA\eTrustITM\ISafe\ISafeIf.dll
0x71a90000 - 0x71a98000         C:\WINDOWS\System32\wshtcpip.dll
0x76f20000 - 0x76f47000         C:\WINDOWS\system32\DNSAPI.dll
0x76fb0000 - 0x76fb8000         C:\WINDOWS\System32\winrnr.dll
0x76f60000 - 0x76f8c000         C:\WINDOWS\system32\WLDAP32.dll
0x63560000 - 0x63568000         C:\Program Files\National 
Instruments\Shared\mDNS
Responder\nimdnsNSP.dll
0x63550000 - 0x63559000         C:\WINDOWS\system32\nimdnsResponder.dll
0x78130000 - 0x781cb000 
C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\MSVCR80.dll
0x76d60000 - 0x76d79000         C:\WINDOWS\system32\Iphlpapi.dll
0x16080000 - 0x160a5000         C:\Program Files\Bonjour\mdnsNSP.dll
0x76fc0000 - 0x76fc6000         C:\WINDOWS\system32\rasadhlp.dll
0x03970000 - 0x039ec000         C:\Program Files\Apache Software 
Foundation\Tomcat
6.0\common\lib\JCustomOpc.dll
0x77c00000 - 0x77c08000         C:\WINDOWS\system32\version.dll
0x5ad70000 - 0x5ada8000         C:\WINDOWS\system32\uxtheme.dll
0x58d40000 - 0x58d47000         C:\WINDOWS\system32\Wship6.dll
0x76fd0000 - 0x7704f000         C:\WINDOWS\system32\CLBCATQ.DLL
0x77050000 - 0x77115000         C:\WINDOWS\system32\COMRes.dll
0x03b60000 - 0x03e25000         C:\WINDOWS\system32\xpsp2res.dll
0x6d000000 - 0x6d14a000         C:\Program Files\Java\jre6\bin\awt.dll
0x73000000 - 0x73026000         C:\WINDOWS\system32\WINSPOOL.DRV

VM Arguments:
jvm_args: -Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat
6.0 -Dcatalina.base=C:\Program Files\Apache Software Foundation\Tomcat 6.0
-Djava.endorsed.dirs=C:\Program Files\Apache Software Foundation\Tomcat
6.0\endorsed -Djava.io.tmpdir=C:\Program Files\Apache Software
Foundation\Tomcat 6.0\temp
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=C:\Program Files\Apache Software
Foundation\Tomcat 6.0\conf\logging.properties vfprintf 
java_command: <unknown>
Launcher Type: generic

Environment Variables:
CLASSPATH=.;C:\JOPCClient\lib\opiopcio.jar;C:\Program
Files\Java\jre6\lib\ext\QTJava.zip
PATH=C:\Program Files\Common
Files\ArchestrA\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program
Files\NTRU Cryptosystems\NTRU TCG Software Stack\bin\;C:\Program Files\Wave
Systems Corp\Dell Preboot Manager\Access Client\v5\;C:\Program Files\Common
Files\Roxio Shared\DLLShared\;C:\PROGRA~1\CA\SHARED~1\SCANEN~1;C:\Program
Files\CA\SharedComponents\ScanEngine;C:\Program
Files\CA\SharedComponents\CAUpdate\;C:\Program
Files\CA\SharedComponents\ThirdParty\;C:\Program
Files\CA\SharedComponents\SubscriptionLicense\;C:\PROGRA~1\CA\ETRUST~1;C:\PROGRA~1\IVIFOU~1\VISA\WinNT\Bin;C:\Program
Files\IVI Foundation\IVI\bin;C:\Program Files\IVI
Foundation\VISA\WinNT\Bin\;C:\Program Files\IVI
Foundation\VISA\WinNT\Bin;C:\Program Files\TortoiseSVN\bin;C:\Program
Files\Wonderware\InTouch\;C:\Program Files\OpenSSH\bin;C:\Program
Files\National Instruments\LabVIEW 8.6\vi.lib\NIScanEngine;C:\Program
Files\Microsoft SQL Server\90\Tools\binn\;C:\JOPCClient\bin;c:\program
files\java\jdk1.6.0_12\bin;C:\Program Files\QuickTime\QTSystem\;C:\Program
Files\National Instruments\LabVIEW 8.6\\vi.lib\NIScanEngine
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 6 Model 15 Stepping 10, GenuineIntel



---------------  S Y S T E M  ---------------

OS: Windows XP Build 2600 Service Pack 3

CPU:total 2 (2 cores per cpu, 1 threads per core) family 6 model 15 stepping
10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3

Memory: 4k page, physical 2095000k(823616k free), swap 4036032k(2735752k
free)

vm_info: Java HotSpot(TM) Client VM (11.2-b01) for windows-x86 JRE
(1.6.0_12-b04), built on Jan 17 2009 09:57:14 by "java_re" with MS VC++ 7.1

time: Wed May 06 18:33:00 2009
elapsed time: 200 seconds


-- 
View this message in context: 
http://www.nabble.com/Tomcat---Java-JNI-and-Classloading-issues-tp23431354p23431354.html
Sent from the Tomcat - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to