public abstract class SOAPFactory extends Object
SOAPFactory
is a factory for creating various objects
that exist in the SOAP XML tree.
SOAPFactory
can be
used to create XML fragments that will eventually end up in the
SOAP part. These fragments can be inserted as children of the
SOAPHeaderElement
or SOAPBodyElement
or
SOAPEnvelope
or other SOAPElement
objects.
SOAPFactory
also has methods to create
javax.xml.soap.Detail
objects as well as
java.xml.soap.Name
objects.Constructor and Description |
---|
SOAPFactory() |
Modifier and Type | Method and Description |
---|---|
abstract Detail |
createDetail()
Creates a new
Detail object which serves as a container
for DetailEntry objects. |
SOAPElement |
createElement(Element domElement)
Creates a
SOAPElement object from an existing DOM
Element . |
abstract SOAPElement |
createElement(Name name)
Creates a
SOAPElement object initialized with the
given Name object. |
SOAPElement |
createElement(QName qname)
Creates a
SOAPElement object initialized with the
given QName object. |
abstract SOAPElement |
createElement(String localName)
Creates a
SOAPElement object initialized with the
given local name. |
abstract SOAPElement |
createElement(String localName,
String prefix,
String uri)
Creates a new
SOAPElement object with the given
local name, prefix and uri. |
abstract SOAPFault |
createFault()
Creates a new default
SOAPFault object |
abstract SOAPFault |
createFault(String reasonText,
QName faultCode)
Creates a new
SOAPFault object initialized with the given reasonText
and faultCode |
abstract Name |
createName(String localName)
Creates a new
Name object initialized with the
given local name. |
abstract Name |
createName(String localName,
String prefix,
String uri)
Creates a new
Name object initialized with the
given local name, namespace prefix, and namespace URI. |
static SOAPFactory |
newInstance()
Creates a new
SOAPFactory object that is an instance of
the default implementation (SOAP 1.1),
This method uses the following ordered lookup procedure to determine the SOAPFactory implementation class to load:
Use the javax.xml.soap.SOAPFactory system property. |
static SOAPFactory |
newInstance(String protocol)
Creates a new
SOAPFactory object that is an instance of
the specified implementation, this method uses the SAAJMetaFactory to
locate the implementation class and create the SOAPFactory instance. |
public SOAPElement createElement(Element domElement) throws SOAPException
SOAPElement
object from an existing DOM
Element
. If the DOM Element
that is passed in
as an argument is already a SOAPElement
then this method
must return it unmodified without any further work. Otherwise, a new
SOAPElement
is created and a deep copy is made of the
domElement
argument. The concrete type of the return value
will depend on the name of the domElement
argument. If any
part of the tree rooted in domElement
violates SOAP rules, a
SOAPException
will be thrown.domElement
- - the Element
to be copied.SOAPElement
that is a copy of domElement
.SOAPException
- if there is an error in creating the
SOAPElement
objectpublic abstract SOAPElement createElement(Name name) throws SOAPException
SOAPElement
object initialized with the
given Name
object. The concrete type of the return value
will depend on the name given to the new SOAPElement
. For
instance, a new SOAPElement
with the name
"{http://www.w3.org/2003/05/soap-envelope}Envelope" would cause a
SOAPEnvelope
that supports SOAP 1.2 behavior to be created.name
- a Name
object with the XML name for
the new elementSOAPElement
object that was
createdSOAPException
- if there is an error in creating the
SOAPElement
objectcreateElement(javax.xml.namespace.QName)
public SOAPElement createElement(QName qname) throws SOAPException
SOAPElement
object initialized with the
given QName
object. The concrete type of the return value
will depend on the name given to the new SOAPElement
. For
instance, a new SOAPElement
with the name
"{http://www.w3.org/2003/05/soap-envelope}Envelope" would cause a
SOAPEnvelope
that supports SOAP 1.2 behavior to be created.qname
- a QName
object with the XML name for
the new elementSOAPElement
object that was
createdSOAPException
- if there is an error in creating the
SOAPElement
objectcreateElement(Name)
public abstract SOAPElement createElement(String localName) throws SOAPException
SOAPElement
object initialized with the
given local name.localName
- a String
giving the local name for
the new elementSOAPElement
object that was
createdSOAPException
- if there is an error in creating the
SOAPElement
objectpublic abstract SOAPElement createElement(String localName, String prefix, String uri) throws SOAPException
SOAPElement
object with the given
local name, prefix and uri. The concrete type of the return value
will depend on the name given to the new SOAPElement
. For
instance, a new SOAPElement
with the name
"{http://www.w3.org/2003/05/soap-envelope}Envelope" would cause a
SOAPEnvelope
that supports SOAP 1.2 behavior to be created.localName
- a String
giving the local name
for the new elementprefix
- the prefix for this SOAPElement
uri
- a String
giving the URI of the
namespace to which the new element belongsSOAPException
- if there is an error in creating the
SOAPElement
objectpublic abstract Detail createDetail() throws SOAPException
Detail
object which serves as a container
for DetailEntry
objects.
This factory method creates Detail
objects for use in
situations where it is not practical to use the SOAPFault
abstraction.
Detail
objectSOAPException
- if there is a SOAP errorUnsupportedOperationException
- if the protocol specified
for the SOAPFactory was DYNAMIC_SOAP_PROTOCOL
public abstract SOAPFault createFault(String reasonText, QName faultCode) throws SOAPException
SOAPFault
object initialized with the given reasonText
and faultCode
reasonText
- the ReasonText/FaultString for the faultfaultCode
- the FaultCode for the faultSOAPFault
objectSOAPException
- if there is a SOAP errorpublic abstract SOAPFault createFault() throws SOAPException
SOAPFault
objectSOAPFault
objectSOAPException
- if there is a SOAP errorpublic abstract Name createName(String localName, String prefix, String uri) throws SOAPException
Name
object initialized with the
given local name, namespace prefix, and namespace URI.
This factory method creates Name
objects for use in
situations where it is not practical to use the SOAPEnvelope
abstraction.
localName
- a String
giving the local nameprefix
- a String
giving the prefix of the namespaceuri
- a String
giving the URI of the namespaceName
object initialized with the given
local name, namespace prefix, and namespace URISOAPException
- if there is a SOAP errorpublic abstract Name createName(String localName) throws SOAPException
Name
object initialized with the
given local name.
This factory method creates Name
objects for use in
situations where it is not practical to use the SOAPEnvelope
abstraction.
localName
- a String
giving the local nameName
object initialized with the given
local nameSOAPException
- if there is a SOAP errorpublic static SOAPFactory newInstance() throws SOAPException
SOAPFactory
object that is an instance of
the default implementation (SOAP 1.1),
This method uses the following ordered lookup procedure to determine the SOAPFactory implementation class to load:
SOAPFactory
SOAPException
- if there was an error creating the
default SOAPFactory
SAAJMetaFactory
public static SOAPFactory newInstance(String protocol) throws SOAPException
SOAPFactory
object that is an instance of
the specified implementation, this method uses the SAAJMetaFactory to
locate the implementation class and create the SOAPFactory instance.protocol
- a string constant representing the protocol of the
specified SOAP factory implementation. May be
either DYNAMIC_SOAP_PROTOCOL
,
DEFAULT_SOAP_PROTOCOL
(which is the same
as) SOAP_1_1_PROTOCOL
, or
SOAP_1_2_PROTOCOL
.SOAPFactory
SOAPException
- if there was an error creating the
specified SOAPFactory
SAAJMetaFactory
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, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.