JavaTM Platform
Standard Ed. 6

javax.xml.transform
클래스 TransformerFactory

java.lang.Object 
  상위를 확장 javax.xml.transform.TransformerFactory
직계의 기존의 서브 클래스:
SAXTransformerFactory


public abstract class TransformerFactory
extends Object

TransformerFactory 인스턴스를 사용해,TransformerTemplates 객체를 작성할 수가 있습니다.

 

어느 팩토리 구현을 작성할까를 결정하는 시스템 프로퍼티의 이름은 javax.xml.transform.TransformerFactory 입니다. 이 프로퍼티은,TransformerFactory abstract 클래스의 구상 서브 클래스를 명명합니다. 이 프로퍼티이 정의되어 있지 않은 경우는, 플랫폼의 디폴트가 사용됩니다.


생성자 의 개요
protected TransformerFactory ()
          디폴트의 생성자 이 의도적으로 보호됩니다.
 
메소드의 개요
abstract  Source getAssociatedStylesheet (Source  source, String  media, String  title, String  charset)
          「The xml-stylesheet processing instruction」로부터, 지정된 기준에 일치하는 XML Source 문서에 관련지을 수 있었던 스타일 시트 스펙을 가져옵니다.
abstract  Object getAttribute (String  name)
          사용자가 기본이 되는 구현의 특정의 속성을 꺼낼 수가 있도록(듯이) 합니다.
abstract  ErrorListener getErrorListener ()
          TransformerFactory 의 에러 이벤트 핸들러를 가져옵니다.
abstract  boolean getFeature (String  name)
          기능의 값을 검색합니다.
abstract  URIResolver getURIResolver ()
          document(), xsl:import, 또는 xsl:include 로 사용되는 URI 를 해결하기 위해서 변환시에 디폴트로 사용되는 객체를 가져옵니다.
static TransformerFactory newInstance ()
          TransformerFactory 의 새로운 인스턴스를 가져옵니다.
static TransformerFactory newInstance (String  factoryClassName, ClassLoader  classLoader)
          팩토리 클래스명으로부터 TransformerFactory 의 새로운 인스턴스를 가져옵니다.
abstract  Templates newTemplates (Source  source)
          Source 를 처리해, 소스의 컴파일 표현인 Templates 객체로 합니다.
abstract  Transformer newTransformer ()
          Source 로부터 Result 에의 카피를 실행하는 새로운 Transformer (항등변환)를 작성합니다.
abstract  Transformer newTransformer (Source  source)
          SourceTransformer Object 에 처리합니다.
abstract  void setAttribute (String  name, Object  value)
          사용자가 기본이 되는 구현에 특정의 속성을 설정할 수 있도록(듯이) 합니다.
abstract  void setErrorListener (ErrorListener  listener)
          TransformerFactory 의 에러 이벤트 청취자를 설정합니다.
abstract  void setFeature (String  name, boolean value)
          이 팩토리에 의해 생성된 TransformerFactoryTransformer 또는 Template 의 기능을 설정합니다.
abstract  void setURIResolver (URIResolver  resolver)
          document(), xsl:import, 또는 xsl:include 로 사용되는 URI 를 해결하기 위해서 변환시에 디폴트로 사용되는 객체를 설정합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

TransformerFactory

protected TransformerFactory()
디폴트의 생성자 이 의도적으로 보호됩니다.

메소드의 상세

newInstance

public static TransformerFactory  newInstance()
                                      throws TransformerFactoryConfigurationError 

TransformerFactory 의 새로운 인스턴스를 가져옵니다. 이 static 메소드는 새로운 팩토리 인스턴스를 작성합니다. 이 메소드는 다음의 순서의 룩 업 순서로, 로드하는 TransformerFactory 구현 클래스를 판정합니다.

 

어플리케이션이 TransformerFactory 에의 참조를 취득하면(자), 팩토리를 사용해 transformer 의 인스턴스를 설정 및 취득할 수가 있습니다.

반환값:
새로운 TransformerFactory 인스턴스. null 는 불가
예외:
TransformerFactoryConfigurationError - 구현을 사용할 수 없는가 인스턴스화할 수 없는 경우, throw 된다

newInstance

public static TransformerFactory  newInstance(String  factoryClassName,
                                             ClassLoader  classLoader)
                                      throws TransformerFactoryConfigurationError 

팩토리 클래스명으로부터 TransformerFactory 의 새로운 인스턴스를 가져옵니다. 이 기능은, classpath 에 복수의 프로바이더가 존재하는 경우에 편리합니다. 로드하는 프로바이더를 지정할 수 있으므로, 어플리케이션으로 상세하게 제어할 수 있게 됩니다.

 

어플리케이션이 TransformerFactory 에의 참조를 취득하면(자), 팩토리를 사용해 transformer 의 인스턴스를 설정 및 취득할 수가 있습니다.

트러블 슈팅의 힌트

 

jaxp.debug 시스템 프로퍼티을 설정하면(자), 이 메소드는 실행중의 처리나 검색하고 있는 장소에 관한 대량의 디버그 메세지를 System.err 에 출력합니다.

 

문제가 있는 경우는 다음의 커멘드를 시험해 주세요.

 java -Djaxp.debug=1 YourProgram ....
 

파라미터:
factoryClassName - javax.xml.transform.TransformerFactory 의 구현을 제공하는 완전 수식의 팩토리 클래스명
classLoader - 팩토리 클래스의 로드에 사용하는 ClassLoader. null 의 경우, 팩토리 클래스의 로드에는 현재의 Thread 의 문맥 classLoader 가 사용된다
반환값:
새로운 TransformerFactory 인스턴스. null 는 불가
예외:
TransformerFactoryConfigurationError - factoryClassNamenull 의 경우. 또는, 팩토리 클래스를 로드 및 인스턴스화할 수 없는 경우
도입된 버젼:
1.6
관련 항목:
newInstance()

newTransformer

public abstract Transformer  newTransformer(Source  source)
                                    throws TransformerConfigurationException 

SourceTransformer Object 에 처리합니다. Source「XSL Transformations (XSLT) Version 1.0」에 적합하는 XSLT 문서입니다. 이 Transformer 는 동시에 동작하는 복수의 Thread 로 사용할 수 없습니다. 다른 Thread 에서는 동시에 사용되는 TransformerFactories 도 다릅니다.

파라미터:
source - Transformer 의 작성에 사용되는 XSLT 문서의 Source. XML Source 의 예에는, DOMSource , SAXSource , 및 StreamSource 가 있다
반환값:
1 개의 Thread 로 변환을 실행하기 위해서 사용된다 Transformer 객체. null 는 불가
예외:
TransformerConfigurationException - Source 의 구문 분석시에 에러가 발생하는지, Transformer 인스턴스를 작성할 수 없는 경우에 throw 되는
관련 항목:
XSL Transformations (XSLT) Version 1.0

newTransformer

public abstract Transformer  newTransformer()
                                    throws TransformerConfigurationException 

Source 로부터 Result 에의 카피를 실행하는 새로운 Transformer (항등변환)를 작성합니다.

반환값:
1 개의 thread로 변환을 실행하기 위해서 사용된다 Transformer 객체. null 는 불가
예외:
TransformerConfigurationException - Transformer 인스턴스를 작성할 수 없는 경우

newTemplates

public abstract Templates  newTemplates(Source  source)
                                throws TransformerConfigurationException 
Source 를 처리해, 소스의 컴파일 표현인 Templates 객체로 합니다. 이 Templates 객체는, 복수의 thread로 동시에 사용할 수가 있습니다. Templates 객체를 작성하는 것으로써, TransformerFactory 는 변환 명령의 퍼포먼스의 최적화를 상세하게 실시할 수가 있어 실행시 변환이 저하할 것은 없습니다.

파라미터:
source - URL, 입력 스트림등을 보관 유지하는 객체
반환값:
변환을 위해서(때문에) 사용할 수 있는 Templates 객체. null 는 불가
예외:
TransformerConfigurationException - Templates 객체 구축의 구문 분석에 실패했을 경우

getAssociatedStylesheet

public abstract Source  getAssociatedStylesheet(Source  source,
                                               String  media,
                                               String  title,
                                               String  charset)
                                        throws TransformerConfigurationException 

「The xml-stylesheet processing instruction」로부터, 지정된 기준에 일치하는 XML Source 문서에 관련지을 수 있었던 스타일 시트 스펙을 가져옵니다. 몇개의 스타일 시트를 돌려줄 수가 있습니다. 그 경우, 그러한 스타일 시트는, 1 개의 스타일 시트내의 임포트 또는 cascade의 리스트인것 같이 적용됩니다.

파라미터:
source - XML 소스 문서
media - 일치하는 미디어 속성. null 의 경우가 있어, 그 경우, 설정되어 있는 템플릿이 사용되는 (즉 alternate = no)
title - 일치하는 타이틀 속성의 값. null 의 경우 있어
charset - 일치하는 캐릭터 세트 속성의 값. null 의 경우 있어
반환값:
TransformerFactory 에 건네주는데 적합한 Source Object
예외:
TransformerConfigurationException - source 의 구문 분석시에 에러가 발생했을 경우 Exception 가 throw 되는
관련 항목:
Associating Style Sheets with XML documents Version 1.0

setURIResolver

public abstract void setURIResolver(URIResolver  resolver)
document(), xsl:import, 또는 xsl:include 로 사용되는 URI 를 해결하기 위해서 변환시에 디폴트로 사용되는 객체를 설정합니다.

파라미터:
resolver - URIResolver 인터페이스를 구현하는 객체, 또는 null

getURIResolver

public abstract URIResolver  getURIResolver()
document(), xsl:import, 또는 xsl:include 로 사용되는 URI 를 해결하기 위해서 변환시에 디폴트로 사용되는 객체를 가져옵니다.

반환값:
setURIResolver 를 사용해 설정된 URIResolver

setFeature

public abstract void setFeature(String  name,
                                boolean value)
                         throws TransformerConfigurationException 

이 팩토리에 의해 생성된 TransformerFactoryTransformer 또는 Template 의 기능을 설정합니다.

기능명은 완전 수식 URI 입니다. 구현이 독자적인 기능을 정의할 수도 있습니다. 생성하는 TransformerFactory,Transformer, 또는 Template 가 그 기능을 지원할 수 없는 경우는,TransformerConfigurationException 가 throw 됩니다. TransformerFactory 는 기능의 값을 표시할 수 있습니다만, 그 상태를 변경할 수 없습니다.

 

구현은 모두,XMLConstants.FEATURE_SECURE_PROCESSING 기능을 지원하고 있을 필요가 있습니다. 이 기능에 대해서는 다음과 같습니다.

파라미터:
name - 기능명
value - 기능 상태가 true 인가 false 인가
예외:
TransformerConfigurationException - 작성하는 TransformerFactory, Transformer, 또는 Template 가 이 기능을 지원할 수 없는 경우
NullPointerException - name 파라미터가 null 의 경우

getFeature

public abstract boolean getFeature(String  name)
기능의 값을 검색합니다.

기능명은 완전 수식 URI 입니다. 구현이 독자적인 기능을 정의할 수도 있습니다. 생성하는 TransformerFactory,Transformer, 또는 Template 가 그 기능을 지원할 수 없는 경우는,false 가 돌려주어집니다. TransformerFactory 는 기능의 값을 표시할 수 있습니다만, 그 상태를 변경할 수 없습니다.

파라미터:
name - 기능명
반환값:
기능의 현재 상태. true 또는 false
예외:
NullPointerException - name 파라미터가 null 의 경우

setAttribute

public abstract void setAttribute(String  name,
                                  Object  value)
사용자가 기본이 되는 구현에 특정의 속성을 설정할 수 있도록(듯이) 합니다. 이 문맥의 속성은, 구현이 제공하는 옵션으로서 정의됩니다. 기본이 되는 구현이 속성을 인식하지 않는 경우에 IllegalArgumentException 가 throw 됩니다.

파라미터:
name - 속성의 이름
value - 속성의 값
예외:
IllegalArgumentException - 구현이 속성을 인식하지 않는 경우

getAttribute

public abstract Object  getAttribute(String  name)
사용자가 기본이 되는 구현의 특정의 속성을 꺼낼 수가 있도록(듯이) 합니다. 기본이 되는 구현이 속성을 인식하지 않는 경우에 IllegalArgumentException 가 throw 됩니다.

파라미터:
name - 속성의 이름
반환값:
속성의 값
예외:
IllegalArgumentException - 구현이 속성을 인식하지 않는 경우

setErrorListener

public abstract void setErrorListener(ErrorListener  listener)
TransformerFactory 의 에러 이벤트 청취자를 설정합니다. TransformerFactory 는, 변환 자체이기 때문에는 아니고, 변환 명령을 처리하기 위해서 사용됩니다. ErrorListener 청취자가 null 의 경우,IllegalArgumentException 가 throw 됩니다.

파라미터:
listener - 새로운 에러 청취자
예외:
IllegalArgumentException - listenernull 의 경우

getErrorListener

public abstract ErrorListener  getErrorListener()
TransformerFactory 의 에러 이벤트 핸들러를 가져옵니다.

반환값:
현재의 에러 핸들러. null 는 불가

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.