Bug 30672 - Java 17 exception when running tomcat caused by missing cacerts, installing rootcerts-java fixes it
Summary: Java 17 exception when running tomcat caused by missing cacerts, installing ...
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: Cauldron
Hardware: All Linux
Priority: Normal major
Target Milestone: ---
Assignee: Java Stack Maintainers
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-07-27 02:06 CEST by Adrien Guichard
Modified: 2022-07-27 23:15 CEST (History)
2 users (show)

See Also:
Source RPM: java-17-openjdk-17.0.3.0.7-1.2.mga9.src.rpm
CVE:
Status comment:


Attachments

Description Adrien Guichard 2022-07-27 02:06:50 CEST
When trying to start tomcat using java-17-openjdk I get an exception about missing cacerts file:

Caused by: org.apache.http.ssl.SSLInitializationException: /usr/lib/jvm/java-17-openjdk-17.0.3.0.7-1.2.mga9.x86_64/lib/security/cacerts (Aucun fichier ou dossier de ce type)
	at org.gradle.internal.resource.transport.http.DefaultSslContextFactory$SslContextCacheLoader.load(DefaultSslContextFactory.java:127)
	at org.gradle.internal.resource.transport.http.DefaultSslContextFactory$SynchronizedSystemPropertiesCacheLoader$1.create(DefaultSslContextFactory.java:106)
	at org.gradle.internal.resource.transport.http.DefaultSslContextFactory$SynchronizedSystemPropertiesCacheLoader$1.create(DefaultSslContextFactory.java:103)
	at org.gradle.internal.SystemProperties.withSystemProperties(SystemProperties.java:157)
	at org.gradle.internal.resource.transport.http.DefaultSslContextFactory$SynchronizedSystemPropertiesCacheLoader.load(DefaultSslContextFactory.java:103)
	at org.gradle.internal.resource.transport.http.DefaultSslContextFactory$SynchronizedSystemPropertiesCacheLoader.load(DefaultSslContextFactory.java:81)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3529)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2278)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2155)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2045)
	... 732 more


I noticed that previous version of Java have cacerts files in 2 different locations (/usr/lib/ and /etc/java/) when Java 17 has only 1 location for this file:

$ urpmf lib/security/cacerts
java-1.8.0-openjdk-headless:/etc/java/java-1.8.0-openjdk/java-1.8.0-openjdk-1.8.0.332.b09-1.1.mga9.x86_64/lib/security/cacerts
java-1.8.0-openjdk-headless:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.332.b09-1.1.mga9.x86_64/jre/lib/security/cacerts
[. . .]
java-17-openjdk-headless-slowdebug:/etc/java/java-17-openjdk/java-17-openjdk-17.0.3.0.7-1.2.mga9.x86_64-slowdebug/lib/security/cacerts
java-17-openjdk-headless-fastdebug:/etc/java/java-17-openjdk/java-17-openjdk-17.0.3.0.7-1.2.mga9.x86_64-fastdebug/lib/security/cacerts
java-17-openjdk-headless:/etc/java/java-17-openjdk/java-17-openjdk-17.0.3.0.7-1.2.mga9.x86_64/lib/security/cacerts

Thanks for your support,
Adrien
Comment 1 Adrien Guichard 2022-07-27 02:15:17 CEST
Installing rootcerts-java fixed the issue ...

Maybe it should be installed by default ?
Comment 2 Marja Van Waes 2022-07-27 22:52:53 CEST
Assigning to the java stack maintainers

Assignee: bugsquad => java
Summary: Java 17 exception when running tomcat caused by missing cacerts => Java 17 exception when running tomcat caused by missing cacerts, installing rootcerts-java fixes it
CC: (none) => marja11

Comment 3 Nicolas Lécureuil 2022-07-27 23:15:24 CEST
Thanks for this burgreport, this is now fixed in java 17

Status: NEW => RESOLVED
CC: (none) => mageia
Resolution: (none) => FIXED


Note You need to log in before you can comment on or make changes to this bug.