View Issue Details

IDProjectCategoryView StatusLast Update
0014815CentOS-7javapublic2018-05-16 20:54
ReporterClovis_Sangrail 
PrioritynormalSeverityminorReproducibilityN/A
Status newResolutionopen 
Product Version7.5.1804 
Target VersionFixed in Version 
Summary0014815: javaws failure "Headless check failed." After upgrade to 7.5
Descriptionfter upgrading from centos 7.4.1708 to Centos 7.5.1804 via yum, I get the following error while trying to run a .jnlp file via javaws:

==========
[T3 ~]$ javaws Downloads/launch.jnlp
Headless check failed. You are forced to run without any graphics. IcedTea-Web can run like this, but your app probably not. This is likely bug in your system.
Headless check failed. You are forced to run without any graphics. IcedTea-Web can run like this, but your app probably not. This is likely bug in your system.
^C[T3 ~]$
==========

The "launch.jnlp" file is generated by the remote console launch command of the IPMI interface to a 1RU server running a SupeMicro X11SSW-F motherboard. Prior to upgrading to 7.5 I was always able to have the IPMI generate the launch.jnlp file, and download it rather than launch it so I could edit the default port numbers to match the redirections through our firewall. I'd then manually run the .jnlp file via the command above, and my console would pop up. Now it fails.

Via yum I rolled back the three java packages:

java-1.8.0-openjdk.x86_64 1:1.8.0.171-7.b10.el7
java-1.8.0-openjdk-devel.x86_64 1:1.8.0.171-7.b10.el7
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.171-7.b10.el7

But it did not fix the problem, I still get the "headless check failed" error with the following java packages:

==========
[T3 ~]$ yum list installed | grep java
java-1.7.0-openjdk.x86_64 1:1.7.0.181-2.6.14.5.el7 @updates
java-1.7.0-openjdk-headless.x86_64 1:1.7.0.181-2.6.14.5.el7 @updates
java-1.8.0-openjdk.x86_64 1:1.8.0.161-2.b14.el7 @base
java-1.8.0-openjdk-devel.x86_64 1:1.8.0.161-2.b14.el7 @base
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.161-2.b14.el7 @base
javapackages-tools.noarch 3.4.1-11.el7 @base
python-javapackages.noarch 3.4.1-11.el7 @base
tzdata-java.noarch 2018e-3.el7 @updates
[T3 ~]$
==========
Steps To ReproduceThe JNLP file is auto-generated by the SuperMicro IPMI 2.0 firmware, you'd have to be logged into the web interface to even try to launch the JNLP file.
Additional InformationI can try to persuade javaws to not fail this "Headless check" via:

=====
[T3 ~]$ export JAVA_TOOL_OPTIONS="-Djava.awt.headless=true"
=====

This makes javaws fail differently:

==========
[T3 ~]$ javaws ./Downloads/launch.jnlp
Picked up JAVA_TOOL_OPTIONS: -Djava.awt.headless=true
Picked up JAVA_TOOL_OPTIONS: -Djava.awt.headless=true
The application's digital signature cannot be verified. Do you want to run the application? It will be granted unrestricted access to your computer.
Name: ATEN Java iKVM Viewer
Publisher: Super Micro Computer, Inc
From:

The digital signature could not be verified by a trusted source. Only run if you trust the origin of the application. The code executed will be given full permissions, ignoring any Java policies you may have.

Type `exit` to terminate ITW, or type one of the below values. Prefix answer by "R " to remember decision and by "RC " to do so for whole codebase.
[YES, NO, SANDBOX]
RC YES
Codebase matches codebase manifest attribute, and application is signed. Continuing. See: http://docs.oracle.com/javase/7/docs/te ... eploy.html for details.
The application <span color='red'> ATEN Java iKVM Viewer (Java viewer ) </span> from <span color='red'> http://{ip}:{port}/ </span> uses resources from the following remote locations: Be very careful when application is loading from different space then you expect. Are you sure you want to run this application?
For more information see:
http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/manifest.html#app_library
and
http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/no_redeploy.html

Type `exit` to terminate ITW, or type one of the below values. Prefix answer by "R " to remember decision and by "RC " to do so for whole codebase.
[YES, NO]
RC YES
Buf size:425984
Exception in thread "AWT-EventQueue-2" java.awt.HeadlessException
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:204)
at java.awt.Window.<init>(Window.java:536)
at java.awt.Frame.<init>(Frame.java:420)
at javax.swing.JFrame.<init>(JFrame.java:233)
at tw.com.aten.ikvm.ui.Viewer.<init>(Unknown Source)
at tw.com.aten.ikvm.KVMMain.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
[T3 ~]$
==========
Tags7.5, java
abrt_hash
URL

Activities

Clovis_Sangrail

Clovis_Sangrail

2018-05-16 20:36

reporter   ~0031851

I removed the java-1.8.0* and icedtea* packages via yum, then installed all the java-1.8.0 packed in the repositories, followed by the three icedtea packages. Now I have:

[T3 ~]# yum list installed | egrep "java-1.8.0|icedtea"
icedtea-web.x86_64 1.7.1-1.el7 @base
icedtea-web-devel.noarch 1.7.1-1.el7 @base
icedtea-web-javadoc.noarch 1.7.1-1.el7 @base
java-1.8.0-openjdk.x86_64 1:1.8.0.171-7.b10.el7 @updates
java-1.8.0-openjdk-accessibility.x86_64 1:1.8.0.171-7.b10.el7 @updates
java-1.8.0-openjdk-accessibility-debug.x86_64
java-1.8.0-openjdk-debug.x86_64 1:1.8.0.171-7.b10.el7 @updates
java-1.8.0-openjdk-demo.x86_64 1:1.8.0.171-7.b10.el7 @updates
java-1.8.0-openjdk-demo-debug.x86_64 1:1.8.0.171-7.b10.el7 @updates
java-1.8.0-openjdk-devel.x86_64 1:1.8.0.171-7.b10.el7 @updates
java-1.8.0-openjdk-devel-debug.x86_64 1:1.8.0.171-7.b10.el7 @updates
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.171-7.b10.el7 @updates
java-1.8.0-openjdk-headless-debug.x86_64
java-1.8.0-openjdk-src.x86_64 1:1.8.0.171-7.b10.el7 @updates
java-1.8.0-openjdk-src-debug.x86_64 1:1.8.0.171-7.b10.el7 @updates
[T3~]#

After this, and without setting the JAVA_TOOLS_OPTIONS environmental I find that I can eventually run the launch.jnlp file. The "javaws Downloads/launch.jnlp" still generates the "Headless check failed" errors, but after hanging for about five minutes it displays the "Codebase matches..." message and prompts. I replied "RC YES", and the remote console successfully launched.

After exiting the javaWS application and running the launch command again, it still threw the "Headless check failed" errors and still hung for several minutes, but then successfully put up the remote console window without prompting me for any responses. The terminal window output is:

==========
[T3 ~]$ javaws Downloads/launch.jnlp
Headless check failed. You are forced to run without any graphics. IcedTea-Web can run like this, but your app probably not. This is likely bug in your system.
OpenJDK 64-Bit Server VM warning: ignoring option PermSize=32M; support was removed in 8.0
OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=32M; support was removed in 8.0
Headless check failed. You are forced to run without any graphics. IcedTea-Web can run like this, but your app probably not. This is likely bug in your system.
. . . . . .
. . . . . .
( hangs for about five minutes )
. . . . . .
Codebase matches codebase manifest attribute, and application is signed. Continuing. See: http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/no_redeploy.html for details.
Buf size:425984
a singal 17 is raised
[T3 ~]$
(Command prompt returns after I close remote console window)
==========
Clovis_Sangrail

Clovis_Sangrail

2018-05-16 20:50

reporter   ~0031852

I downloaded an oracle java 8 .tar.gz file (not the latest, it turns out) from:

http://javadl.oracle.com/webapps/download/AutoDL?BundleId=207765

and unpacked it into /opt. I find that it's javaws executable can run the /jnlp file without any error messages:

==========
[T3 ~]$ /opt/jre1.8.0_91/bin/javaws Downloads/launch.jnlp
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=32M; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=32M; support was removed in 8.0
[kurt@T3400 ~]$ Buf size:425984
a singal 17 is raised
[T3 ~]$
==========
Clovis_Sangrail

Clovis_Sangrail

2018-05-16 20:54

reporter   ~0031853

So as of now I have work-arounds for this, but I never had any of these issues with Centos 7.4.1708, IMHO it is something that should be fixed in 7.5. I don't see any way to update the "status", "resolution" or other fields.

Issue History

Date Modified Username Field Change
2018-05-16 00:13 Clovis_Sangrail New Issue
2018-05-16 00:13 Clovis_Sangrail Tag Attached: 7.5
2018-05-16 00:13 Clovis_Sangrail Tag Attached: java
2018-05-16 20:36 Clovis_Sangrail Note Added: 0031851
2018-05-16 20:50 Clovis_Sangrail Note Added: 0031852
2018-05-16 20:54 Clovis_Sangrail Note Added: 0031853