Класс 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.
Реализации XMLSignatureFactory регистрируются и загружаются с помощью механизма Provider. Например, поставщик службы, поддерживающий механизм DOM, указывается в подклассе Provider следующим образом:
put("XMLSignatureFactory.DOM", "org.example.DOMXMLSignatureFactory");
Реализация ДОЛЖНА как минимум поддерживать тип механизма по умолчанию: DOM.
Обратите внимание, что вызывающий код должен использовать один и тот же экземпляр XMLSignatureFactory для создания XMLStructure конкретного XMLSignature, которое требуется сгенерировать. Поведение не определено, если совместно используются XMLStructure из разных поставщиков или разных типов механизмов.
Кроме того, XMLStructure, созданные этой фабрикой, могут содержать состояние, специфичное для XMLSignature, и не предназначены для повторного использования.
Создание XMLSignature с нуля
После создания XMLSignatureFactory объекты можно создавать, вызывая соответствующий метод. Например, экземпляр Reference можно создать, вызвав один из методов newReference.
Демаршализация XMLSignature из XML
Кроме того, XMLSignature можно создать из существующего XML-представления, вызвав метод unmarshalXMLSignature и передав ему экземпляр специфичного для механизма XMLValidateContext, содержащий XML-содержимое:
DOMValidateContext context = new DOMValidateContext(key, signatureElement); XMLSignature signature = factory.unmarshalXMLSignature(context);Каждый
XMLSignatureFactory должен поддерживать обязательные типы XMLValidateContext для соответствующего типа фабрики, но может поддерживать и другие. DOM XMLSignatureFactory должен поддерживать объекты DOMValidateContext. Подписание и маршализация XMLSignature в XML
КаждыйXMLSignature, созданный фабрикой, также можно маршализовать в XML-представление и подписать, вызвав метод sign объекта XMLSignature и передав ему специфичный для механизма объект XMLSignContext, содержащий ключ подписи и параметры маршализации (см. DOMSignContext). Например: DOMSignContext context = new DOMSignContext(privateKey, document); signature.sign(context);Параллельный доступ
Гарантируется, что статические методы этого класса потокобезопасны. Несколько потоков могут одновременно вызывать статические методы, определённые в этом классе, без каких-либо побочных эффектов.
Однако это не относится к нестатическим методам, определённым в этом классе. Если в документации конкретного поставщика не указано иное, потоки, которым необходимо одновременно обращаться к одному экземпляру XMLSignatureFactory, должны синхронизироваться между собой и обеспечивать необходимую блокировку. Потокам, каждый из которых работает с отдельным экземпляром XMLSignatureFactory, синхронизация не требуется.
- Начиная с:
- 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. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект некоторому другому объекту. |
protected void |
finalize() |
Устарело, подлежит удалению: этот элемент API может быть удалён в будущей версии. Финализация объявлена устаревшей и подлежит удалению в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс среды выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или interrupt. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
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». - Возвращает:
- новый
XMLSignatureFactory - Исключения:
-
NullPointerException— еслиmechanismTypeравноnull -
NoSuchMechanismException— если ни одинProviderне поддерживает реализациюXMLSignatureFactoryдля указанного механизма - Внешние спецификации
- См. также:
getInstance
public static XMLSignatureFactory getInstance(String mechanismType, Provider provider)
XMLSignatureFactory, поддерживающий запрошенный механизм обработки XML и тип представления (например, «DOM»), предоставленный указанным поставщиком. Обратите внимание, что указанный объект Provider не обязательно должен быть зарегистрирован в списке поставщиков.- Параметры:
-
mechanismType— тип механизма обработки XML и представления. Список стандартных типов механизмов см. в разделеXMLSignatureFactoryспецификации «Стандартные имена алгоритмов безопасности Java». -
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». -
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)
Reference с указанными параметрами.- Параметры:
-
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 с указанными параметрами и предварительно вычисленным значением дайджеста. Этот метод полезен, если значение дайджеста для 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 с указанными параметрами. Этот метод полезен, если к 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— еслиreferencesпуст -
NullPointerException— если какой-либо параметр равенnull
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— если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— идентификатор (может быть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 и необязательный идентификатор.- Параметры:
-
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 и необязательный идентификатор.- Параметры:
-
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 алгоритма и параметров. Параметры задаются в виде зависящей от механизма структуры 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
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 алгоритма и параметров. Параметры задаются в виде механизма-специфичной XMLStructure (например, DOMStructure). Этот метод полезен, когда параметры представлены в формате XML или для их задания не существует стандартного класса.- Параметры:
-
algorithm- URI, идентифицирующий алгоритм каноникализации -
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- механизм-специфичный контекст, из которого следует демаршалировать подпись - Возвращает:
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.