PKIXReason (Java Platform SE 8 )
Keywords: java.security.cert.PKIXReason class
Date: 2026-04-17

compact1, compact2, compact3
java.security.cert

## Enum PKIXReason

- java.lang.Object
- - java.lang.Enum<PKIXReason>
  - - java.security.cert.PKIXReason

- All Implemented Interfaces:
    Serializable, Comparable<PKIXReason>, CertPathValidatorException.Reason

      public enum PKIXReason
      extends Enum<PKIXReason>
      implements CertPathValidatorException.Reason

  The `PKIXReason` enumerates the potential PKIX-specific reasons that an X.509 certification path may be invalid according to the PKIX (RFC 5280) standard. These reasons are in addition to those of the `CertPathValidatorException.BasicReason` enumeration.
  Since:
    1.7

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `INVALID_KEY_USAGE` The certificate's key usage is invalid.
    `INVALID_NAME` The name constraints have been violated.
    `INVALID_POLICY` The policy constraints have been violated.
    `NAME_CHAINING` The certificate does not chain correctly.
    `NO_TRUST_ANCHOR` No acceptable trust anchor found.
    `NOT_CA_CERT` The certificate is not a CA certificate.
    `PATH_TOO_LONG` The path length constraint has been violated.
    `UNRECOGNIZED_CRIT_EXT` The certificate contains one or more unrecognized critical extensions.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static PKIXReason` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static PKIXReason[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### NAME_CHAINING

          public static final PKIXReason NAME_CHAINING

      The certificate does not chain correctly.

    - #### INVALID_KEY_USAGE

          public static final PKIXReason INVALID_KEY_USAGE

      The certificate's key usage is invalid.

    - #### INVALID_POLICY

          public static final PKIXReason INVALID_POLICY

      The policy constraints have been violated.

    - #### NO_TRUST_ANCHOR

          public static final PKIXReason NO_TRUST_ANCHOR

      No acceptable trust anchor found.

    - #### UNRECOGNIZED_CRIT_EXT

          public static final PKIXReason UNRECOGNIZED_CRIT_EXT

      The certificate contains one or more unrecognized critical extensions.

    - #### NOT_CA_CERT

          public static final PKIXReason NOT_CA_CERT

      The certificate is not a CA certificate.

    - #### PATH_TOO_LONG

          public static final PKIXReason PATH_TOO_LONG

      The path length constraint has been violated.

    - #### INVALID_NAME

          public static final PKIXReason INVALID_NAME

      The name constraints have been violated.

  - ### Method Detail

    - #### values

          public static PKIXReason[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (PKIXReason c : PKIXReason.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static PKIXReason valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.