Search code examples
mavenprimefaces

sun.security.validator.ValidatorException dependency failing


I get the following Exception when i use the Primefaces Maven Repository

mvn clean spring-boot:run

[ERROR] Failed to execute goal on project Passwortmanager: Could not resolve dependencies for project org.dominik:Passwortmanager:jar:2.0.3: Failed to collect dependencies at org.primefaces.themes:all-themes:jar:1.0.10: Failed to read artifact descriptor for org.primefaces.themes:all-themes:jar:1.0.10: Could not transfer artifact org.primefaces.themes:all-themes:pom:1.0.10 from/to prime-repo (https://repository.primefaces.org): sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target -> [Help 1]

My POM.xml

    <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>org.dominik</groupId>
        <artifactId>Passwortmanager</artifactId>
        <packaging>jar</packaging>
        <version>2.0.3</version>


        <repositories>

            <repository>
                <id>prime-repo</id>
                <name>PrimeFaces Maven Repository</name>
                <url>https://repository.primefaces.org</url>
                <layout>default</layout>
            </repository>
            <repository>
                <id>spring-snapshots</id>
                <name>Spring Snapshots</name>
                <url>https://repo.spring.io/libs-snapshot</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories>
     <dependencies>

        <dependency>
            <groupId>org.primefaces.themes</groupId>
            <artifactId>all-themes</artifactId>
            <version>${primefaces.theme.version}</version>
        </dependency>
    </dependencies>
 <finalName>Passwortmanager</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

The official Primefaces Showcase doesn't work too: https://github.com/primefaces/showcase


Solution

  • On Mac and Windows, update your JDK from Oracle, for sure java full version "1.8.0_131-XXX" works on the Mac and Windows. Mac and Windows versions of the JDK generally do not use the system certificate stores instead they have their own.

    For Linux, apt-get ca-certificates which will in turn update the Java certificates if you had the ca-certificates-java installed.

    The new certificates will work with repository.primefaces.org