Please excuse my previous kludge question.,

Let me start with my first question.

My classes are contained and loaded in a jar from ./common/lib  (also tried
./shared/lib). When
the my common class is instantiated by my web application, the
getContextClassLoader 
reports WebAppClassLoader .. I've doubled checked to make sure i didn't have
duplicate classes in ./WEB-INF (I don't).

    thread = new Thread(this);
    log.info("JOpc created a new thread : " + thread.toString());
    log.info(thread.getContextClassLoader());

My question is, should getContextClassLoader report WebAppClassLoader?? I
guess I assumed that
it should report something like 'Common'.  Am I right to be suspicious about
this? 

Thanks,
Scott


scarlson wrote:
> 
> 
> 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-tp23431354p23450553.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