< prev index next >
src/java.xml.ws/share/classes/javax/xml/soap/SOAPFactory.java
Print this page
*** 46,65 ****
* @since 1.6
*/
public abstract class SOAPFactory {
/**
- * A constant representing the property used to lookup the name of
- * a {@code SOAPFactory} implementation class.
- */
- static private final String SOAP_FACTORY_PROPERTY =
- "javax.xml.soap.SOAPFactory";
-
- /**
* Class name of default {@code SOAPFactory} implementation.
*/
! static final String DEFAULT_SOAP_FACTORY
= "com.sun.xml.internal.messaging.saaj.soap.ver1_1.SOAPFactory1_1Impl";
/**
* Creates a {@code SOAPElement} object from an existing DOM
* {@code Element}. If the DOM {@code Element} that is passed in
--- 46,58 ----
* @since 1.6
*/
public abstract class SOAPFactory {
/**
* Class name of default {@code SOAPFactory} implementation.
*/
! private static final String DEFAULT_SOAP_FACTORY
= "com.sun.xml.internal.messaging.saaj.soap.ver1_1.SOAPFactory1_1Impl";
/**
* Creates a {@code SOAPElement} object from an existing DOM
* {@code Element}. If the DOM {@code Element} that is passed in
*** 237,258 ****
*/
public abstract Name createName(String localName) throws SOAPException;
/**
* Creates a new {@code 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:
! * <UL>
! * <LI> Use the javax.xml.soap.SOAPFactory system property.
! * <LI> Use the properties file "lib/jaxm.properties" in the JRE directory. This configuration file is in standard
! * java.util.Properties format and contains the fully qualified name of the implementation class with the key being the
! * system property defined above.
! * <LI> Use the Services API (as detailed in the JAR specification), if available, to determine the classname. The Services API
! * will look for a classname in the file META-INF/services/javax.xml.soap.SOAPFactory in jars available to the runtime.
! * <LI> Use the SAAJMetaFactory instance to locate the SOAPFactory implementation class.
! * </UL>
*
* @return a new instance of a {@code SOAPFactory}
*
* @exception SOAPException if there was an error creating the
* default {@code SOAPFactory}
--- 230,243 ----
*/
public abstract Name createName(String localName) throws SOAPException;
/**
* Creates a new {@code SOAPFactory} object that is an instance of
! * the default implementation (SOAP 1.1).
*
! * This method uses the lookup procedure specified in {@link javax.xml.soap} to locate and load the
! * {@link javax.xml.soap.SOAPFactory} class.
*
* @return a new instance of a {@code SOAPFactory}
*
* @exception SOAPException if there was an error creating the
* default {@code SOAPFactory}
*** 260,273 ****
*/
public static SOAPFactory newInstance()
throws SOAPException
{
try {
! SOAPFactory factory = (SOAPFactory) FactoryFinder.find(
! SOAP_FACTORY_PROPERTY, DEFAULT_SOAP_FACTORY, false);
! if (factory != null)
! return factory;
return newInstance(SOAPConstants.SOAP_1_1_PROTOCOL);
} catch (Exception ex) {
throw new SOAPException(
"Unable to create SOAP Factory: " + ex.getMessage());
}
--- 245,261 ----
*/
public static SOAPFactory newInstance()
throws SOAPException
{
try {
! SOAPFactory factory = FactoryFinder.find(
! SOAPFactory.class,
! DEFAULT_SOAP_FACTORY,
! false);
! if (factory != null) return factory;
!
! // leave it on SAAJMetaFactory
return newInstance(SOAPConstants.SOAP_1_1_PROTOCOL);
} catch (Exception ex) {
throw new SOAPException(
"Unable to create SOAP Factory: " + ex.getMessage());
}
< prev index next >