src/javax/xml/xpath/XPathFactory.java

Print this page

        

*** 43,52 **** --- 43,53 ---- * even from the same thread. * * @author <a href="mailto:Norman.Walsh@Sun.com">Norman Walsh</a> * @author <a href="mailto:Jeff.Suttor@Sun.com">Jeff Suttor</a> * + * @version $Revision: 1.7 $, $Date: 2010-11-01 04:36:14 $ * @since 1.5 */ public abstract class XPathFactory {
*** 119,136 **** * <li> * ${java.home}/lib/jaxp.properties is read and the value associated with the key being the system property above is looked for. * If present, the value is processed just like above. * </li> * <li> ! * The class loader is asked for service provider provider-configuration files matching <code>javax.xml.xpath.XPathFactory</code> ! * in the resource directory META-INF/services. ! * See the JAR File Specification for file format and parsing rules. * Each potential service provider is required to implement the method: * <pre> * {@link #isObjectModelSupported(String objectModel)} * </pre> ! * The first service provider found in class loader order that supports the specified object model is returned. * </li> * <li> * Platform default <code>XPathFactory</code> is located in a platform specific way. * There must be a platform default XPathFactory for the W3C DOM, i.e. {@link #DEFAULT_OBJECT_MODEL_URI}. * </li> --- 120,143 ---- * <li> * ${java.home}/lib/jaxp.properties is read and the value associated with the key being the system property above is looked for. * If present, the value is processed just like above. * </li> * <li> ! * Uses the service-provider loading facilities, defined by the {@link java.util.ServiceLoader} class, to attempt ! * to locate and load an implementation of the service. * Each potential service provider is required to implement the method: * <pre> * {@link #isObjectModelSupported(String objectModel)} * </pre> ! * A service provider is deemed as valid if it supports the specified object model. ! * ! * <p>In case of multiple providers, the first non-default implementation shall be ! * instantiated and returned. The default implementation is returned if it is ! * the only one found by the service loader.</p> ! * <p> ! * If a misconfigured provider is encountered and {@link java.util.ServiceConfigurationError} is thrown, ! * the error will be wrapped in a {@link javax.xml.xpath.XPathFactoryConfigurationException}.</p> * </li> * <li> * Platform default <code>XPathFactory</code> is located in a platform specific way. * There must be a platform default XPathFactory for the W3C DOM, i.e. {@link #DEFAULT_OBJECT_MODEL_URI}. * </li>
*** 150,160 **** * <code>http://java.sun.com/jaxp/xpath/dom</code> for the W3C DOM, * the org.w3c.dom package, and implementations are free to introduce other URIs for other object models. * * @return Instance of an <code>XPathFactory</code>. * ! * @throws XPathFactoryConfigurationException If the specified object model is unavailable. * @throws NullPointerException If <code>uri</code> is <code>null</code>. * @throws IllegalArgumentException If <code>uri</code> is <code>null</code> * or <code>uri.length() == 0</code>. */ public static final XPathFactory newInstance(final String uri) --- 157,168 ---- * <code>http://java.sun.com/jaxp/xpath/dom</code> for the W3C DOM, * the org.w3c.dom package, and implementations are free to introduce other URIs for other object models. * * @return Instance of an <code>XPathFactory</code>. * ! * @throws XPathFactoryConfigurationException If the specified object model is unavailable, or ! * if a misconfigured provider is encountered * @throws NullPointerException If <code>uri</code> is <code>null</code>. * @throws IllegalArgumentException If <code>uri</code> is <code>null</code> * or <code>uri.length() == 0</code>. */ public static final XPathFactory newInstance(final String uri)