-
- All Superinterfaces:
-
XMLStructure
public interface XMLSignature extends XMLStructure
在Signature中定义的XMLSignature元素的表示 。 此类包含使用W3C规范定义的行为签名和验证XML签名的方法。 XML模式定义定义为:<element name="Signature" type="ds:SignatureType"/> <complexType name="SignatureType"> <sequence> <element ref="ds:SignedInfo"/> <element ref="ds:SignatureValue"/> <element ref="ds:KeyInfo" minOccurs="0"/> <element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/> </sequence> <attribute name="Id" type="ID" use="optional"/> </complexType>可以通过调用
XMLSignatureFactory类的newXMLSignature方法之一来创建一个XMLSignature实例。如果随后修改包含
XMLSignature的基础文档的内容,则行为是未定义的。请注意,此类名称为
XMLSignature而不是Signature以避免与现有的java.security.Signature类命名冲突。
-
-
Nested Class Summary
Nested Classes Modifier and Type 接口 描述 static interfaceXMLSignature.SignatureValue
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 StringgetId()返回此XMLSignature的可选ID。KeyInfogetKeyInfo()返回XMLSignature的关键信息。KeySelectorResultgetKeySelectorResult()返回KeySelector的结果,如果指定,则此XMLSignature已经签名或验证。List<XMLObject>getObjects()返回此XMLSignature中包含的unmodifiable list的XMLSignature。XMLSignature.SignatureValuegetSignatureValue()返回此XMLSignature的签名值。SignedInfogetSignedInfo()返回此XMLSignature的签名信息。voidsign(XMLSignContext signContext)标志这XMLSignature。booleanvalidate(XMLValidateContext validateContext)根据 core validation processing rules验证签名。-
Methods inherited from interface javax.xml.crypto.XMLStructure
isFeatureSupported
-
-
-
-
字段详细信息
-
XMLNS
static final String XMLNS
用于XML签名语法和处理的W3C建议书的XML命名空间URI。- 另请参见:
- Constant Field Values
-
-
方法详细信息
-
validate
boolean validate(XMLValidateContext validateContext) throws XMLSignatureException
根据core validation processing rules验证签名。 此方法使用现有状态验证签名,它不会使用上下文中指定的位置信息解组和重新初始化XMLSignature的内容。该方法仅在第一次调用时验证签名。 在随后的调用中,它返回缓存的结果。
- 参数
-
validateContext- 验证上下文 - 结果
-
true如果签名通过核心验证,否则为false - 异常
-
ClassCastException-如果类型validateContext与此不兼容XMLSignature -
NullPointerException- 如果validateContext是null -
XMLSignatureException- 如果在验证期间发生意外错误,阻止验证操作完成
-
getKeyInfo
KeyInfo getKeyInfo()
返回XMLSignature的关键信息。- 结果
-
关键信息(如果没有指定,可能是
null)
-
getSignedInfo
SignedInfo getSignedInfo()
返回此XMLSignature的签名信息。- 结果
-
签名信息(从不
null)
-
getObjects
List<XMLObject> getObjects()
返回此XMLSignature中包含的XMLObject的XMLSignature。- 结果
-
一个不可修改的
XMLObject的列表(可能是空的,但从不null)
-
getId
String getId()
返回此XMLSignature的可选ID。- 结果
-
Id(如果没有指定可能是
null)
-
getSignatureValue
XMLSignature.SignatureValue getSignatureValue()
返回此XMLSignature的签名值。- 结果
- 签名值
-
sign
void sign(XMLSignContext signContext) throws MarshalException, XMLSignatureException
标志这XMLSignature。如果此方法引发异常,则此
XMLSignature和signContext参数将保留在调用之前的状态。- 参数
-
signContext- 签名上下文 - 异常
-
ClassCastException-如果类型signContext与此不兼容XMLSignature -
NullPointerException- 如果signContext是null -
MarshalException- 如果编组时发生异常 -
XMLSignatureException- 如果在生成签名时发生意外异常
-
getKeySelectorResult
KeySelectorResult getKeySelectorResult()
返回KeySelector的结果,如果指定,则在此XMLSignature已经签名或验证。- 结果
-
键选择器结果,或
null如果没有指定键选择器,或者该XMLSignature未被签名或验证
-
-