java.lang.Object
java.lang.Throwable
java.lang.Exception
java.security.GeneralSecurityException
java.security.cert.CertPathValidatorException
- 所有实现的接口:
-
Serializable
表示在验证证书路径时遇到各种问题时发生的异常。
CertPathValidatorException
支持包装异常。 getCause
方法返回引发此异常的可抛出对象(如果有)。
CertPathValidatorException
还可能包括在引发异常时正在验证的证书路径、导致引发异常的证书路径中的证书的索引以及导致失败的原因。 使用getCertPath
、getIndex
和getReason
方法检索这些信息。
并发访问
除非另有规定,此类中定义的方法不是线程安全的。 需要同时访问单个对象的多个线程应在它们之间同步并提供必要的锁定。 操作不同对象的多个线程无需同步。
- 自版本:
- 1.4
- 参见:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
BasicReason列举了任何类型的证书路径可能无效的潜在原因。static interface
验证算法失败的原因。 -
Constructor Summary
ConstructorDescription创建一个没有详细消息的CertPathValidatorException
。创建一个带有给定详细消息的CertPathValidatorException
。CertPathValidatorException
(String msg, Throwable cause) 创建一个带有指定详细消息和原因的CertPathValidatorException
。CertPathValidatorException
(String msg, Throwable cause, CertPath certPath, int index) 创建一个带有指定详细消息、原因、证书路径和索引的CertPathValidatorException
。CertPathValidatorException
(String msg, Throwable cause, CertPath certPath, int index, CertPathValidatorException.Reason reason) 创建一个带有指定详细消息、原因、证书路径、索引和原因的CertPathValidatorException
。创建一个包装指定可抛出对象的CertPathValidatorException
。 -
Method Summary
Modifier and TypeMethodDescription返回引发异常时正在验证的证书路径。int
getIndex()
返回导致引发异常的证书路径中的证书的索引。返回验证失败的原因。Methods declared in class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
Constructor Details
-
CertPathValidatorException
public CertPathValidatorException()创建一个没有详细消息的CertPathValidatorException
。 -
CertPathValidatorException
创建一个带有给定详细消息的CertPathValidatorException
。详细消息是描述此特定异常的String
。- 参数:
-
msg
- 详细消息
-
CertPathValidatorException
创建一个包装指定可抛出对象的CertPathValidatorException
。这允许将任何异常转换为CertPathValidatorException
,同时保留有关被包装异常的信息,这可能对调试很有用。 详细消息设置为(cause==null ? null : cause.toString()
)(通常包含原因的类和详细消息)。- 参数:
-
cause
- 原因(稍后可以通过getCause()
方法检索)。 (允许null
值,并表示原因不存在或未知。)
-
CertPathValidatorException
创建一个带有指定详细消息和原因的CertPathValidatorException
。- 参数:
-
msg
- 详细消息 -
cause
- 原因(稍后可以通过getCause()
方法检索)。 (允许null
值,并表示原因不存在或未知。)
-
CertPathValidatorException
创建一个带有指定详细消息、原因、证书路径和索引的CertPathValidatorException
。- 参数:
-
msg
- 详细消息(如果没有,则为null
) -
cause
- 原因(如果没有,则为null
) -
certPath
- 在遇到错误时正在验证的证书路径 -
index
- 导致错误的证书路径中的证书的索引(如果不适用,则为-1)。 请注意,CertPath
中的证书列表是从零开始的。 - 抛出:
-
IndexOutOfBoundsException
- 如果索引超出范围(index < -1 || (certPath != null && index >= certPath.getCertificates().size())
-
IllegalArgumentException
- 如果certPath
为null
且index
不为-1
-
CertPathValidatorException
public CertPathValidatorException(String msg, Throwable cause, CertPath certPath, int index, CertPathValidatorException.Reason reason) 创建一个带有指定详细消息、原因、证书路径、索引和原因的CertPathValidatorException
。- 参数:
-
msg
- 详细消息(如果没有,则为null
) -
cause
- 原因(如果没有,则为null
) -
certPath
- 在遇到错误时正在验证的证书路径 -
index
- 导致错误的证书路径中的证书的索引(如果不适用,则为-1)。 请注意,CertPath
中的证书列表是从零开始的。 -
reason
- 验证失败的原因 - 抛出:
-
IndexOutOfBoundsException
- 如果索引超出范围(index < -1 || (certPath != null && index >= certPath.getCertificates().size())
-
IllegalArgumentException
- 如果certPath
为null
且index
不为-1 -
NullPointerException
- 如果reason
为null
- 自版本:
- 1.7
-
-
Method Details
-
getCertPath
返回引发异常时正在验证的证书路径。- 返回:
-
引发异常时正在验证的
CertPath
(如果未指定,则为null
)
-
getIndex
public int getIndex()返回导致引发异常的证书路径中的证书的索引。 请注意,CertPath
中的证书列表是从零开始的。 如果未设置索引,则返回-1。- 返回:
- 已设置的索引,如果未设置则为-1
-
getReason
返回验证失败的原因。 该原因与由getIndex()
返回的证书的索引相关联。- 返回:
-
验证失败的原因,如果未指定原因,则为
BasicReason.UNSPECIFIED
- 自版本:
- 1.7
-