Класс XMLSignatureFactory
public abstract class XMLSignatureFactory extends Object
XMLSignature с нуля или для разархивирования объекта XMLSignature из соответствующего XML-представления. Тип XMLSignatureFactory
Каждый экземпляр XMLSignatureFactory поддерживает определённый тип XML-механизма. Для создания XMLSignatureFactory вызовите один из статических методов getInstance, передав требуемый тип XML-механизма, например:
XMLSignatureFactory factory = XMLSignatureFactory.getInstance("DOM");
Создаваемые этой фабрикой объекты будут основаны на DOM и будут соответствовать требованиям взаимозаменяемости DOM, как определено в Требованиях к механизму DOM. Список стандартных типов механизмов см. в разделе XMLSignatureFactory спецификации Стандартных имен алгоритмов Java Security.
XMLSignatureFactory реализации регистрируются и загружаются с помощью механизма Provider. Например, поставщик сервисов, поддерживающий механизм DOM, будет указан в подклассе Provider следующим образом:
put("XMLSignatureFactory.DOM", "org.example.DOMXMLSignatureFactory");
Реализация ДОЛЖНА поддерживать по умолчанию тип механизма: DOM.
Обратите внимание, что вызывающий метод должен использовать тот же экземпляр XMLSignatureFactory для создания XMLStructure конкретного XMLSignature, который должен быть сгенерирован. Поведение не определено, если XMLStructure от разных поставщиков или разных типов механизмов используются совместно.
Также, создаваемые этой фабрикой XMLStructure могут содержать состояние, специфичное для XMLSignature, и не предназначены для повторного использования.
Создание XMLSignatures с нуля
После создания XMLSignatureFactory, объекты могут быть созданы путём вызова соответствующего метода. Например, экземпляр Reference может быть создан, вызвав один из методов newReference.
Разархивирование XMLSignatures из XML
В качестве альтернативы, XMLSignature можно создать из существующего XML-представления, вызвав метод unmarshalXMLSignature и передав ему механизм-специфичный экземпляр XMLValidateContext, содержащий XML-содержимое:
DOMValidateContext context = new DOMValidateContext(key, signatureElement); XMLSignature signature = factory.unmarshalXMLSignature(context);Каждый
XMLSignatureFactory должен поддерживать требуемые XMLValidateContext типы для этого типа фабрики, но может поддерживать и другие. DOM XMLSignatureFactory должен поддерживать объекты DOMValidateContext. Подпись и сериализация XMLSignatures в XML
КаждыйXMLSignature, созданный фабрикой, также может быть сериализован в XML-представление и подписан путём вызова метода sign объекта XMLSignature и передачи ему механизм-специфичного объекта XMLSignContext, содержащего ключ для подписи и параметры сериализации (см. DOMSignContext). Например:
DOMSignContext context = new DOMSignContext(privateKey, document);
signature.sign(context);
Доступ к данным в нескольких потоках Статические методы этого класса гарантируют потокобезопасность. Несколько потоков могут одновременно вызывать статические методы, определённые в этом классе, без каких-либо негативных последствий.
Однако это не относится к методам, не являющимся статическими, определёнными этим классом. Если не указано иначе в документации конкретного поставщика, потоки, которым требуется одновременный доступ к одному экземпляру XMLSignatureFactory, должны синхронизироваться между собой и обеспечить необходимую блокировку. Несколько потоков, работающих с различными экземплярами XMLSignatureFactory, синхронизацию не требуют.
- Since:
- 1.6
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор по умолчанию, для вызова подклассами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static XMLSignatureFactory |
getInstance() |
Возвращает XMLSignatureFactory, который поддерживает механизм обработки XML по умолчанию и тип представления ("DOM"). |
static XMLSignatureFactory |
getInstance |
Возвращает XMLSignatureFactory, который поддерживает указанный механизм обработки XML и тип представления (например, "DOM"). |
static XMLSignatureFactory |
getInstance |
Возвращает XMLSignatureFactory, который поддерживает запрашиваемый механизм обработки XML и тип представления (например, "DOM"), предоставленные указанным поставщиком. |
static XMLSignatureFactory |
getInstance |
Возвращает XMLSignatureFactory, который поддерживает запрашиваемый механизм обработки XML и тип представления (например, "DOM"), предоставленные указанным поставщиком. |
final KeyInfoFactory |
getKeyInfoFactory() |
Возвращает KeyInfoFactory, который создаёт KeyInfo объекты. |
final String |
getMechanismType() |
Возвращает тип механизма обработки XML и поддерживаемого представления, используемого данным XMLSignatureFactory (например, "DOM"). |
final Provider |
getProvider() |
Возвращает поставщика данного XMLSignatureFactory. |
abstract URIDereferencer |
getURIDereferencer() |
Возвращает ссылку на URIDereferencer, используемый по умолчанию для разыменования URI в объектах Reference. |
abstract boolean |
isFeatureSupported |
Указывает, поддерживается ли указанная функция. |
abstract CanonicalizationMethod |
newCanonicalizationMethod |
Создаёт CanonicalizationMethod для указанного URI алгоритма и параметров. |
abstract CanonicalizationMethod |
newCanonicalizationMethod |
Создаёт CanonicalizationMethod для указанного URI алгоритма и параметров. |
abstract DigestMethod |
newDigestMethod |
Создаёт DigestMethod для указанного URI алгоритма и параметров. |
abstract Manifest |
newManifest |
Создаёт Manifest, содержащий указанный список Reference. |
abstract Manifest |
newManifest |
Создаёт Manifest, содержащий указанный список Reference и необязательный идентификатор. |
abstract Reference |
newReference |
Создаёт Reference с указанным URI и методом дайджеста. |
abstract Reference |
newReference |
Создаёт Reference с указанными параметрами. |
abstract Reference |
newReference |
Создаёт Reference с указанными параметрами и предварительно вычисленным значением дайджеста. |
abstract Reference |
newReference |
Создаёт Reference с указанными параметрами. |
abstract SignatureMethod |
newSignatureMethod |
Создаёт SignatureMethod для указанного URI алгоритма и параметров. |
abstract SignatureProperties |
newSignatureProperties |
Создаёт SignatureProperties, содержащий указанный список SignatureProperty и необязательный идентификатор. |
abstract SignatureProperty |
newSignatureProperty |
Создаёт SignatureProperty, содержащий указанный список XMLStructure, целевой URI и необязательный идентификатор. |
abstract SignedInfo |
newSignedInfo |
Создаёт SignedInfo с указанными методами канонизации и подписи, а также списком одной или нескольких ссылок. |
abstract SignedInfo |
newSignedInfo |
Создаёт SignedInfo с указанными параметрами. |
abstract Transform |
newTransform |
Создаёт Transform для указанного URI алгоритма и параметров. |
abstract Transform |
newTransform |
Создаёт Transform для указанного URI алгоритма и параметров. |
abstract XMLObject |
newXMLObject |
Создаёт XMLObject из указанных параметров. |
abstract XMLSignature |
newXMLSignature |
Создаёт XMLSignature и инициализирует его содержимым указанных SignedInfo и KeyInfo объектов. |
abstract XMLSignature |
newXMLSignature |
Создаёт XMLSignature и инициализирует его указанными параметрами. |
abstract XMLSignature |
unmarshalXMLSignature |
Распаковывает новый экземпляр XMLSignature из экземпляра XMLValidateContext, специфичного для механизма. |
abstract XMLSignature |
unmarshalXMLSignature |
Распаковывает новый экземпляр XMLSignature из экземпляра XMLStructure, специфичного для механизма. |
Подробное описание конструкторов
XMLSignatureFactory
protected XMLSignatureFactory()
Подробное описание методов
getInstance
public static XMLSignatureFactory getInstance(String mechanismType)
XMLSignatureFactory, который поддерживает указанный механизм обработки XML и тип представления (например, "DOM"). Этот метод использует стандартный механизм поиска поставщика JCA для поиска и создания реализации XMLSignatureFactory нужного типа механизма. Он перебирает список зарегистрированных поставщиков безопасности Provider, начиная с наиболее предпочтительного Provider. Возвращается новый объект XMLSignatureFactory из первого поставщика Provider, который поддерживает указанный механизм.
Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().
- Описание реализации:
- Реализация JDK дополнительно использует свойство
jdk.security.provider.preferredSecurityдля определения предпочтительного порядка поставщиков для указанного алгоритма. Это может отличаться от порядка поставщиков, возвращаемого методомSecurity.getProviders(). - Параметры:
-
mechanismType- тип механизма обработки XML и представления. Список стандартных типов механизмов см. в разделеXMLSignatureFactoryспецификации Java Security Standard Algorithm Names Specification. - Возвращаемое значение:
- новый
XMLSignatureFactory - Исключения:
-
NullPointerException- еслиmechanismTypeявляетсяnull -
NoSuchMechanismException- если ни один из поставщиковProviderне поддерживает реализациюXMLSignatureFactoryдля указанного механизма - См. также:
getInstance
public static XMLSignatureFactory getInstance(String mechanismType, Provider provider)
XMLSignatureFactory, который поддерживает запрашиваемый механизм обработки XML и тип представления (например, "DOM"), как предоставлено указанным поставщиком. Обратите внимание, что указанный объект Provider не обязательно должен быть зарегистрирован в списке поставщиков.- Параметры:
-
mechanismType- тип механизма обработки XML и представления. Список стандартных типов механизмов см. в разделеXMLSignatureFactoryспецификации Java Security Standard Algorithm Names Specification. -
provider- объектProvider - Возвращаемое значение:
- новый
XMLSignatureFactory - Исключения:
-
NullPointerException- еслиproviderилиmechanismTypeявляетсяnull -
NoSuchMechanismException- если реализацияXMLSignatureFactoryдля указанного механизма недоступна от указанного объектаProvider - См. также:
getInstance
public static XMLSignatureFactory getInstance(String mechanismType, String provider) throws NoSuchProviderException
XMLSignatureFactory, который поддерживает запрашиваемый механизм обработки XML и тип представления (например, "DOM"), как предоставлено указанным поставщиком. Указанный поставщик должен быть зарегистрирован в списке поставщиков безопасности. Список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().
- Параметры:
-
mechanismType- тип механизма обработки XML и представления. Список стандартных типов механизмов см. в разделеXMLSignatureFactoryспецификации Java Security Standard Algorithm Names Specification. -
provider- имя строки поставщика - Возвращаемое значение:
- новый
XMLSignatureFactory - Исключения:
-
NoSuchProviderException- если указанный поставщик не зарегистрирован в списке поставщиков безопасности -
NullPointerException- еслиproviderилиmechanismTypeявляетсяnull -
NoSuchMechanismException- если реализацияXMLSignatureFactoryдля указанного механизма недоступна от указанного поставщика - См. также:
getInstance
public static XMLSignatureFactory getInstance()
XMLSignatureFactory, который поддерживает стандартный механизм обработки XML и тип представления ("DOM"). Этот метод использует стандартный механизм поиска поставщика JCA для поиска и создания реализации XMLSignatureFactory указанного типа механизма. Он перебирает список зарегистрированных поставщиков безопасности Provider, начиная с наиболее предпочтительного Provider. Возвращается новый объект XMLSignatureFactory из первого поставщика Provider, который поддерживает механизм DOM.
Список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().
- Возвращаемое значение:
- новый
XMLSignatureFactory - Исключения:
-
NoSuchMechanismException- если ни один из поставщиковProviderне поддерживает реализациюXMLSignatureFactoryдля механизма DOM - См. также:
getMechanismType
public final String getMechanismType()
XMLSignatureFactory (например, "DOM").- Возвращаемое значение:
- тип механизма обработки XML, поддерживаемый данным
XMLSignatureFactory
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(может быть пустым илиnull) -
id- идентификатор (может бытьnull) -
signatureValueId- идентификатор SignatureValue (может бытьnull) - Возвращаемое значение:
- объект
XMLSignature - Исключения:
-
NullPointerException- еслиsiявляетсяnull -
ClassCastException- если любой изobjectsне является объектом типаXMLObject
newReference
public abstract Reference newReference(String uri, DigestMethod dm)
Reference с указанным URI и методом дайджеста.- Параметры:
-
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)
- Параметры:
-
uri- URI ссылки (может бытьnull) -
dm- метод хеширования -
transforms- список преобразованийTransform. Список защищён от последующих изменений. Может бытьnullили пустым. -
type- тип ссылки, как URI (может бытьnull) -
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 было предварительно вычислено. См., например, спецификацию OASIS-DSS (Услуги цифровых подписей).
- Параметры:
-
uri- URI ссылки (может бытьnull) -
dm- метод хеширования -
transforms- список преобразованийTransform. Список защищён от последующих изменений. Может бытьnullили пустым. -
type- тип ссылки, как URI (может бытьnull) -
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. См., например, спецификацию OASIS-DSS (Услуги цифровых подписей) .
Когда генерируется объект XMLSignature, содержащий эту ссылку, указанные transforms (если не null) применяются к указанным result. Элемент Transforms результирующего элемента Reference устанавливается в конкатенацию appliedTransforms и transforms.
- Параметры:
-
uri- URI ссылки (может бытьnull) -
dm- метод хеширования -
appliedTransforms- список преобразованийTransform, которые уже были применены. Список защищён от последующих изменений. Список должен содержать по крайней мере одну запись. -
result- результат обработки последовательностиappliedTransforms -
transforms- список преобразованийTransform, которые должны быть применены при генерации подписи. Список защищён от последующих изменений. Может бытьnullили пустым. -
type- тип ссылки, как URI (может бытьnull) -
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- если список ссылок пустой -
NullPointerException- если любой из параметров имеет неправильный формат
newSignedInfo
public abstract SignedInfo newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List<? extends Reference> references, String id)
SignedInfo с указанными параметрами.- Параметры:
-
cm- метод канонизации -
sm- метод подписи -
references- список одной или нескольких ссылокReference. Список защищён от последующих изменений. -
id- идентификатор (может бытьnull) - Возвращает:
- объект
SignedInfo - Исключения:
-
ClassCastException- если любая из ссылок не является объектом типаReference -
IllegalArgumentException- если список ссылок пустой -
NullPointerException- еслиcm,sm, илиreferencesимеют неправильный формат
newXMLObject
public abstract XMLObject newXMLObject(List<? extends XMLStructure> content, String id, String mimeType, String encoding)
XMLObject по указанным параметрам.- Параметры:
-
content- список объектовXMLStructure. Список защищён от последующих изменений. Может бытьnullили пустым. -
id- идентификатор (может бытьnull) -
mimeType- тип MIME (может бытьnull) -
encoding- кодировка (может бытьnull) - Возвращает:
- объект
XMLObject - Исключения:
-
ClassCastException- еслиcontentсодержит элементы, не являющиеся объектами типаXMLStructure
newManifest
public abstract Manifest newManifest(List<? extends Reference> references)
Manifest, содержащий указанный список Reference.- Параметры:
-
references- список одной или несколькихReference. Список защищён от последующих изменений. - Возвращает:
- объект
Manifest - Исключения:
-
NullPointerException- еслиreferencesявляетсяnull -
IllegalArgumentException- если списокreferencesпустой -
ClassCastException- еслиreferencesсодержит элементы, не являющиеся объектами типаReference
newManifest
public abstract Manifest newManifest(List<? extends Reference> references, String id)
Manifest, содержащий указанный список Reference и необязательный идентификатор.- Параметры:
-
references- список одной или несколькихReference. Список защищён от последующих изменений. -
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 и необязательный id.- Параметры:
-
content- список одного или болееXMLStructure. Список копируется для защиты от последующих изменений. -
target- целевой URI подписи, к которой относится это свойство -
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 и необязательный id.- Параметры:
-
properties- список одного или болееSignatureProperty. Список копируется для защиты от последующих изменений. -
id- идентификатор (может бытьnull) - Возвращает:
- объект
SignatureProperties - Исключение:
-
NullPointerException- еслиpropertiesимеет значениеnull -
IllegalArgumentException- еслиpropertiesпустой -
ClassCastException- еслиpropertiesсодержит элементы, не являющиеся объектамиSignatureProperty
newDigestMethod
public abstract DigestMethod newDigestMethod(String algorithm, DigestMethodParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
DigestMethod для указанного URI алгоритма и параметров.- Параметры:
-
algorithm- URI, определяющий алгоритм хеширования -
params- параметры хеширования, специфичные для алгоритма (могут бытьnull) - Возвращает:
- объект
DigestMethod - Исключение:
-
InvalidAlgorithmParameterException- если указанные параметры не подходят для запрошенного алгоритма -
NoSuchAlgorithmException- если реализация указанного алгоритма не найдена -
NullPointerException- еслиalgorithmимеет значениеnull
newSignatureMethod
public abstract SignatureMethod newSignatureMethod(String algorithm, SignatureMethodParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
SignatureMethod для указанного URI алгоритма и параметров.- Параметры:
-
algorithm- URI, определяющий алгоритм цифровой подписи -
params- параметры цифровой подписи, специфичные для алгоритма (могут бытьnull) - Возвращает:
- объект
SignatureMethod - Исключение:
-
InvalidAlgorithmParameterException- если указанные параметры не подходят для запрошенного алгоритма -
NoSuchAlgorithmException- если реализация указанного алгоритма не найдена -
NullPointerException- еслиalgorithmимеет значениеnull
newTransform
public abstract Transform newTransform(String algorithm, TransformParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
Transform для указанного URI алгоритма и параметров.- Параметры:
-
algorithm- URI, определяющий алгоритм преобразования -
params- параметры преобразования, специфичные для алгоритма (могут бытьnull) - Возвращает:
- объект
Transform - Исключение:
-
InvalidAlgorithmParameterException- если указанные параметры не подходят для запрошенного алгоритма -
NoSuchAlgorithmException- если реализация указанного алгоритма не найдена -
NullPointerException- еслиalgorithmимеет значениеnull
newTransform
public abstract Transform newTransform(String algorithm, XMLStructure params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
Transform для указанного URI алгоритма и параметров. Параметры задаются в формате, специфичном для механизма (например, 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
CanonicalizationMethod для указанного URI алгоритма и параметров.- Параметры:
-
algorithm- URI, определяющий алгоритм канонизации -
params- параметры канонизации, специфичные для алгоритма (могут бытьnull) - Возвращает:
- объект
CanonicalizationMethod - Исключение:
-
InvalidAlgorithmParameterException- если указанные параметры не подходят для запрошенного алгоритма -
NoSuchAlgorithmException- если реализация указанного алгоритма не найдена -
NullPointerException- еслиalgorithmимеет значениеnull
newCanonicalizationMethod
public abstract CanonicalizationMethod newCanonicalizationMethod(String algorithm, XMLStructure params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
CanonicalizationMethod для указанного URI алгоритма и параметров. Параметры задаются в формате, специфичном для механизма (например, DOMStructure). Этот метод полезен, когда параметры находятся в формате XML или не существует стандартного класса для их задания.- Параметры:
-
algorithm- URI, определяющий алгоритм канонизации -
params- структура XML, специфичная для механизма, из которой извлекаются параметры (может бытьnull, если не требуется или является необязательным) - Возвращает:
- объект
CanonicalizationMethod - Исключение:
-
ClassCastException- если типparamsне подходит для этогоXMLSignatureFactory -
InvalidAlgorithmParameterException- если указанные параметры не подходят для запрошенного алгоритма -
NoSuchAlgorithmException- если реализация указанного алгоритма не найдена -
NullPointerException- еслиalgorithmимеет значениеnull
getKeyInfoFactory
public final KeyInfoFactory getKeyInfoFactory()
KeyInfoFactory, которая создаёт объекты KeyInfo. Возвращённая фабрика имеет тот же тип механизма и поставщика, что и этот XMLSignatureFactory.- Возвращает:
- объект
KeyInfoFactory - Исключение:
-
NoSuchMechanismException- если реализацияKeyFactoryс тем же типом механизма и поставщиком недоступна
unmarshalXMLSignature
public abstract XMLSignature unmarshalXMLSignature(XMLValidateContext context) throws MarshalException
XMLSignature из экземпляра, специфичного для механизма XMLValidateContext.- Параметры:
-
context- контекст, специфичный для механизма, из которого необходимо распаковать подпись - Возвращает:
- объект
XMLSignature - Исключение:
-
NullPointerException- еслиcontextимеет значениеnull -
ClassCastException- если типcontextне подходит для этой фабрики -
MarshalException- если произошла невосстановимая ошибка во время распаковки
unmarshalXMLSignature
public abstract XMLSignature unmarshalXMLSignature(XMLStructure xmlStructure) throws MarshalException
XMLSignature из экземпляра, специфичного для механизма XMLStructure. Этот метод полезен, если вы хотите только распаковать (а не валидировать) 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, который используется по умолчанию для разыменования URI в объектах Reference.- Возвращает:
- ссылку на дефолтный
URIDereferencer(никогдаnull)
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.xml.crypto/javax/xml/crypto/dsig/XMLSignatureFactory.html