EXCEPTION_ACCESS_VIOLATION

The public knowledge pool and discussion forum of the OWS community. Do not post confidential information here!
Bill_V
Posts: 5
Joined: 14 Feb 2022, 17:28

EXCEPTION_ACCESS_VIOLATION

Post by Bill_V »

Getting this when running a jsp file in OWS 1.4 and 1.51.
Same file runs properly on JRE 8.102, same laptop.
Tried disabling anti-malware.
Any suggestions appreciated:

#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000006ec4b5bb, pid=3320, tid=5452
#
# JRE version: OpenJDK Runtime Environment Temurin-11.0.13+8 (11.0.13+8) (build 11.0.13+8)
# Java VM: OpenJDK 64-Bit Server VM Temurin-11.0.13+8 (11.0.13+8, mixed mode, tiered, compressed oops, g1 gc, windows-amd64)
# Problematic frame:
# C [jSSC-2.7_x86_64.dll+0xb5bb]
#
# No core dump will be written. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
# https://github.com/adoptium/adoptium-support/issues
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
------ S U M M A R Y -----
Command Line: -Xbootclasspath/a:C:\Program Files\OpenWebStart\openwebstart.jar -Dicedtea-web.bin.location=C:\Program Files\OpenWebStart\javaws --add-exports=java.base/sun.net.www.protocol.jar=ALL-UNNAMED,java.desktop --add-exports=java.base/jdk.internal.util.jar=ALL-UNNAMED,java.desktop --add-exports=java.base/com.sun.net.ssl.internal.ssl=ALL-UNNAMED,java.desktop --add-reads=java.naming=ALL-UNNAMED,java.desktop --add-exports=java.desktop/sun.awt.X11=ALL-UNNAMED,java.desktop --add-exports=java.desktop/sun.applet=ALL-UNNAMED,java.desktop,jdk.jsobject --add-exports=java.base/sun.security.action=ALL-UNNAMED,java.desktop --add-reads=java.base=ALL-UNNAMED,java.desktop --add-exports=java.base/sun.net.www.protocol.http=ALL-UNNAMED,java.desktop --add-exports=java.naming/com.sun.jndi.toolkit.url=ALL-UNNAMED,java.desktop --add-exports=java.base/sun.security.util=ALL-UNNAMED,java.desktop --add-reads=java.desktop=ALL-UNNAMED,java.naming --add-exports=java.desktop/sun.awt=ALL-UNNAMED,java.desktop --add-exports=java.base/sun.security.x509=ALL-UNNAMED,java.desktop --add-exports=java.desktop/javax.jnlp=ALL-UNNAMED,java.desktop --add-exports=java.base/sun.security.provider=ALL-UNNAMED,java.desktop --add-exports=java.base/sun.security.validator=ALL-UNNAMED,java.desktop net.sourceforge.jnlp.runtime.Boot -Xnofork C:\Users\bill\Downloads\ScannerWebStart (3).jsp

Host: AMD A8-7410 APU with AMD Radeon R5 Graphics , 4 cores, 6G, Windows 10 , 64 bit Build 19041 (10.0.19041.1503)
Time: Mon Feb 14 10:32:46 2022 Eastern Standard Time elapsed time: 23.088913 seconds (0d 0h 0m 23s)

--- T H R E A D ---
Current thread (0x0000022bdcb5b000): JavaThread "Scanner" [_thread_in_native, id=5452, stack(0x0000003ca7300000,0x0000003ca7400000)]

Stack: [0x0000003ca7300000,0x0000003ca7400000], sp=0x0000003ca73fddc0, free space=1015k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [jSSC-2.7_x86_64.dll+0xb5bb]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j jssc.SerialNativeInterface.openPort(Ljava/lang/String;Z)J+0
j jssc.SerialPort.openPort()Z+65
j com.tdt.ltron.scanner.port.SerialPortConnector.connect(Ljava/lang/String;)Ljava/lang/Boolean;+16
j com.tdt.ltron.scanner.ScannerWebStart.init()V+22
j com.tdt.ltron.scanner.ScannerWebStart.main([Ljava/lang/String;)V+31
v ~StubRoutines::call_stub
j jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0 java.base@11.0.13
j jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+100 java.base@11.0.13
j jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+6 java.base@11.0.13
j java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+59 java.base@11.0.13
j net.sourceforge.jnlp.Launcher.launchApplication(Lnet/sourceforge/jnlp/JNLPFile;)Lnet/sourceforge/jnlp/runtime/ApplicationInstance;+306
j net.sourceforge.jnlp.Launcher.access$200(Lnet/sourceforge/jnlp/Launcher;Lnet/sourceforge/jnlp/JNLPFile;)Lnet/sourceforge/jnlp/runtime/ApplicationInstance;+2
j net.sourceforge.jnlp.Launcher$TgThread.run()V+25
v ~StubRoutines::call_stub

siginfo: EXCEPTION_ACCESS_VIOLATION (0xc0000005), reading address 0xffffffffe11e9feb

Stephan Classen
Posts: 224
Joined: 27 Mar 2020, 09:55

Re: EXCEPTION_ACCESS_VIOLATION

Post by Stephan Classen »

Can you please enable all debug logging (incl logging of jnlp file) in the settings and post the logs here.
The above dump would be required if you want to report this at https://github.com/adoptium/adoptium-support/issues

Bill_V
Posts: 5
Joined: 14 Feb 2022, 17:28

Re: EXCEPTION_ACCESS_VIOLATION

Post by Bill_V »

Thanks for the quick reply!
See attached.
Attachments
2022-02-15_16_50_00.231-ows-stage2.log
(67.91 KiB) Downloaded 62 times
2022-02-15_16_50_00.231-ows-stage1.log
(21.32 KiB) Downloaded 55 times

Janak Mulani
Posts: 497
Joined: 24 Mar 2020, 13:37

Re: EXCEPTION_ACCESS_VIOLATION

Post by Janak Mulani »

You are passing file:/C:/Users/bill/Downloads/ScannerWebStart.jsp as jnlp file to OWS javaws.

What is the content of this jsp file or rather is this jsp returning a jnlp file? OWS expects a file in jnlp format.

The log has the following:

Code: Select all

[ITW-CORE][2022-02-15 16:50:02.431 EST][DEBUG][net.sourceforge.jnlp.JNLPFile] Parsing JNLP file
location: file:/C:/Users/bill/Downloads/ScannerWebStart.jsp
codebase: null
content:
With OWS 1.5.1 you can log the contents of the Jnlp file that is passed to OWS javaws by choosing itw-settings > Logging > Log content of Jnlp files.

Bill_V
Posts: 5
Joined: 14 Feb 2022, 17:28

Re: EXCEPTION_ACCESS_VIOLATION

Post by Bill_V »

Response from calling that jsp is "application/x-java-jnlp-file" with content like this:
<?xml version="1.0" encoding="utf-8"?>
<!-- JNLP File for Stress Test Application -->
<jnlp spec="1.5+" codebase="<%=contextBaseUrl %>/content/webstart/scanner" >

<information>
<title>Scanner</title>
<vendor>Text and Data Technologies Inc.</vendor>
<homepage href="http://www.textdata.com"/>
<description>TDT LTRON Scanner Software</description>
<description kind="short">LTRON Scanner</description>
<offline-allowed />
</information>

<resources>
<j2se version="1.6+" />
<jar href="<%= contextBaseUrl %>/content/webstart/scanner/TDT_LTRON_Scanner_WS.jar" />
<jar href="<%= contextBaseUrl %>/content/webstart/scanner/jssc.jar" />
<jar href="<%= contextBaseUrl %>/content/webstart/scanner/commons-logging-1.1.3.jar" />
<jar href="<%= contextBaseUrl %>/content/webstart/scanner/httpclient-4.3.1.jar" />
<jar href="<%= contextBaseUrl %>/content/webstart/scanner/httpcore-4.3.jar" />
<jar href="<%= contextBaseUrl %>/content/webstart/scanner/httpmime-4.3.1.jar" />
</resources>

<application-desc main-class="com.tdt.ltron.scanner.ScannerWebStart" >
<argument><%= ltronScannerPort %></argument>
<argument><%= contextBaseUrl %></argument>
<argument><%= session.getId() %></argument>
</application-desc>

<security>
<all-permissions />
</security>

</jnlp>

Stephan Classen
Posts: 224
Joined: 27 Mar 2020, 09:55

Re: EXCEPTION_ACCESS_VIOLATION

Post by Stephan Classen »

ok, the log ends abruptly. I assume after the last log line the error from your initial post follows.

Code: Select all

[ITW-CORE][2022-02-15 16:50:13.458 EST][INFO ][net.sourceforge.jnlp.Launcher] Invoking main() with args: [COM9, https://10.0.8.140:8843/TDT_CFS, E5BECAA6095FD9AB9E5E8F505BB00A93]
[ITW-CORE][2022-02-15 16:50:13.554 EST][DEBUG][com.openwebstart.download.ApplicationDownloadIndicator] Closing DownloadServiceListener
Above are the last two lines of the log.
The last one shows that the download infrastructure is ready to be garbage collected.
The one above means that OWS is calling the main method of the application with the given arguments.

Usually one can see log lines coming from the the application after this, and if the application is not logging anything then OWS will print a few lines during a regular shutdown. As non of this is in the log something very extraordinary is going on.

My main assumption is that the problem is somewhere in the JVM.
Can you try the following:
  • Can you run the application without using OWS by calling its main method directly (using Eclipse Adoptium-11.0.13)
  • Can you run the application with OWS using a different JVM (maybe a Java 1.8 instead of 11)

Janak Mulani
Posts: 497
Joined: 24 Mar 2020, 13:37

Re: EXCEPTION_ACCESS_VIOLATION

Post by Janak Mulani »

Stephan is right. The problem is while running the jnlp application.

When I opened the logs earlier, somehow in my editor the last lines were as follows and hence I asked for jnlp content:

Code: Select all

[ITW-CORE][2022-02-15 16:50:02.431 EST][DEBUG][net.sourceforge.jnlp.JNLPFile] Parsing JNLP file
location: file:/C:/Users/bill/Downloads/ScannerWebStart.jsp
codebase: null
content:
OWS stage 2 log shows that OWS is invoking main method of your App.

The thread dump shows the main method being invoked and the code in main method trying to open some port which is resulting in the exception

Code: Select all

# JRE version: OpenJDK Runtime Environment Temurin-11.0.13+8 (11.0.13+8) (build 11.0.13+8)
# Java VM: OpenJDK 64-Bit Server VM Temurin-11.0.13+8 (11.0.13+8, mixed mode, tiered, compressed oops, g1 gc, windows-amd64)
# Problematic frame:
# C [jSSC-2.7_x86_64.dll+0xb5bb]

# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.

j jssc.SerialNativeInterface.openPort(Ljava/lang/String;Z)J+0
j jssc.SerialPort.openPort()Z+65
j com.tdt.ltron.scanner.port.SerialPortConnector.connect(Ljava/lang/String;)Ljava/lang/Boolean;+16
j com.tdt.ltron.scanner.ScannerWebStart.init()V+22
j com.tdt.ltron.scanner.ScannerWebStart.main([Ljava/lang/String;)V+31
The problem seems to be with jSSC-2.7_x86_64.dll. You say that it works with JRE 8.102. laptop. Is this Oracle JRE or Adoptium JRE?

Please try running the the app from command line with the required jars on classpath using the jre Temurin-11.0.13+8 (11.0.13+8) (build 11.0.13+8) and see if it is still running.

Post Reply