DOMValidateContext (Java Platform SE 8 ) (original) (raw)
- javax.xml.crypto.dom.DOMCryptoContext
- javax.xml.crypto.dsig.dom.DOMValidateContext
All Implemented Interfaces:
XMLValidateContext, XMLCryptoContext
public class DOMValidateContext
extends DOMCryptoContext
implements XMLValidateContext
A DOM-specific XMLValidateContext. This class contains additional methods to specify the location in a DOM tree where an XMLSignature is to be unmarshalled and validated from.
Note that the behavior of an unmarshalled XMLSignature
is undefined if the contents of the underlying DOM tree are modified by the caller after the XMLSignature
is created.
Also, note that DOMValidateContext
instances can contain information and state specific to the XML signature structure it is used with. The results are unpredictable if aDOMValidateContext
is used with different signature structures (for example, you should not use the same DOMValidateContext
instance to validate two different XMLSignature objects).
Implementation Note:
The JDK implementation supports a secure validation mode which can be enabled by setting the org.jcp.xml.dsig.secureValidation
property to Boolean.TRUE
(see the setProperty method). When enabled, validation of XML signatures are subject to stricter checking of algorithms and other constraints as specified by thejdk.xml.dsig.secureValidationPolicy
security property. The mode can be disabled by setting the property to Boolean.FALSE
. The mode can also be enabled or disabled by setting the org.jcp.xml.dsig.secureValidation system property to "true" or "false". Any other value for the system property is also treated as "false". If the system property is set, it supersedes theDOMValidateContext
property value. The secure validation mode is enabled by default if you are running code with a SecurityManager, otherwise it is disabled by default.
Since:
1.6
See Also:
XMLSignatureFactory.unmarshalXMLSignature(XMLValidateContext)
Constructor Summary
Constructors
Constructor Description DOMValidateContext(Key validatingKey,Node node) Creates a DOMValidateContext containing the specified key and node. DOMValidateContext(KeySelector ks,Node node) Creates a DOMValidateContext containing the specified key selector and node. Method Summary
All Methods Instance Methods Concrete Methods
Modifier and Type Method Description Node getNode() Returns the node. void setNode(Node node) Sets the node. * ### Methods inherited from class javax.xml.crypto.dom.[DOMCryptoContext](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html "class in javax.xml.crypto.dom") `[get](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#get-java.lang.Object-), [getBaseURI](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#getBaseURI--), [getDefaultNamespacePrefix](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#getDefaultNamespacePrefix--), [getElementById](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#getElementById-java.lang.String-), [getKeySelector](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#getKeySelector--), [getNamespacePrefix](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#getNamespacePrefix-java.lang.String-java.lang.String-), [getProperty](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#getProperty-java.lang.String-), [getURIDereferencer](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#getURIDereferencer--), [iterator](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#iterator--), [put](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#put-java.lang.Object-java.lang.Object-), [putNamespacePrefix](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#putNamespacePrefix-java.lang.String-java.lang.String-), [setBaseURI](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#setBaseURI-java.lang.String-), [setDefaultNamespacePrefix](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#setDefaultNamespacePrefix-java.lang.String-), [setIdAttributeNS](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#setIdAttributeNS-org.w3c.dom.Element-java.lang.String-java.lang.String-), [setKeySelector](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#setKeySelector-javax.xml.crypto.KeySelector-), [setProperty](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#setProperty-java.lang.String-java.lang.Object-), [setURIDereferencer](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#setURIDereferencer-javax.xml.crypto.URIDereferencer-)` * ### Methods inherited from class java.lang.[Object](../../../../../java/lang/Object.html "class in java.lang") `[clone](../../../../../java/lang/Object.html#clone--), [equals](../../../../../java/lang/Object.html#equals-java.lang.Object-), [finalize](../../../../../java/lang/Object.html#finalize--), [getClass](../../../../../java/lang/Object.html#getClass--), [hashCode](../../../../../java/lang/Object.html#hashCode--), [notify](../../../../../java/lang/Object.html#notify--), [notifyAll](../../../../../java/lang/Object.html#notifyAll--), [toString](../../../../../java/lang/Object.html#toString--), [wait](../../../../../java/lang/Object.html#wait--), [wait](../../../../../java/lang/Object.html#wait-long-), [wait](../../../../../java/lang/Object.html#wait-long-int-)` * ### Methods inherited from interface javax.xml.crypto.[XMLCryptoContext](../../../../../javax/xml/crypto/XMLCryptoContext.html "interface in javax.xml.crypto") `[get](../../../../../javax/xml/crypto/XMLCryptoContext.html#get-java.lang.Object-), [getBaseURI](../../../../../javax/xml/crypto/XMLCryptoContext.html#getBaseURI--), [getDefaultNamespacePrefix](../../../../../javax/xml/crypto/XMLCryptoContext.html#getDefaultNamespacePrefix--), [getKeySelector](../../../../../javax/xml/crypto/XMLCryptoContext.html#getKeySelector--), [getNamespacePrefix](../../../../../javax/xml/crypto/XMLCryptoContext.html#getNamespacePrefix-java.lang.String-java.lang.String-), [getProperty](../../../../../javax/xml/crypto/XMLCryptoContext.html#getProperty-java.lang.String-), [getURIDereferencer](../../../../../javax/xml/crypto/XMLCryptoContext.html#getURIDereferencer--), [put](../../../../../javax/xml/crypto/XMLCryptoContext.html#put-java.lang.Object-java.lang.Object-), [putNamespacePrefix](../../../../../javax/xml/crypto/XMLCryptoContext.html#putNamespacePrefix-java.lang.String-java.lang.String-), [setBaseURI](../../../../../javax/xml/crypto/XMLCryptoContext.html#setBaseURI-java.lang.String-), [setDefaultNamespacePrefix](../../../../../javax/xml/crypto/XMLCryptoContext.html#setDefaultNamespacePrefix-java.lang.String-), [setKeySelector](../../../../../javax/xml/crypto/XMLCryptoContext.html#setKeySelector-javax.xml.crypto.KeySelector-), [setProperty](../../../../../javax/xml/crypto/XMLCryptoContext.html#setProperty-java.lang.String-java.lang.Object-), [setURIDereferencer](../../../../../javax/xml/crypto/XMLCryptoContext.html#setURIDereferencer-javax.xml.crypto.URIDereferencer-)`
Constructor Detail
* #### DOMValidateContext public DOMValidateContext([KeySelector](../../../../../javax/xml/crypto/KeySelector.html "class in javax.xml.crypto") ks, [Node](../../../../../org/w3c/dom/Node.html "interface in org.w3c.dom") node) Creates a `DOMValidateContext` containing the specified key selector and node. Parameters: `ks` \- a key selector for finding a validation key `node` \- the node Throws: `[NullPointerException](../../../../../java/lang/NullPointerException.html "class in java.lang")` \- if `ks` or `node` is`null` * #### DOMValidateContext public DOMValidateContext([Key](../../../../../java/security/Key.html "interface in java.security") validatingKey, [Node](../../../../../org/w3c/dom/Node.html "interface in org.w3c.dom") node) Creates a `DOMValidateContext` containing the specified key and node. The validating key will be stored in a[singleton KeySelector](../../../../../javax/xml/crypto/KeySelector.html#singletonKeySelector-java.security.Key-) that is returned when the [getKeySelector](../../../../../javax/xml/crypto/dom/DOMCryptoContext.html#getKeySelector--) method is called. Parameters: `validatingKey` \- the validating key `node` \- the node Throws: `[NullPointerException](../../../../../java/lang/NullPointerException.html "class in java.lang")` \- if `validatingKey` or`node` is `null`
Method Detail
* #### setNode public void setNode([Node](../../../../../org/w3c/dom/Node.html "interface in org.w3c.dom") node) Sets the node. Parameters: `node` \- the node Throws: `[NullPointerException](../../../../../java/lang/NullPointerException.html "class in java.lang")` \- if `node` is `null` See Also: [getNode()](../../../../../javax/xml/crypto/dsig/dom/DOMValidateContext.html#getNode--) * #### getNode public [Node](../../../../../org/w3c/dom/Node.html "interface in org.w3c.dom") getNode() Returns the node. Returns: the node (never `null`) See Also: [setNode(Node)](../../../../../javax/xml/crypto/dsig/dom/DOMValidateContext.html#setNode-org.w3c.dom.Node-)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.