- java.lang.Object
-
- javax.xml.crypto.dsig.XMLSignatureFactory
-
public abstract class XMLSignatureFactory extends Object
用于从头开始创建XMLSignature
对象的工厂,或从相应的XML表示中解组XMLSignature
对象。XMLSignatureFactory类型
XMLSignatureFactory
每个实例XMLSignatureFactory
支持特定的XML机制类型。 要创建一个XMLSignatureFactory
,请调用静态的getInstance
方法之一,传递所需的XML机制类型,例如:XMLSignatureFactory factory = XMLSignatureFactory.getInstance("DOM");
该工厂生产的对象将基于DOM,并遵守API概述的DOM Mechanism Requirements部分中定义的DOM互操作性要求。 有关标准机制类型的列表,请参阅API概述的Service Providers部分。
XMLSignatureFactory
实现使用Provider
机制进行注册和加载。 例如,支持DOM机制的服务提供者将在Provider
子类中指定为:put("XMLSignatureFactory.DOM", "org.example.DOMXMLSignatureFactory");
实现必须最低限度地支持默认机制类型:DOM。
注意,调用者必须使用相同
XMLSignatureFactory
实例创建XMLStructure
个特定的XMLSignature
即产生。 如果来自不同提供商的XMLStructure
s或不同机制类型一起使用,行为是未定义的。此外,由该工厂创建的
XMLStructure
s可能包含特定于XMLSignature
状态,并不意图重复使用。从头创建XMLSignatures
一旦创建了
XMLSignatureFactory
,可以通过调用相应的方法来实例化对象。 例如,可以通过调用newReference
方法之一来创建一个Reference
实例。从XML解组XMLSignatures
可替代地,一个
XMLSignature
可以从现有的XML表示通过调用创建unmarshalXMLSignature
方法并传递它的特定机制-XMLValidateContext
包含XML内容实例:DOMValidateContext context = new DOMValidateContext(key, signatureElement); XMLSignature signature = factory.unmarshalXMLSignature(context);
每个XMLSignatureFactory
必须支持所需的XMLValidateContext
类型的工厂类型,但可能支持其他。 DOMXMLSignatureFactory
必须支持DOMValidateContext
对象。将XMLSignatures签名和编组为XML
工厂创建的每个XMLSignature
也可以通过调用XMLSignature
对象的sign
方法并传递给包含签名密钥和编组参数的机制特定的XMLSignContext
对象(见DOMSignContext
),将其编组为XML表示并签名。 例如:DOMSignContext context = new DOMSignContext(privateKey, document); signature.sign(context);
并发访问该类的静态方法保证线程安全。 多个线程可以同时调用此类中定义的静态方法,而不会产生不良影响。
但是,对于此类定义的非静态方法,这不是真的。 除非特定提供者另有说明,否则需要同时访问单个
XMLSignatureFactory
实例的线程应在XMLSignatureFactory
同步并提供必要的锁定。 多个线程每个操作不同的XMLSignatureFactory
实例不需要同步。- 从以下版本开始:
- 1.6
-
-
构造方法摘要
构造方法 Modifier Constructor 描述 protected
XMLSignatureFactory()
默认构造函数,用于由子类调用。
-
方法摘要
所有方法 静态方法 接口方法 抽象方法 具体的方法 Modifier and Type 方法 描述 static XMLSignatureFactory
getInstance()
返回支持默认XML处理机制和表示类型(“DOM”)的XMLSignatureFactory
。static XMLSignatureFactory
getInstance(String mechanismType)
返回支持指定的XML处理机制和表示类型(例如:“DOM”)的XMLSignatureFactory
。static XMLSignatureFactory
getInstance(String mechanismType, String provider)
返回一个XMLSignatureFactory
,它支持由指定的提供者提供的请求的XML处理机制和表示类型(例如:“DOM”)。static XMLSignatureFactory
getInstance(String mechanismType, Provider provider)
返回一个XMLSignatureFactory
,它支持由指定的提供者提供的请求的XML处理机制和表示类型(例如:“DOM”)。KeyInfoFactory
getKeyInfoFactory()
返回KeyInfoFactory
创建KeyInfo
对象。String
getMechanismType()
返回此XMLSignatureFactory
(例如:“DOM”)支持的XML处理机制和表示形式的类型。Provider
getProvider()
返回此XMLSignatureFactory
的提供者。abstract URIDereferencer
getURIDereferencer()
返回对URIDereferencer
引用,默认情况下,它用于取消引用Reference
对象中的URI。abstract boolean
isFeatureSupported(String feature)
指示是否支持指定的功能。abstract CanonicalizationMethod
newCanonicalizationMethod(String algorithm, C14NMethodParameterSpec params)
为指定的算法URI和参数创建一个CanonicalizationMethod
。abstract CanonicalizationMethod
newCanonicalizationMethod(String algorithm, XMLStructure params)
为指定的算法URI和参数创建一个CanonicalizationMethod
。abstract DigestMethod
newDigestMethod(String algorithm, DigestMethodParameterSpec params)
为指定的算法URI和参数创建一个DigestMethod
。abstract Manifest
newManifest(List<? extends Reference> references)
创建一个包含Manifest
的指定列表的Manifest 。abstract Manifest
newManifest(List<? extends Reference> references, String id)
创建Manifest
包含指定的列表Reference
个 S和可选id。abstract Reference
newReference(String uri, DigestMethod dm)
使用指定的URI和摘要方法创建一个Reference
。abstract Reference
newReference(String uri, DigestMethod dm, List<? extends Transform> transforms, String type, String id)
使用指定的参数创建一个Reference
。abstract Reference
newReference(String uri, DigestMethod dm, List<? extends Transform> transforms, String type, String id, byte[] digestValue)
创建具有指定参数的Reference
和预先计算的摘要值。abstract Reference
newReference(String uri, DigestMethod dm, List<? extends Transform> appliedTransforms, Data result, List<? extends Transform> transforms, String type, String id)
创建一个具有指定参数的Reference
。abstract SignatureMethod
newSignatureMethod(String algorithm, SignatureMethodParameterSpec params)
为指定的算法URI和参数创建一个SignatureMethod
。abstract SignatureProperties
newSignatureProperties(List<? extends SignatureProperty> properties, String id)
创建SignatureProperties
包含指定的列表SignatureProperty
个 S和可选id。abstract SignatureProperty
newSignatureProperty(List<? extends XMLStructure> content, String target, String id)
创建一个SignatureProperty
其中包含XMLStructure
的目标URI和可选标识的指定列表。abstract SignedInfo
newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List<? extends Reference> references)
创建具有指定的规范化和签名方法的SignedInfo
以及一个或多个引用的列表。abstract SignedInfo
newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List<? extends Reference> references, String id)
使用指定的参数创建一个SignedInfo
。abstract Transform
newTransform(String algorithm, TransformParameterSpec params)
为指定的算法URI和参数创建一个Transform
。abstract Transform
newTransform(String algorithm, XMLStructure params)
为指定的算法URI和参数创建一个Transform
。abstract XMLObject
newXMLObject(List<? extends XMLStructure> content, String id, String mimeType, String encoding)
从指定的参数创建一个XMLObject
。abstract XMLSignature
newXMLSignature(SignedInfo si, KeyInfo ki)
创建一个XMLSignature
并使用指定的SignedInfo
和KeyInfo
对象的内容进行初始化。abstract XMLSignature
newXMLSignature(SignedInfo si, KeyInfo ki, List<? extends XMLObject> objects, String id, String signatureValueId)
创建一个XMLSignature
并用指定的参数进行初始化。abstract XMLSignature
unmarshalXMLSignature(XMLValidateContext context)
解组新的XMLSignature
从特定于机制的实例XMLValidateContext
实例。abstract XMLSignature
unmarshalXMLSignature(XMLStructure xmlStructure)
解组新的XMLSignature
从特定于机制的实例XMLStructure
实例。
-
-
-
方法详细信息
-
getInstance
public static XMLSignatureFactory getInstance(String mechanismType)
返回支持指定的XML处理机制和表示类型(例如:“DOM”)的XMLSignatureFactory
。此方法使用标准的JCA提供查找机制来查找并实例化
XMLSignatureFactory
实现期望的机构的类型。 它通过注册安全性列表Provider
s,从最优选的Provider
。 从第Provider
新的XMLSignatureFactory
对象中返回支持指定的机制。请注意,注册提供商的列表可以通过
Security.getProviders()
方法检索。- Implementation Note:
-
JDK参考实现另外使用
jdk.security.provider.preferred
Security
属性来确定指定算法的首选提供者顺序。 这可能与Security.getProviders()
返回的提供商的顺序不同。 - 参数
-
mechanismType
- XML处理机制和表示的类型。 有关标准机制类型的列表,请参阅API概述的Service Providers部分。 - 结果
-
一个新的
XMLSignatureFactory
- 异常
-
NullPointerException
- 如果mechanismType
是null
-
NoSuchMechanismException
- 如果否Provider
支持指定机制的XMLSignatureFactory
实现 - 另请参见:
-
Provider
-
getInstance
public static XMLSignatureFactory getInstance(String mechanismType, Provider provider)
返回一个XMLSignatureFactory
,它支持由指定的提供者提供的请求的XML处理机制和表示类型(例如:“DOM”)。 请注意,指定的Provider
对象不必在提供者列表中注册。- 参数
-
mechanismType
- XML处理机制和表示的类型。 有关标准机制类型的列表,请参阅API概述的Service Providers部分。 -
provider
-Provider
对象 - 结果
-
一个新的
XMLSignatureFactory
- 异常
-
NullPointerException
- 如果provider
或mechanismType
是null
-
NoSuchMechanismException
- 如果指定机制的XMLSignatureFactory
实现从指定的Provider
对象中不可用 - 另请参见:
-
Provider
-
getInstance
public static XMLSignatureFactory getInstance(String mechanismType, String provider) throws NoSuchProviderException
返回一个XMLSignatureFactory
,它支持由指定提供者提供的请求的XML处理机制和表示类型(例如:“DOM”)。 指定的提供者必须在安全提供程序列表中注册。请注意,注册提供商的列表可以通过
Security.getProviders()
方法检索。- 参数
-
mechanismType
- XML处理机制和表示的类型。 有关标准机制类型的列表,请参阅API概述的Service Providers部分。 -
provider
- 提供者的字符串名称 - 结果
-
一个新的
XMLSignatureFactory
- 异常
-
NoSuchProviderException
- 如果指定的提供程序未在安全提供程序列表中注册 -
NullPointerException
- 如果provider
或mechanismType
是null
-
NoSuchMechanismException
- 如果指定机制的XMLSignatureFactory
实现不能从指定的提供者 - 另请参见:
-
Provider
-
getInstance
public static XMLSignatureFactory getInstance()
返回支持默认XML处理机制和表示类型(“DOM”)的XMLSignatureFactory
。该方法使用标准的JCA提供程序查找机制来定位和实例化一个默认机制类型的一个
XMLSignatureFactory
实现。 它通过注册安全性列表Provider
s,从最优选的Provider
。 新XMLSignatureFactory
从第一对象Provider
返回支持DOM机制。请注意,可以通过
Security.getProviders()
方法检索已注册提供商的列表。- 结果
-
一个新的
XMLSignatureFactory
- 异常
-
NoSuchMechanismException
- 如果没有Provider
支持DOM机制的XMLSignatureFactory
实现 - 另请参见:
-
Provider
-
getMechanismType
public final String getMechanismType()
返回此XMLSignatureFactory
(例如:“DOM”)支持的XML处理机制和表示的类型。- 结果
-
该
XMLSignatureFactory
支持的XML处理机制类型
-
getProvider
public final Provider getProvider()
返回此XMLSignatureFactory
的提供者。- 结果
-
这个
XMLSignatureFactory
的提供者
-
newXMLSignature
public abstract XMLSignature newXMLSignature(SignedInfo si, KeyInfo ki)
创建一个XMLSignature
并使用指定的SignedInfo
和KeyInfo
对象的内容进行初始化。- 参数
-
si
- 签名的信息 -
ki
- 关键信息(可能是null
) - 结果
-
一个
XMLSignature
- 异常
-
NullPointerException
- 如果si
是null
-
newXMLSignature
public abstract XMLSignature newXMLSignature(SignedInfo si, KeyInfo ki, List<? extends XMLObject> objects, String id, String signatureValueId)
创建一个XMLSignature
并用指定的参数进行初始化。- 参数
-
si
- 签名信息 -
ki
- 关键信息(可能是null
) -
objects
-列表XMLObject
个 S(可能是空的或null
) -
id
- Id(可能是null
) -
signatureValueId
- SignatureValue Id(可能是null
) - 结果
-
一个
XMLSignature
- 异常
-
NullPointerException
- 如果si
是null
-
ClassCastException
- 如果任何objects
不是类型XMLObject
-
newReference
public abstract Reference newReference(String uri, DigestMethod dm)
使用指定的URI和摘要方法创建一个Reference
。- 参数
-
uri
- 参考URI(可能是null
) -
dm
- 摘要方法 - 结果
-
一个
Reference
- 异常
-
IllegalArgumentException
- 如果uri
不符合RFC 2396标准 -
NullPointerException
- 如果dm
是null
-
newReference
public abstract Reference newReference(String uri, DigestMethod dm, List<? extends Transform> transforms, String type, String id)
创建具有指定参数的Reference
。- 参数
-
uri
-基准URI(可以是null
) -
dm
- 摘要方法 -
transforms
-列表Transform
秒。 该列表被防御复制以防止后续修改。 可能是null
或空。 -
type
- 引用类型,作为URI(可以是null
) -
id
-参考ID(可以是null
) - 结果
-
一个
Reference
- 异常
-
ClassCastException
- 如果任何transforms
不是类型Transform
-
IllegalArgumentException
- 如果uri
不符合RFC 2396标准 -
NullPointerException
- 如果dm
是null
-
newReference
public abstract Reference newReference(String uri, DigestMethod dm, List<? extends Transform> transforms, String type, String id, byte[] digestValue)
创建具有指定参数的Reference
和预先计算的摘要值。Reference
前已计算Reference
的摘要值时,此方法很有用。 参见例如, OASIS-DSS (Digital Signature Services)规范。- 参数
-
uri
- 参考URI(可能为null
) -
dm
- 摘要方法 -
transforms
-列表Transform
秒。 该列表被防御复制以防止后续修改。 可能是null
或空。 -
type
- 引用类型,作为URI(可以是null
) -
id
- 参考ID(可能为null
) -
digestValue
- 摘要值。 克隆阵列以防止后续修改。 - 结果
-
一个
Reference
- 异常
-
ClassCastException
- 如果任何一个transforms
不是类型Transform
-
IllegalArgumentException
- 如果uri
不符合RFC 2396标准 -
NullPointerException
- 如果dm
或digestValue
是null
-
newReference
public abstract Reference newReference(String uri, DigestMethod dm, List<? extends Transform> appliedTransforms, Data result, List<? extends Transform> transforms, String type, String id)
使用指定的参数创建一个Reference
。当转换列表已应用于
Reference
时,此方法很有用。 参见例如, OASIS-DSS (Digital Signature Services)规范。当
XMLSignature
包含该引用的XMLSignature
,指定的transforms
(如果非空)将应用于指定的result
。 所述Transforms
所得的元件Reference
元件被设置到的级联appliedTransforms
和transforms
。- 参数
-
uri
- 参考URI(可以是null
) -
dm
- 摘要方法 -
appliedTransforms
- 已经应用的Transform
的列表。 该列表被防御复制以防止后续修改。 该列表必须至少包含一个条目。 -
result
- 处理appliedTransforms
序列的appliedTransforms
-
transforms
- 生成签名时要应用的Transform
的列表。 该列表被防御复制以防止后续修改。 可能是null
或空。 -
type
- 引用类型,作为URI(可以是null
) -
id
- 参考ID(可能为null
) - 结果
-
一个
Reference
- 异常
-
ClassCastException
- 如果任何一个变换(在任一列表中)不是类型Transform
-
IllegalArgumentException
- 如果uri
不符合RFC 2396或appliedTransforms
为空 -
NullPointerException
-如果dm
,appliedTransforms
或者result
为null
-
newSignedInfo
public abstract SignedInfo newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List<? extends Reference> references)
创建具有指定的规范化和签名方法的SignedInfo
以及一个或多个引用的列表。- 参数
-
cm
- 规范化方法 -
sm
- 签名方法 -
references
- 一个或多个Reference
的列表。 该列表被防御复制以防止后续修改。 - 结果
-
一个
SignedInfo
- 异常
-
ClassCastException
- 如果任何引用不是类型Reference
-
IllegalArgumentException
- 如果references
为空 -
NullPointerException
- 如果任何一个参数是null
-
newSignedInfo
public abstract SignedInfo newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List<? extends Reference> references, String id)
创建具有指定参数的SignedInfo
。- 参数
-
cm
- 规范化方法 -
sm
- 签名方法 -
references
- 一个或多个Reference
的列表。 该列表被防御复制以防止后续修改。 -
id
- id(可能是null
) - 结果
-
一个
SignedInfo
- 异常
-
ClassCastException
- 如果任何引用不是类型Reference
-
IllegalArgumentException
- 如果references
为空 -
NullPointerException
-如果cm
,sm
,或references
是null
-
newXMLObject
public abstract XMLObject newXMLObject(List<? extends XMLStructure> content, String id, String mimeType, String encoding)
从指定的参数创建一个XMLObject
。- 参数
-
content
-列表XMLStructure
秒。 该列表被防御复制以防止后续修改。 可能是null
或空。 -
id
-的Id(可以是null
) -
mimeType
- mime类型(可能是null
) -
encoding
- 编码(可能是null
) - 结果
-
一个
XMLObject
- 异常
-
ClassCastException
- 如果content
包含任何不是XMLStructure
类型的条目
-
newManifest
public abstract Manifest newManifest(List<? extends Reference> references)
创建一个包含Manifest
的指定列表的Manifest 。- 参数
-
references
- 一个或多个Reference
的列表。 该列表被防御复制以防止后续修改。 - 结果
-
一个
Manifest
- 异常
-
NullPointerException
- 如果references
是null
-
IllegalArgumentException
- 如果references
为空 -
ClassCastException
- 如果references
包含任何不是Reference
类型的条目
-
newManifest
public abstract Manifest newManifest(List<? extends Reference> references, String id)
创建一个Manifest
其中包含Reference
s和可选id的指定列表。- 参数
-
references
- 一个或多个Reference
的列表。 该列表被防御复制以防止后续修改。 -
id
- id(可能是null
) - 结果
-
一个
Manifest
- 异常
-
NullPointerException
- 如果references
是null
-
IllegalArgumentException
- 如果references
为空 -
ClassCastException
- 如果references
包含任何不是Reference
类型的条目
-
newSignatureProperty
public abstract SignatureProperty newSignatureProperty(List<? extends XMLStructure> content, String target, String id)
创建一个SignatureProperty
其中包含XMLStructure
的目标URI和可选标识的指定列表。- 参数
-
content
- 一个或多个XMLStructure
的列表。 该列表被防御复制以防止后续修改。 -
target
- 此属性应用于的签名的目标URI -
id
- id(可能是null
) - 结果
-
一个
SignatureProperty
- 异常
-
NullPointerException
- 如果content
或target
为null
-
IllegalArgumentException
- 如果content
为空 -
ClassCastException
- 如果content
包含任何不是XMLStructure
类型的条目
-
newSignatureProperties
public abstract SignatureProperties newSignatureProperties(List<? extends SignatureProperty> properties, String id)
创建SignatureProperties
包含指定的列表SignatureProperty
个 S和可选id。- 参数
-
properties
- 一个或多个SignatureProperty
的列表。 该列表被防御复制以防止后续修改。 -
id
- id(可能是null
) - 结果
-
一个
SignatureProperties
- 异常
-
NullPointerException
- 如果properties
是null
-
IllegalArgumentException
- 如果properties
为空 -
ClassCastException
- 如果properties
包含任何不是SignatureProperty
类型的条目
-
newDigestMethod
public abstract DigestMethod newDigestMethod(String algorithm, DigestMethodParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
为指定的算法URI和参数创建一个DigestMethod
。- 参数
-
algorithm
- 标识摘要算法的URI -
params
- 算法特定的摘要参数(可以是null
) - 结果
-
DigestMethod
- 异常
-
InvalidAlgorithmParameterException
- 如果指定的参数不适合所请求的算法 -
NoSuchAlgorithmException
- 如果找不到指定算法的实现 -
NullPointerException
- 如果algorithm
是null
-
newSignatureMethod
public abstract SignatureMethod newSignatureMethod(String algorithm, SignatureMethodParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
为指定的算法URI和参数创建一个SignatureMethod
。- 参数
-
algorithm
- 标识签名算法的URI -
params
- 特定于算法的签名参数(可以是null
) - 结果
-
SignatureMethod
- 异常
-
InvalidAlgorithmParameterException
- 如果指定的参数不适合所请求的算法 -
NoSuchAlgorithmException
- 如果无法找到指定算法的实现 -
NullPointerException
- 如果algorithm
是null
-
newTransform
public abstract Transform newTransform(String algorithm, TransformParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
为指定的算法URI和参数创建一个Transform
。- 参数
-
algorithm
- 标识变换算法的URI -
params
- 算法特定的变换参数(可以是null
) - 结果
-
Transform
- 异常
-
InvalidAlgorithmParameterException
- 如果指定的参数不适合所请求的算法 -
NoSuchAlgorithmException
- 如果找不到指定算法的实现 -
NullPointerException
- 如果algorithm
是null
-
newTransform
public abstract Transform newTransform(String algorithm, XMLStructure params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
为指定的算法URI和参数创建一个Transform
。 这些参数被指定为机制特定的XMLStructure
(例如:DOMStructure
)。 当这些参数是XML格式或没有用于指定参数的标准类时,此方法非常有用。- 参数
-
algorithm
- 标识变换算法的URI -
params
-params
的机制特定的XML结构(如果不需要或可选,可以是null
) - 结果
-
Transform
- 异常
-
ClassCastException
-如果类型params
不适合此XMLSignatureFactory
-
InvalidAlgorithmParameterException
- 如果指定的参数不适合所请求的算法 -
NoSuchAlgorithmException
- 如果找不到指定算法的实现 -
NullPointerException
- 如果algorithm
是null
-
newCanonicalizationMethod
public abstract CanonicalizationMethod newCanonicalizationMethod(String algorithm, C14NMethodParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
为指定的算法URI和参数创建一个CanonicalizationMethod
。- 参数
-
algorithm
- 标识规范化算法的URI -
params
- 算法特定的规范化参数(可以是null
) - 结果
-
CanonicalizationMethod
- 异常
-
InvalidAlgorithmParameterException
- 如果指定的参数不适合所请求的算法 -
NoSuchAlgorithmException
- 如果找不到指定算法的实现 -
NullPointerException
- 如果algorithm
是null
-
newCanonicalizationMethod
public abstract CanonicalizationMethod newCanonicalizationMethod(String algorithm, XMLStructure params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
为指定的算法URI和参数创建一个CanonicalizationMethod
。 这些参数被指定为机制特定的XMLStructure
(例如:DOMStructure
)。 当这些参数是XML格式或没有用于指定参数的标准类时,此方法非常有用。- 参数
-
algorithm
- 标识规范化算法的URI -
params
-params
的机制特定的XML结构(如果不需要或可选的话可以是null
) - 结果
-
CanonicalizationMethod
- 异常
-
ClassCastException
-如果类型params
不适合此XMLSignatureFactory
-
InvalidAlgorithmParameterException
- 如果指定的参数不适用于请求的算法 -
NoSuchAlgorithmException
- 如果找不到指定算法的实现 -
NullPointerException
- 如果algorithm
是null
-
getKeyInfoFactory
public final KeyInfoFactory getKeyInfoFactory()
返回KeyInfoFactory
创建KeyInfo
对象。 返回的KeyInfoFactory
具有与此XMLSignatureFactory
相同的机制类型和提供商。- 结果
-
一个
KeyInfoFactory
- 异常
-
NoSuchMechanismException
- 如果具有相同机制类型和提供程序的KeyFactory
实现不可用
-
unmarshalXMLSignature
public abstract XMLSignature unmarshalXMLSignature(XMLValidateContext context) throws MarshalException
解组新的XMLSignature
从特定于机制的实例XMLValidateContext
实例。- 参数
-
context
-context
的机制特定上下文 - 结果
-
XMLSignature
- 异常
-
NullPointerException
- 如果context
是null
-
ClassCastException
-如果类型context
不适合此工厂 -
MarshalException
- 如果在解组期间发生不可恢复的异常
-
unmarshalXMLSignature
public abstract XMLSignature unmarshalXMLSignature(XMLStructure xmlStructure) throws MarshalException
解组新的XMLSignature
从特定于机制的实例XMLStructure
实例。 如果您只想XMLSignature
(而不是验证)XMLSignature
此方法很有用。- 参数
-
xmlStructure
- 从其中解组签名的机制特定的XML结构 - 结果
-
XMLSignature
- 异常
-
NullPointerException
- 如果xmlStructure
是null
-
ClassCastException
-如果类型xmlStructure
不适合此工厂 -
MarshalException
- 如果在解组期间发生不可恢复的异常
-
isFeatureSupported
public abstract boolean isFeatureSupported(String feature)
指示是否支持指定的功能。- 参数
-
feature
- 功能名称(作为绝对URI) - 结果
-
true
如果支持指定功能,false
否则 - 异常
-
NullPointerException
- 如果feature
是null
-
getURIDereferencer
public abstract URIDereferencer getURIDereferencer()
返回对URIDereferencer
引用,默认情况下,它用于取消引用Reference
对象中的URI。- 结果
-
参考默认
URIDereferencer
(从不null
)
-
-