XMLSignature
对象的工厂,或者从相应的XML表示中取消编组一个XMLSignature
对象。
XMLSignatureFactory 类型
XMLSignatureFactory
的每个实例支持特定的XML机制类型。要创建一个XMLSignatureFactory
,请调用其中一个静态的getInstance
方法,传入所需的XML机制类型,例如:
XMLSignatureFactory factory = XMLSignatureFactory.getInstance("DOM");
此工厂生成的对象将基于DOM,并遵守DOM机制要求中定义的DOM互操作性要求。请参阅Java安全标准算法名称规范中的XMLSignatureFactory
部分,了解标准机制类型的列表。
XMLSignatureFactory
实现是通过Provider
机制进行注册和加载的。例如,支持DOM机制的服务提供者将在Provider
子类中指定为:
put("XMLSignatureFactory.DOM", "org.example.DOMXMLSignatureFactory");
实现必须至少支持默认的机制类型:DOM。
请注意,调用者必须使用相同的XMLSignatureFactory
实例来创建要生成的特定XMLSignature
的XMLStructure
。如果使用来自不同提供者或不同机制类型的XMLStructure
一起使用,则行为是未定义的。
此工厂创建的XMLStructure
可能包含特定于XMLSignature
的状态,并且不打算重复使用。
从头开始创建XMLSignatures
创建了XMLSignatureFactory
之后,可以通过调用适当的方法来实例化对象。例如,可以通过调用一个newReference
方法来创建一个Reference
实例。
从XML中取消编组XMLSignatures
或者,可以通过调用unmarshalXMLSignature
方法,并传递一个特定于机制的包含XML内容的XMLValidateContext
实例来从现有的XML表示中创建一个XMLSignature
:
DOMValidateContext context = new DOMValidateContext(key, signatureElement); XMLSignature signature = factory.unmarshalXMLSignature(context);每个
XMLSignatureFactory
必须支持该工厂类型所需的XMLValidateContext
类型,但可以支持其他类型。DOM XMLSignatureFactory
必须支持DOMValidateContext
对象。
将XMLSignatures签名并编组为XML
工厂创建的每个XMLSignature
也可以被编组为XML表示并签名,方法是调用XMLSignature
对象的sign
方法,并传递一个特定于机制的包含签名密钥和编组参数的XMLSignContext
对象(参见DOMSignContext
)。例如:
DOMSignContext context = new DOMSignContext(privateKey, document); signature.sign(context);并发访问
此类的静态方法保证是线程安全的。多个线程可以同时调用此类中定义的静态方法,不会产生任何不良影响。
但对于此类定义的非静态方法来说并非如此。除非特定提供者另有说明,需要同时访问单个XMLSignatureFactory
实例的线程应该在彼此之间同步并提供必要的锁定。每个操作不同XMLSignatureFactory
实例的多个线程不需要同步。
- 自:
- 1.6
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic XMLSignatureFactory
返回支持默认XML处理机制和表示类型("DOM")的XMLSignatureFactory
。static XMLSignatureFactory
getInstance
(String mechanismType) 返回支持指定的XML处理机制和表示类型(例如:"DOM")的XMLSignatureFactory
。static XMLSignatureFactory
getInstance
(String mechanismType, String provider) 返回由指定提供者提供的支持请求的XML处理机制和表示类型(例如:"DOM")的XMLSignatureFactory
。static XMLSignatureFactory
getInstance
(String mechanismType, Provider provider) 返回由指定提供者提供的支持请求的XML处理机制和表示类型(例如:"DOM")的XMLSignatureFactory
。final KeyInfoFactory
返回创建KeyInfo
对象的KeyInfoFactory
。final String
返回此XMLSignatureFactory
支持的XML处理机制和表示类型(例如:"DOM")的类型。final Provider
返回此XMLSignatureFactory
的提供者。abstract URIDereferencer
返回用于默认解除Reference
对象中URI的URIDereferencer
的引用。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) 包含指定的Reference
列表的Manifest
。abstract Manifest
newManifest
(List<? extends Reference> references, String id) 包含指定的Reference
列表和可选ID的Manifest
。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) 包含指定的SignatureProperty
列表和可选ID的SignatureProperties
。abstract SignatureProperty
newSignatureProperty
(List<? extends XMLStructure> content, String target, String id) 包含指定的XMLStructure
列表、目标URI和可选ID的SignatureProperty
。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) 从特定于机制的XMLValidateContext
实例中取消编组一个新的XMLSignature
实例。abstract XMLSignature
unmarshalXMLSignature
(XMLStructure xmlStructure) 从特定于机制的XMLStructure
实例中取消编组一个新的XMLSignature
实例。
-
Constructor Details
-
XMLSignatureFactory
protected XMLSignatureFactory()默认构造函数,供子类调用。
-
-
Method Details
-
getInstance
返回支持指定的XML处理机制和表示类型(例如:"DOM")的XMLSignatureFactory
。此方法使用标准的JCA提供者查找机制来定位和实例化所需机制类型的
XMLSignatureFactory
实现。它遍历注册的安全Provider
列表,从最首选的Provider
开始。将返回来自支持指定机制的第一个Provider
的新XMLSignatureFactory
对象。请注意,注册的提供者列表可以通过
Security.getProviders()
方法检索。- 实现注意事项:
-
JDK参考实现还使用
jdk.security.provider.preferred
Security
属性来确定指定算法的首选提供程序顺序。这可能与由Security.getProviders()
返回的提供程序顺序不同。 - 参数:
-
mechanismType
- XML处理机制和表示类型。请参阅Java安全标准算法名称规范中的XMLSignatureFactory
部分,了解标准机制类型的列表。 - 返回:
-
一个新的
XMLSignatureFactory
- 抛出:
-
NullPointerException
- 如果mechanismType
为null
-
NoSuchMechanismException
- 如果没有Provider
支持指定机制的XMLSignatureFactory
实现 - 参见:
-
getInstance
返回一个支持请求的XML处理机制和表示类型(例如:"DOM")的XMLSignatureFactory
,由指定的提供程序提供。请注意,指定的Provider
对象不必在提供程序列表中注册。- 参数:
-
mechanismType
- XML处理机制和表示类型。请参阅Java安全标准算法名称规范中的XMLSignatureFactory
部分,了解标准机制类型的列表。 -
provider
-Provider
对象 - 返回:
-
一个新的
XMLSignatureFactory
- 抛出:
-
NullPointerException
- 如果provider
或mechanismType
为null
-
NoSuchMechanismException
- 如果指定机制的XMLSignatureFactory
实现不可从指定的Provider
对象获取 - 参见:
-
getInstance
public static XMLSignatureFactory getInstance(String mechanismType, String provider) throws NoSuchProviderException 返回一个支持请求的XML处理机制和表示类型(例如:"DOM")的XMLSignatureFactory
,由指定的提供程序提供。指定的提供程序必须在安全提供程序列表中注册。请注意,注册的提供程序列表可以通过
Security.getProviders()
方法检索。- 参数:
-
mechanismType
- XML处理机制和表示类型。请参阅Java安全标准算法名称规范中的XMLSignatureFactory
部分,了解标准机制类型的列表。 -
provider
- 提供程序的字符串名称 - 返回:
-
一个新的
XMLSignatureFactory
- 抛出:
-
NoSuchProviderException
- 如果指定的提供程序未在安全提供程序列表中注册 -
NullPointerException
- 如果provider
或mechanismType
为null
-
NoSuchMechanismException
- 如果指定提供程序中不存在指定机制的XMLSignatureFactory
实现 - 参见:
-
getInstance
返回一个支持默认XML处理机制和表示类型("DOM")的XMLSignatureFactory
。此方法使用标准JCA提供程序查找机制来定位和实例化默认机制类型的
XMLSignatureFactory
实现。它遍历注册的安全Provider
列表,从最首选的Provider
开始。返回支持DOM机制的第一个Provider
的新XMLSignatureFactory
对象。请注意,注册的提供程序列表可以通过
Security.getProviders()
方法检索。- 返回:
-
一个新的
XMLSignatureFactory
- 抛出:
-
NoSuchMechanismException
- 如果没有Provider
支持DOM机制的XMLSignatureFactory
实现 - 参见:
-
getMechanismType
返回此XMLSignatureFactory
支持的XML处理机制和表示类型(例如:"DOM")的类型。- 返回:
-
此
XMLSignatureFactory
支持的XML处理机制类型
-
getProvider
返回此XMLSignatureFactory
的提供程序。- 返回:
-
此
XMLSignatureFactory
的提供程序
-
newXMLSignature
创建一个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
列表(可以为空或null
) -
id
- Id(可以为null
) -
signatureValueId
- SignatureValue Id(可以为null
) - 返回:
-
一个
XMLSignature
- 抛出:
-
NullPointerException
- 如果si
为null
-
ClassCastException
- 如果任何objects
不是XMLObject
类型
-
newReference
创建一个具有指定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
的摘要值先前已计算时,此方法很有用。例如,请参阅OASIS-DSS(数字签名服务)规范。- 参数:
-
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
。当一个包含此引用的
XMLSignature
被生成时,指定的transforms
(如果非空)将被应用于指定的result
。生成的Reference
元素的Transforms
元素设置为appliedTransforms
和transforms
的连接。- 参数:
-
uri
- 引用URI(可以为null
) -
dm
- 摘要方法 -
appliedTransforms
- 一个已应用的Transform
列表。该列表进行了防御性复制,以防止后续修改。列表必须至少包含一个条目。 -
result
- 处理已应用的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
创建一个包含指定Reference
列表的Manifest
。- 参数:
-
references
- 一个或多个Reference
列表。该列表进行了防御性复制,以防止后续修改。 - 返回:
-
一个
Manifest
- 抛出:
-
NullPointerException
- 如果references
为null
-
IllegalArgumentException
- 如果references
为空 -
ClassCastException
- 如果references
包含任何不是Reference
类型的条目
-
newManifest
创建一个包含指定Reference
列表和可选ID的Manifest
。- 参数:
-
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) 创建一个包含指定XMLStructure
列表、目标URI和可选ID的SignatureProperty
。- 参数:
-
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) 创建一个包含指定SignatureProperty
列表和可选ID的SignatureProperties
。- 参数:
-
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
- 从中解组参数的机制特定的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
- 从中解组参数的机制特定的XML结构(如果不需要或可选,可以为null
) - 返回:
-
CanonicalizationMethod
- 抛出:
-
ClassCastException
- 如果params
的类型不适用于此XMLSignatureFactory
-
InvalidAlgorithmParameterException
- 如果指定的参数不适用于请求的算法 -
NoSuchAlgorithmException
- 如果找不到指定算法的实现 -
NullPointerException
- 如果algorithm
为null
-
getKeyInfoFactory
返回一个创建KeyInfo
对象的KeyInfoFactory
。返回的KeyInfoFactory
具有与此XMLSignatureFactory
相同的机制类型和提供程序。- 返回:
-
一个
KeyInfoFactory
- 抛出:
-
NoSuchMechanismException
- 如果没有可用于相同机制类型和提供程序的KeyFactory
实现
-
unmarshalXMLSignature
public abstract XMLSignature unmarshalXMLSignature(XMLValidateContext context) throws MarshalException 从机制特定的XMLValidateContext
实例中解组一个新的XMLSignature
实例。- 参数:
-
context
- 从中解组签名的机制特定上下文 - 返回:
-
XMLSignature
- 抛出:
-
NullPointerException
- 如果context
为null
-
ClassCastException
- 如果context
的类型不适用于此工厂 -
MarshalException
- 如果在解组过程中发生不可恢复的异常
-
unmarshalXMLSignature
public abstract XMLSignature unmarshalXMLSignature(XMLStructure xmlStructure) throws MarshalException 从机制特定的XMLStructure
实例中解组一个新的XMLSignature
实例。如果只想解组(而不验证)XMLSignature
,则此方法很有用。- 参数:
-
xmlStructure
- 从中解组签名的机制特定的XML结构 - 返回:
-
XMLSignature
- 抛出:
-
NullPointerException
- 如果xmlStructure
为null
-
ClassCastException
- 如果xmlStructure
的类型不适用于此工厂 -
MarshalException
- 如果在解组过程中发生不可恢复的异常
-
isFeatureSupported
指示是否支持指定的功能。- 参数:
-
feature
- 功能名称(作为绝对URI) - 返回:
-
如果支持指定的功能,则返回
true
,否则返回false
- 抛出:
-
NullPointerException
- 如果feature
为null
-
getURIDereferencer
返回一个引用,该引用用于默认解除Reference
对象中的URI。- 返回:
-
默认
URIDereferencer
的引用(永不为null
)
-