AdoptOpenJDK / openjdk-docker

Scripts for creating Docker images of OpenJDK binaries.
https://hub.docker.com/_/adoptopenjdk/
Apache License 2.0
425 stars 237 forks source link

java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264) #560

Open alokbaranwal opened 3 years ago

alokbaranwal commented 3 years ago

Hello All, We have a Java (with JBOSS as app server) based application with GUI. While generating jasper letters from the application, we are getting exceptions in log. we dont use docker.

Env Details:- openjdk version "1.8.0_282" OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_282-b08) OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.282-b08, mixed mode)

cat /etc/redhat-release

Red Hat Enterprise Linux Server release 7.6 (Maipo)

There is a file fontconfig.properties available at $JAVA_HOME/lib, with below two lines in it. version=1 sequence.allfonts=default

exception

javax.ejb.EJBException: net.sf.jasperreports.engine.JRRuntimeException: Error initializing graphic environment. ... Caused by: net.sf.jasperreports.engine.JRRuntimeException: Error initializing graphic environment. ... Caused by: java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264) [rt.jar:1.8.0_282]

ERROR [net.sf.jasperreports.engine.util.JRStyledTextParser] (default task-19) Error while loading available fonts: java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264) [rt.jar:1.8.0_282]

Reading other threads on github, i found a suggestion to install the fontconfig (sudo yum install fontconfig dejavu-sans-fonts dejavu-serif-fonts ), however this hasn't worked for all. Could you please suggest what can i do as workaround to get passed this issue.

Regards, Alok

titou10titou10 commented 3 years ago

Maybe it is worth looking a this post on Stack Overflow: https://stackoverflow.com/questions/45569367/upgrade-rhel-from-7-3-to-7-4-arrayindexoutofboundsexception-in-sun-font-composi/45600582#45600582

alokbaranwal commented 3 years ago

Hello @titou10titou10 , Thanks for your input. In my case , as mentioned the RHEL version is 7.6 and the error i am getting while generating Jasper PDF letter is not ArrayIndexOutOfBound, but rather its as below.

Do you think creation of a file /etc/fonts/local.conf (with the content suggested in the link you gave) could be a possible resolution? javax.ejb.EJBException: net.sf.jasperreports.engine.JRRuntimeException: Error initializing graphic environment. ... Caused by: net.sf.jasperreports.engine.JRRuntimeException: Error initializing graphic environment. ... Caused by: java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264) [rt.jar:1.8.0_282]

ERROR [net.sf.jasperreports.engine.util.JRStyledTextParser] (default task-19) Error while loading available fonts: java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264) [rt.jar:1.8.0_282]

titou10titou10 commented 3 years ago

@alokbaranwal honestly I don't know. You problem seems similar in some way to the one we hit months ago, ie jasper + java8 + rhel v7.x + awt ... complaining with font problem... Probably you could give it a try. I though the link I gave could give you a clue. If not then sorry for the noise

karianna commented 3 years ago

see https://github.com/AdoptOpenJDK/openjdk-docker/issues/75