|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjavax.xml.xpath.XPathFactory
public abstract class XPathFactory
XPathFactory
인스턴스를 사용해,XPath
객체를 작성할 수 있습니다.
검색 기구에 대해서는,newInstance(String uri)
를 참조해 주세요.
XPathFactory
클래스는 thread에 대해서 안전하지는 않습니다. 즉, 어플리케이션측에서, 어떠한 경우도 XPathFactory
객체를 사용하는 thread가 1 개 뿐이도록(듯이) 할 필요가 있습니다. 구현에서는, 메소드에 synchronized
의 마크를 붙여, 장해가 있는 클라이언트로부터 보호하는 것을 추천합니다.
XPathFactory
는 재입 불가능합니다. newInstance
메소드의 1 개가 불려 가고 있을 때, 어플리케이션은, 같은 thread로부터에서 만나도,newInstance
메소드를 재귀적으로 호출할 수 없습니다.
필드의 개요 | |
---|---|
static String |
DEFAULT_OBJECT_MODEL_URI
디폴트의 객체 모델 URI 입니다. |
static String |
DEFAULT_PROPERTY_NAME
JAXP 스펙에 따른 디폴트의 프로퍼티명입니다. |
생성자 의 개요 | |
---|---|
protected |
XPathFactory ()
newInstance() ,newInstance(String uri) , 또는 newInstance(String uri, String factoryClassName, ClassLoader classLoader) 로서 protected 생성자 을 사용해,XPathFactory 의 새로운 인스턴스를 작성할 필요가 있습니다. |
메소드의 개요 | |
---|---|
abstract boolean |
getFeature (String name)
이름을 붙일 수 있었던 기능 상태를 가져옵니다. |
abstract boolean |
isObjectModelSupported (String objectModel)
지정된 객체 모델이 이 XPathFactory 에 지원되고 있을까를 돌려줍니다. |
static XPathFactory |
newInstance ()
디폴트의 객체 모델, DEFAULT_OBJECT_MODEL_URI 를 사용해, 새로운 XPathFactory 인스턴스를 가져옵니다. |
static XPathFactory |
newInstance (String uri)
지정된 객체 모델을 사용해, 새로운 XPathFactory 인스턴스를 가져옵니다. |
static XPathFactory |
newInstance (String uri,
String factoryClassName,
ClassLoader classLoader)
팩토리 클래스명으로부터 XPathFactory 의 새로운 인스턴스를 가져옵니다. |
abstract XPath |
newXPath ()
XPathFactory 가 인스턴스화 되었을 때에 특정된 기본이 되는 객체 모델을 사용해, 새로운 XPath 를 돌려줍니다. |
abstract void |
setFeature (String name,
boolean value)
이 팩토리에 의해 생성된 XPathFactory 및 XPath 의 기능을 설정합니다. |
abstract void |
setXPathFunctionResolver (XPathFunctionResolver resolver)
디폴트의 함수 리절버를 설정합니다. |
abstract void |
setXPathVariableResolver (XPathVariableResolver resolver)
디폴트의 변수 리절버를 설정합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
필드의 상세 |
---|
public static final String DEFAULT_PROPERTY_NAME
JAXP 스펙에 따른 디폴트의 프로퍼티명입니다.
public static final String DEFAULT_OBJECT_MODEL_URI
디폴트의 객체 모델 URI 입니다.
생성자 의 상세 |
---|
protected XPathFactory()
newInstance()
,newInstance(String uri)
, 또는 newInstance(String uri, String factoryClassName, ClassLoader classLoader)
로서 protected 생성자 을 사용해,XPathFactory
의 새로운 인스턴스를 작성할 필요가 있습니다.
메소드의 상세 |
---|
public static final XPathFactory newInstance()
디폴트의 객체 모델,DEFAULT_OBJECT_MODEL_URI
를 사용해, 새로운 XPathFactory
인스턴스를 가져옵니다.
이 메소드는, 기능적으로는 다음과 동등합니다.
newInstance(DEFAULT_OBJECT_MODEL_URI)
W3C DOM 의 구현을 항상 사용할 수 있기 (위해)때문에, 이 메소드가 실패할 것은 없습니다.
XPathFactory
의 인스턴스
RuntimeException
- 디폴트의 객체 모델에 대한다
XPathFactory
의 작성시에 에러가 발생했을 경우public static final XPathFactory newInstance(String uri) throws XPathFactoryConfigurationException
지정된 객체 모델을 사용해, 새로운 XPathFactory
인스턴스를 가져옵니다.
XPathFactory
객체를 검색하는 경우, 이 메소드는 「클래스 로더」가 문맥 클래스 로더를 참조하는 이하의 차례로, 다음의 장소를 조사합니다.
DEFAULT_PROPERTY_NAME
+ :uri 가 존재해, uri 가 이 메소드의 파라미터인 경우, 그 값은 클래스명으로서 읽어내진다. 이 메소드는, 클래스 로더를 사용해 이 클래스의 새로운 인스턴스를 작성을 시도해 성공했을 경우는 그것을 돌려준다
jjavax.xml.xpath.XPathFactory
에 일치하는 서비스 프로바이더의 프로바이더 구성 파일이 요구됩니다. 파일 형식과 구문 분석 규칙에 대해서는, JAR 파일의 스펙을 참조해 주세요. 각 서비스 프로바이더는, 다음의 메소드를 구현하고 있을 필요가 있습니다.
isObjectModelSupported(String objectModel)
지정된 객체 모델을 지원하는 클래스 로더내에서 최초로 검출된 서비스 프로바이더가 돌려주어집니다.
XPathFactory
는, 구현 고유의 방법으로 배치된다. W3C DOM용의 플랫폼의 디폴트 XPathFactory, 즉 DEFAULT_OBJECT_MODEL_URI
가 있을 필요가 있습니다.
모든 것이 실패했을 경우,XPathFactoryConfigurationException
가 throw 됩니다.
트러블 슈팅의 힌트
프로퍼티 파일이 어떻게 구문 분석 될까에 대해서는,Properties.load(java.io.InputStream)
를 참조해 주세요. 특히, 구두점 「:」은, 프로퍼티 파일내에서 이스케이프 될 필요가 있기 (위해)때문에, URI 가 적절히 이스케이프 되고 있는 것을 확인해 주세요. 다음에 예를 나타냅니다.
http\://java.sun.com/jaxp/xpath/dom=org.acme.DomXPathFactory
uri
- 기본이 되는 객체 모델을 식별한다.
스펙은, URI DEFAULT_OBJECT_MODEL_URI
,
W3C DOM 의 http://java.sun.com/jaxp/xpath/dom
,
org.w3c.dom 패키지만을 정의해, 구현은 다른 객체 모델의 URI 를 자유롭게 도입 가능
XPathFactory
의 인스턴스
XPathFactoryConfigurationException
- 지정된 객체 모델을 사용할 수 없는 경우
NullPointerException
- uri
가 null
의 경우
IllegalArgumentException
- uri
가 null
의 경우
또는 uri.length() == 0
의 경우public static XPathFactory newInstance(String uri, String factoryClassName, ClassLoader classLoader) throws XPathFactoryConfigurationException
팩토리 클래스명으로부터 XPathFactory
의 새로운 인스턴스를 가져옵니다. 지정된 팩토리 클래스가 지정된 객체 모델을 지원하는 경우,XPathFactory
가 돌려주어집니다. 이 기능은, classpath 에 복수의 프로바이더가 존재하는 경우에 편리합니다. 로드하는 프로바이더를 지정할 수 있으므로, 어플리케이션으로 상세하게 제어할 수 있게 됩니다.
jaxp.debug
시스템 프로퍼티을 설정하면(자), 이 메소드는 실행중의 처리나 검색하고 있는 장소에 관한 대량의 디버그 메세지를 System.err
에 출력합니다.
문제가 있는 경우는 다음의 커멘드를 시험해 주세요.
java -Djaxp.debug=1 YourProgram ....
uri
- 기본이 되는 객체 모델을 식별한다. 스펙은, URI DEFAULT_OBJECT_MODEL_URI
,
W3C DOM 의 http://java.sun.com/jaxp/xpath/dom
,
org.w3c.dom 패키지만을 정의해, 구현은 다른 객체 모델의
URI 를 자유롭게 도입 가능factoryClassName
- javax.xml.xpath.XPathFactory
의 구현을 제공하는 완전 수식의 팩토리 클래스명classLoader
- 팩토리 클래스의 로드에 사용하는 ClassLoader
. null
의 경우,
팩토리 클래스의 로드에는 현재의 Thread
의 문맥 classLoader 가 사용된다
XPathFactory
의 새로운 인스턴스
XPathFactoryConfigurationException
- factoryClassName
가 null
의 경우. 또는,
팩토리 클래스를 로드 및 인스턴스화할 수 없는 경우.
또는, 팩토리 클래스가 uri
파라미터로 지정된 객체 모델을
지원하지 않는 경우
NullPointerException
- uri
가 null
의 경우
IllegalArgumentException
- uri
가 null
의 경우
또는 uri.length() == 0
의 경우newInstance()
,
newInstance(String uri)
public abstract boolean isObjectModelSupported(String objectModel)
지정된 객체 모델이 이 XPathFactory
에 지원되고 있을까를 돌려줍니다.
objectModel
- 반환된 XPathFactory
를 인식하는 객체 모델을 지정한다
XPathFactory
가 objectModel
를 지원하고 있는 경우는 true
, 그렇지 않은 경우는 false
NullPointerException
- objectModel
가 null
의 경우
IllegalArgumentException
- objectModel.length() == 0
의 경우public abstract void setFeature(String name, boolean value) throws XPathFactoryConfigurationException
이 팩토리에 의해 생성된 XPathFactory
및 XPath
의 기능을 설정합니다.
기능명은 완전 수식 URI
입니다. 구현이 독자적인 기능을 정의할 수도 있습니다. 생성하는 XPathFactory
또는 XPath
가 그 기능을 지원할 수 없는 경우는,XPathFactoryConfigurationException
가 throw 됩니다. XPathFactory
는 기능의 값을 표시할 수 있습니다만, 그 상태를 변경할 수 없습니다.
구현은 모두,XMLConstants.FEATURE_SECURE_PROCESSING
기능을 지원하고 있을 필요가 있습니다. 기능이 true
의 경우는, 외부 함수를 참조하면(자) 에러가 됩니다. 이러한 경우, 구현은 XPathFunctionResolver
를 호출할 수 없기 때문에,XPathFunctionException
를 throw 합니다.
name
- 기능명value
- 기능 상태가 true
인가 false
인가
XPathFactoryConfigurationException
- 이 XPathFactory
또는 거기에 따라 작성되는 XPath
가
이 기능을 지원할 수 없는 경우
NullPointerException
- name
가 null
의 경우public abstract boolean getFeature(String name) throws XPathFactoryConfigurationException
이름을 붙일 수 있었던 기능 상태를 가져옵니다.
기능명은 완전 수식 URI
입니다. 구현이 독자적인 기능을 정의할 수도 있습니다. 생성하는 XPathFactory
또는 XPath
가 그 기능을 지원할 수 없는 경우는,XPathFactoryConfigurationException
가 throw 됩니다. XPathFactory
는 기능의 값을 표시할 수 있습니다만, 그 상태를 변경할 수 없습니다.
name
- 기능명
XPathFactoryConfigurationException
- 이
XPathFactory
또는 거기에 따라 작성되는 XPath
가
이 기능을 지원할 수 없는 경우
NullPointerException
- name
가 null
의 경우public abstract void setXPathVariableResolver(XPathVariableResolver resolver)
디폴트의 변수 리절버를 설정합니다.
이 팩토리로 구축된 XPath
객체는, 디폴트로 지정된 리절버를 사용합니다.
resolver
가 null
의 경우,NullPointerException
가 throw 됩니다.
resolver
- 변수 리절버.
NullPointerException
- resolver
가
null
의 경우public abstract void setXPathFunctionResolver(XPathFunctionResolver resolver)
디폴트의 함수 리절버를 설정합니다.
이 팩토리로 구축된 XPath
객체는, 디폴트로 지정된 리절버를 사용합니다.
resolver
가 null
의 경우,NullPointerException
가 throw 됩니다.
resolver
- XPath 함수 리절버
NullPointerException
- resolver
가
null
의 경우public abstract XPath newXPath()
XPathFactory
가 인스턴스화 되었을 때에 특정된 기본이 되는 객체 모델을 사용해, 새로운 XPath
를 돌려줍니다.
XPath
의 새로운 인스턴스
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.