JavaTM 2 Platform
Standard Ed. 6

javax.xml.crypto.dsig
類別 XMLSignatureFactory

java.lang.Object
  繼承者 javax.xml.crypto.dsig.XMLSignatureFactory

public abstract class XMLSignatureFactory
extends Object

用於從頭創建 XMLSignature 物件或從相應的 XML 表示形式解組 XMLSignature 物件的處理器。

XMLSignatureFactory 型別

每個 XMLSignatureFactory 實例都支持一個特定的 XML 機制型別。要創建 XMLSignatureFactory,則需要調用一個靜態 getInstance 方法,以傳入所需的 XML 機制型別,例如:

XMLSignatureFactory factory = XMLSignatureFactory.getInstance("DOM");

此處理器產生的物件將基於 DOM 並遵守 DOM 互操作性要求,正如 API 概觀的 DOM Mechanism Requirements 部分中所定義的。標準機制型別列表,請參閱 API 概觀的 Service Providers 部分。

使用 Provider 機制來註冊和載入 XMLSignatureFactory 實作。例如,支持 DOM 機制的服務提供者將在 Provider 子類別中指定,如下所示:

put("XMLSignatureFactory.DOM", "org.example.DOMXMLSignatureFactory");
 

實作至少必須支持預設的機制型別:DOM。

注意,調用者必須使用相同的 XMLSignatureFactory 實例來創建要產生的特定 XMLStructureXMLSignature。如果同時使用取自不同提供者或不同機制型別的 XMLStructure,則行為是不明確的。

同時,由此處理器創建的 XMLStructure 可能包含特定於 XMLSignature 的狀態,並且該狀態是不可重用的。

從頭創建 XMLSignature

創建了 XMLSignatureFactory 後,就可以通過調用適當的方法來實例化這些物件。例如,可以通過調用一個 newReference 方法來創建 Reference 實例。

從 XML 解組 XMLSignature

此外,通過調用 unmarshalXMLSignature 方法,並向其傳遞包含 XML 內容的特定於機制的 XMLValidateContext 實例,可以從現有 XML 表示形式創建 XMLSignature

DOMValidateContext context = new DOMValidateContext(key, signatureElement);
XMLSignature signature = factory.unmarshalXMLSignature(context);
 
每個 XMLSignatureFactory 都必須支持該處理器型別所需的 XMLValidateContext 型別,但也可以支持其他型別。DOM XMLSignatureFactory 必須支持 DOMValidateContext 物件。

將 XMLSignatures 簽章並編組到 XML

通過調用 XMLSignature 物件的 sign 方法,並向其傳遞包含簽章密鑰和編組參數(參見 DOMSignContext)的特定於機制的 XMLSignContext 物件,可以將處理器創建的每個 XMLSignature 編組為 XML 表示形式並對其進行簽章。例如:
DOMSignContext context = new DOMSignContext(privateKey, document);
signature.sign(context);
 
共時存取

可保證此類別的靜態方法是執行緒安全的。多個執行緒可以共時調用此類別中所定義的靜態方法,而不會產生不良效果。

但是,對於此類別所定義的非靜態方法並非如此。除非具體的提供者另行指定,否則需要共時存取單個 XMLSignatureFactory 實例的多個執行緒應該在它們之間實作同步並提供所需的鎖定。對於每個執行緒都操作一個不同 XMLSignatureFactory 實例的多個執行緒而言,無需實作同步。

從以下版本開始:
1.6

建構子摘要
protected XMLSignatureFactory()
          預設的建構子,由子類別調用。
 
方法摘要
static XMLSignatureFactory getInstance()
          返回支持預設的 XML 處理機制和表示形式型別(“DOM”) 的 XMLSignatureFactory
static XMLSignatureFactory getInstance(String mechanismType)
          返回 XMLSignatureFactory,它支持指定的 XML 處理機制和表示形式型別(比如:“DOM”)。
static XMLSignatureFactory getInstance(String mechanismType, Provider provider)
          返回支持請求的 XML 處理機制和表示形式型別(比如:“DOM”)的 XMLSignatureFactory,由指定提供者提供。
static XMLSignatureFactory getInstance(String mechanismType, String provider)
          返回支持所需的 XML 處理機制和表示形式型別(比如:“DOM”)的 XMLSignatureFactory,由指定提供者提供。
 KeyInfoFactory getKeyInfoFactory()
          返回創建 KeyInfo 物件的 KeyInfoFactory
 String getMechanismType()
          返回此 XMLSignatureFactory 支持的 XML 處理機制型別和表示形式型別(比如:“DOM”)。
 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 references)
          創建包含指定的 Reference 列表的 Manifest
abstract  Manifest newManifest(List references, String id)
          創建包含指定的 Reference 列表和可選 id 的 Manifest
abstract  Reference newReference(String uri, DigestMethod dm)
          創建帶指定 URI 和摘要方法的 Reference
abstract  Reference newReference(String uri, DigestMethod dm, List appliedTransforms, Data result, List transforms, String type, String id)
          創建帶指定參數的 Reference
abstract  Reference newReference(String uri, DigestMethod dm, List transforms, String type, String id)
          創建帶指定參數的 Reference
abstract  Reference newReference(String uri, DigestMethod dm, List transforms, String type, String id, byte[] digestValue)
          創建帶指定參數和預計算的摘要值的 Reference
abstract  SignatureMethod newSignatureMethod(String algorithm, SignatureMethodParameterSpec params)
          針對指定的演算法 URI 和參數創建 SignatureMethod
abstract  SignatureProperties newSignatureProperties(List properties, String id)
          創建包含指定的 SignatureProperty 列表和可選 id 的 SignatureProperties
abstract  SignatureProperty newSignatureProperty(List content, String target, String id)
          創建包含指定的 XMLStructure 列表、目標 URI 和可選 id 的SignatureProperty
abstract  SignedInfo newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List references)
          創建帶指定的規範化方法和簽章方法、以及一個或多個參考的列表的 SignedInfo
abstract  SignedInfo newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List 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 content, String id, String mimeType, String encoding)
          根據指定參數創建 XMLObject
abstract  XMLSignature newXMLSignature(SignedInfo si, KeyInfo ki)
          創建一個 XMLSignature,並使用指定的 SignedInfoKeyInfo 物件的內容對其進行初始化。
abstract  XMLSignature newXMLSignature(SignedInfo si, KeyInfo ki, List objects, String id, String signatureValueId)
          創建一個 XMLSignature,並使用指定的參數對其進行初始化。
abstract  XMLSignature unmarshalXMLSignature(XMLStructure xmlStructure)
          從特定於機制的 XMLStructure 實例解組新的 XMLSignature 實例。
abstract  XMLSignature unmarshalXMLSignature(XMLValidateContext context)
          從特定於機制的 XMLValidateContext 實例解組新的 XMLSignature 實例。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

建構子詳細資訊

XMLSignatureFactory

protected XMLSignatureFactory()
預設的建構子,由子類別調用。

方法詳細資訊

getInstance

public static XMLSignatureFactory getInstance(String mechanismType)
返回 XMLSignatureFactory,它支持指定的 XML 處理機制和表示形式型別(比如:“DOM”)。

此方法使用標準的 JCA 提供者尋找機制來尋找並實例化所需機制型別的 XMLSignatureFactory 實作。它將從首選的 Provider 開始,遍歷已註冊的安全 Provider 的列表。返回取自第一個支持指定機制的 Provider 中的新 XMLSignatureFactory 物件。

注意,已註冊提供者的列表可以通過 Security.getProviders() 方法獲得。

參數:
mechanismType - XML 處理機制和表示形式的型別。有關標準機制型別列表,請參閱 API 概觀的 Service Providers 部分。
返回:
新的 XMLSignatureFactory
拋出:
NullPointerException - 如果 mechanismTypenull
NoSuchMechanismException - 如果沒有任何 Provider 支持指定機制的 XMLSignatureFactory 實作
另請參見:
Provider

getInstance

public static XMLSignatureFactory getInstance(String mechanismType,
                                              Provider provider)
返回支持請求的 XML 處理機制和表示形式型別(比如:“DOM”)的 XMLSignatureFactory,由指定提供者提供。注意,指定的 Provider 物件不必已經在提供者列表中註冊。

參數:
mechanismType - XML 處理機制和表示形式的型別。有關標準機制型別列表,請參閱 API 概觀的 Service Providers 部分。
provider - Provider 物件
返回:
新的 XMLSignatureFactory
拋出:
NullPointerException - 如果 providermechanismTypenull
NoSuchMechanismException - 如果不能從指定的 Provider 物件得到指定機制的 XMLSignatureFactory 實作
另請參見:
Provider

getInstance

public static XMLSignatureFactory getInstance(String mechanismType,
                                              String provider)
                                       throws NoSuchProviderException
返回支持所需的 XML 處理機制和表示形式型別(比如:“DOM”)的 XMLSignatureFactory,由指定提供者提供。指定的提供者必須已在安全提供者列表中註冊。

注意,已註冊提供者的列表可以通過 Security.getProviders() 方法獲得。

參數:
mechanismType - XML 處理機制和表示形式的型別。有關標準機制型別列表,請參閱 API 概觀的 Service Providers 部分。
provider - 提供者的字元串名稱
返回:
新的 XMLSignatureFactory
拋出:
NoSuchProviderException - 如果指定的提供者沒有在安全提供者列表中進行註冊
NullPointerException - 如果 providermechanismTypenull
NoSuchMechanismException - 如果從指定的提供者不能得到指定機制的 XMLSignatureFactory 實作
另請參見:
Provider

getInstance

public static XMLSignatureFactory getInstance()
返回支持預設的 XML 處理機制和表示形式型別(“DOM”) 的 XMLSignatureFactory

此方法使用標準的 JCA 提供者尋找機制來尋找並實例化預設機制型別的 XMLSignatureFactory 實作。它將從首選的 Provider 開始,遍歷已註冊的安全 Provider 的列表。返回取自第一個支持 DOM 機制的Provider 中的新 XMLSignatureFactory 物件。

注意,已註冊提供者的列表可以通過 Security.getProviders() 方法獲得。

返回:
新的 XMLSignatureFactory
拋出:
NoSuchMechanismException - 如果沒有任何 Provider 支持 DOM 機制的 XMLSignatureFactory 實作
另請參見:
Provider

getMechanismType

public final String getMechanismType()
返回此 XMLSignatureFactory 支持的 XML 處理機制型別和表示形式型別(比如:“DOM”)。

返回:
XMLSignatureFactory 支持的 XML 處理機制型別

getProvider

public final Provider getProvider()
返回此 XMLSignatureFactory 的提供者。

返回:
XMLSignatureFactory 的提供者

newXMLSignature

public abstract XMLSignature newXMLSignature(SignedInfo si,
                                             KeyInfo ki)
創建一個 XMLSignature,並使用指定的 SignedInfoKeyInfo 物件的內容對其進行初始化。

參數:
si - 簽章資訊
ki - 密鑰資訊(可能為 null
返回:
XMLSignature
拋出:
NullPointerException - 如果 sinull

newXMLSignature

public abstract XMLSignature newXMLSignature(SignedInfo si,
                                             KeyInfo ki,
                                             List objects,
                                             String id,
                                             String signatureValueId)
創建一個 XMLSignature,並使用指定的參數對其進行初始化。

參數:
si - 簽章資訊
ki - 密鑰資訊(可以為 null
objects - XMLObject 列表(可以為空或 null
id - Id(可以為 null
signatureValueId - SignatureValue Id(可以為 null
返回:
XMLSignature
拋出:
NullPointerException - 如果 sinull
ClassCastException - 如果有些 objects 的型別不是 XMLObject

newReference

public abstract Reference newReference(String uri,
                                       DigestMethod dm)
創建帶指定 URI 和摘要方法的 Reference

參數:
uri - 參考 URI(可以為 null
dm - 摘要方法
返回:
Reference
拋出:
IllegalArgumentException - 如果 uri 與 RFC 2396 不相容
NullPointerException - 如果 dmnull

newReference

public abstract Reference newReference(String uri,
                                       DigestMethod dm,
                                       List 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 - 如果 dmnull

newReference

public abstract Reference newReference(String uri,
                                       DigestMethod dm,
                                       List 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 - 如果 dmdigestValuenull

newReference

public abstract Reference newReference(String uri,
                                       DigestMethod dm,
                                       List appliedTransforms,
                                       Data result,
                                       List transforms,
                                       String type,
                                       String id)
創建帶指定參數的 Reference

在已將轉換列表應用於 Reference 時,此方法很有用。例如,請參閱 OASIS-DSS(數位簽章服務)規範。

產生了包含此參考的 XMLSignature 之後,將指定的 transforms(如果為非空(null))應用於指定的 result。所得 Reference 元素的 Transforms 元素被設置為 appliedTransformstransforms 的串聯。

參數:
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 - 如果 dmappliedTransformsresultnull

newSignedInfo

public abstract SignedInfo newSignedInfo(CanonicalizationMethod cm,
                                         SignatureMethod sm,
                                         List references)
創建帶指定的規範化方法和簽章方法、以及一個或多個參考的列表的 SignedInfo

參數:
cm - 規範化方法
sm - 簽章方法
references - 一個列表,由一個或多個 Reference 組成。需要複製該列表,以防止隨後被修改。
返回:
SignedInfo
拋出:
ClassCastException - 如果任何參考的型別不是 Reference
IllegalArgumentException - 如果 references 為空
NullPointerException - 如果任何參數為 null

newSignedInfo

public abstract SignedInfo newSignedInfo(CanonicalizationMethod cm,
                                         SignatureMethod sm,
                                         List references,
                                         String id)
創建帶指定參數的 SignedInfo

參數:
cm - 規範化方法
sm - 簽章方法
references - 一個列表,由一個或多個 Reference 組成。需要複製該列表,以防止隨後被修改。
id - id(可以為 null
返回:
SignedInfo
拋出:
ClassCastException - 如果任何參考的型別不是 Reference
IllegalArgumentException - 如果 references 為空
NullPointerException - 如果 cmsmreferencesnull

newXMLObject

public abstract XMLObject newXMLObject(List 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 references)
創建包含指定的 Reference 列表的 Manifest

參數:
references - 一個列表,由一個或多個 Reference 組成。需要複製該列表,以防止隨後被修改。
返回:
Manifest
拋出:
NullPointerException - 如果 referencesnull
IllegalArgumentException - 如果 references 為空
ClassCastException - 如果 references 套件含任何型別不是 Reference 的條目

newManifest

public abstract Manifest newManifest(List references,
                                     String id)
創建包含指定的 Reference 列表和可選 id 的 Manifest

參數:
references - 一個列表,由一個或多個 Reference 組成。需要複製該列表,以防止隨後被修改。
id - id(可以為 null
返回:
Manifest
拋出:
NullPointerException - 如果 referencesnull
IllegalArgumentException - 如果 references 為空
ClassCastException - 如果 references 套件含任何型別不是 Reference 的條目

newSignatureProperty

public abstract SignatureProperty newSignatureProperty(List content,
                                                       String target,
                                                       String id)
創建包含指定的 XMLStructure 列表、目標 URI 和可選 id 的SignatureProperty

參數:
content - 一個列表,由一個或多個 XMLStructure 組成。需要複製該列表,以防止隨後被修改。
target - 使用此屬性的 Signature 的目標 URI
id - id(可以為 null
返回:
SignatureProperty
拋出:
NullPointerException - 如果 contenttargetnull
IllegalArgumentException - 如果 content 為空
ClassCastException - 如果 content 套件含任何型別不是 XMLStructure 的條目

newSignatureProperties

public abstract SignatureProperties newSignatureProperties(List properties,
                                                           String id)
創建包含指定的 SignatureProperty 列表和可選 id 的 SignatureProperties

參數:
properties - 一個列表,由一個或多個 SignatureProperty 組成。需要複製該列表,以防止隨後被修改。
id - id(可以為 null
返回:
SignatureProperties
拋出:
NullPointerException - 如果 propertiesnull
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 - 如果 algorithmnull

newSignatureMethod

public abstract SignatureMethod newSignatureMethod(String algorithm,
                                                   SignatureMethodParameterSpec params)
                                            throws NoSuchAlgorithmException,
                                                   InvalidAlgorithmParameterException
針對指定的演算法 URI 和參數創建 SignatureMethod

參數:
algorithm - 標識簽章演算法的 URI
params - 特定於演算法的簽章參數(可以為 null
返回:
SignatureMethod
拋出:
InvalidAlgorithmParameterException - 如果指定的參數不適合請求的演算法
NoSuchAlgorithmException - 如果無法找到指定演算法的實作
NullPointerException - 如果 algorithmnull

newTransform

public abstract Transform newTransform(String algorithm,
                                       TransformParameterSpec params)
                                throws NoSuchAlgorithmException,
                                       InvalidAlgorithmParameterException
針對指定的演算法 URI 和參數創建 Transform

參數:
algorithm - 標識轉換演算法的 URI
params - 特定於演算法的轉換參數(可以為 null
返回:
Transform
拋出:
InvalidAlgorithmParameterException - 如果指定的參數不適合請求的演算法
NoSuchAlgorithmException - 如果無法找到指定演算法的實作
NullPointerException - 如果 algorithmnull

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 - 如果 algorithmnull

newCanonicalizationMethod

public abstract CanonicalizationMethod newCanonicalizationMethod(String algorithm,
                                                                 C14NMethodParameterSpec params)
                                                          throws NoSuchAlgorithmException,
                                                                 InvalidAlgorithmParameterException
針對指定的演算法 URI 和參數創建 CanonicalizationMethod

參數:
algorithm - 標識規範化演算法的 URI
params - 特定於演算法的規範化參數(可以為 null
返回:
CanonicalizationMethod
拋出:
InvalidAlgorithmParameterException - 如果指定的參數不適合請求的演算法
NoSuchAlgorithmException - 如果無法找到指定演算法的實作
NullPointerException - 如果 algorithmnull

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 - 如果 algorithmnull

getKeyInfoFactory

public final KeyInfoFactory getKeyInfoFactory()
返回創建 KeyInfo 物件的 KeyInfoFactory。返回的 KeyInfoFactory 具有與此 XMLSignatureFactory 相同的機制型別和提供者。

返回:
KeyInfoFactory
拋出:
NoSuchMechanismException - 如果具有相同機制型別和提供者的 KeyFactory 實作不可用

unmarshalXMLSignature

public abstract XMLSignature unmarshalXMLSignature(XMLValidateContext context)
                                            throws MarshalException
從特定於機制的 XMLValidateContext 實例解組新的 XMLSignature 實例。

參數:
context - 從中解組簽章的特定於機制的上下文
返回:
XMLSignature
拋出:
NullPointerException - 如果 contextnull
ClassCastException - 如果 context 型別不適合此處理器
MarshalException - 如果解組過程中發生不可恢復的異常

unmarshalXMLSignature

public abstract XMLSignature unmarshalXMLSignature(XMLStructure xmlStructure)
                                            throws MarshalException
從特定於機制的 XMLStructure 實例解組新的 XMLSignature 實例。如果只想解組(且不驗證) XMLSignature 時,此方法很有用。

參數:
xmlStructure - 從中解組簽章的特定於機制的 XML 結構
返回:
XMLSignature
拋出:
NullPointerException - 如果 xmlStructurenull
ClassCastException - 如果 xmlStructure 型別不適合此處理器
MarshalException - 如果解組過程中發生不可恢復的異常。

isFeatureSupported

public abstract boolean isFeatureSupported(String feature)
指示是否支持指定的功能。

參數:
feature - 功能名稱(作為抽象 URI)
返回:
如果支持指定功能,則返回 true,否則返回 false
拋出:
NullPointerException - 如果 featurenull

getURIDereferencer

public abstract URIDereferencer getURIDereferencer()
返回對 URIDereferencer 的參考,預設情況下該參考用於取消 Reference 物件中對 URI 的參考。

返回:
對預設 URIDereferencer 的參考(不能為 null

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only