JavaTM Platform
Standard Ed. 6

org.xml.sax.helpers
클래스 DefaultHandler

java.lang.Object 
  상위를 확장 org.xml.sax.helpers.DefaultHandler
모든 구현된 인터페이스:
ContentHandler , DTDHandler , EntityResolver , ErrorHandler
직계의 기존의 서브 클래스:
DefaultHandler2


public class DefaultHandler
extends Object
implements EntityResolver , DTDHandler , ContentHandler , ErrorHandler

SAX 2 이벤트 핸들러의 디폴트 base class입니다.

이 모듈은, 원시 코드, 문서 모두 공개 도메인에 놓여져 있습니다. 따라서, 내용에 관한보증은 일절 제공되지 않습니다. 상세한 것에 대하여는,http://www.saxproject.org 를 참조해 주세요.

이 클래스는, SAX2 어플리케이션용의 간이 base class입니다. SAX2 의 4 개의 코어 핸들러 클래스에 포함되는 모든 콜백의 디폴트 구현을 제공합니다.

어플리케이션의 작성자는, 인터페이스의 일부만을 구현할 필요가 있을 때, 이 클래스를 확장합니다. 퍼서의 작성자는, 어플리케이션 고유의 디폴트 핸들러가 제공되지 않을 때, 이 클래스를 인스턴스화해 디폴트 핸들러를 제공합니다.

이 클래스는, 비추천으로 지정되고 있는 HandlerBase 클래스에 대신하는 클래스입니다.

도입된 버젼:
SAX 2.0
관련 항목:
EntityResolver , DTDHandler , ContentHandler , ErrorHandler

생성자 의 개요
DefaultHandler ()
           
 
메소드의 개요
 void characters (char[] ch, int start, int length)
          요소내의 문자 데이터의 통지를 받습니다.
 void endDocument ()
          문서의 종료 통지를 받습니다.
 void endElement (String  uri, String  localName, String  qName)
          요소의 종료 통지를 받습니다.
 void endPrefixMapping (String  prefix)
          이름 공간 매핑의 종료 통지를 받습니다.
 void error (SAXParseException  e)
          회복 가능한 퍼서 에러의 통지를 받습니다.
 void fatalError (SAXParseException  e)
          치명적인 XML 구문 분석 에러를 보고합니다.
 void ignorableWhitespace (char[] ch, int start, int length)
          요소 컨텐츠에 포함되는 무시할 수 있는 공백 문자의 통지를 받습니다.
 void notationDecl (String  name, String  publicId, String  systemId)
          표기법선언의 통지를 받습니다.
 void processingInstruction (String  target, String  data)
          처리 명령의 통지를 받습니다.
 InputSource resolveEntity (String  publicId, String  systemId)
          외부 엔티티를 해결합니다.
 void setDocumentLocator (Locator  locator)
          문서 이벤트의 Locator 객체를 받습니다.
 void skippedEntity (String  name)
          스킵 된 엔티티의 통지를 받습니다.
 void startDocument ()
          문서의 개시 통지를 받습니다.
 void startElement (String  uri, String  localName, String  qName, Attributes  attributes)
          요소의 개시 통지를 받습니다.
 void startPrefixMapping (String  prefix, String  uri)
          이름 공간 매핑의 개시 통지를 받습니다.
 void unparsedEntityDecl (String  name, String  publicId, String  systemId, String  notationName)
          해석 대상외 엔티티 선언의 통지를 받습니다.
 void warning (SAXParseException  e)
          퍼서 경고의 통지를 받습니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

DefaultHandler

public DefaultHandler()
메소드의 상세

resolveEntity

public InputSource  resolveEntity(String  publicId,
                                 String  systemId)
                          throws IOException ,
                                 SAXException 
외부 엔티티를 해결합니다.

항상 null 를 돌려줍니다. 이것은, 퍼서에게 XML 문서내의 시스템 식별자를 사용시키기 (위해)때문에입니다. 이 메소드는 SAX 의 디폴트의 동작을 구현합니다. 어플리케이션의 작성자는, 서브 클래스내에서 이것을 오버라이드(override) 해, 카탈로그 검색이나 URI 리디렉션과 같이 특수한 변환을 실시합니다.

정의:
인터페이스 EntityResolver 내의 resolveEntity
파라미터:
publicId - 공개 식별자. 사용할 수 없는 경우는 null
systemId - XML 문서에 포함되어 있는 시스템 식별자
반환값:
새로운 입력 소스. 디폴트의 동작이 필요한 경우는 null
예외:
IOException - 에러가 있는 경우, 새로운 입력 소스를 설정한다
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
EntityResolver.resolveEntity(java.lang.String, java.lang.String)

notationDecl

public void notationDecl(String  name,
                         String  publicId,
                         String  systemId)
                  throws SAXException 
표기법선언의 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 문서내에 선언된 표기법을 추적할 필요가 있는 경우, 어플리케이션의 작성자는, 서브 클래스내에서 이 메소드를 오버라이드(override) 합니다.

정의:
인터페이스 DTDHandler 내의 notationDecl
파라미터:
name - 표기 법명
publicId - 표기법의 공개 식별자. 사용할 수 없는 경우는 null
systemId - 표기법의 시스템 식별자
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)

unparsedEntityDecl

public void unparsedEntityDecl(String  name,
                               String  publicId,
                               String  systemId,
                               String  notationName)
                        throws SAXException 
해석 대상외 엔티티 선언의 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 문서내에 선언된 해석 대상외 엔티티를 추적할 필요가 있는 경우, 어플리케이션의 작성자는, 서브 클래스내에서 이 메소드를 오버라이드(override) 합니다.

정의:
인터페이스 DTDHandler 내의 unparsedEntityDecl
파라미터:
name - 엔티티명
publicId - 엔티티의 공개 식별자. 사용할 수 없는 경우는 null
systemId - 엔티티의 시스템 식별자
notationName - 관련 표기 법명
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)

setDocumentLocator

public void setDocumentLocator(Locator  locator)
문서 이벤트의 Locator 객체를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 그 외의 문서 이벤트로 사용하기 위해서 locator를 포함해 둘 필요가 있는 경우, 어플리케이션의 작성자는, 서브 클래스내에서 이 메소드를 오버라이드(override) 합니다.

정의:
인터페이스 ContentHandler 내의 setDocumentLocator
파라미터:
locator - 모든 SAX 문서 이벤트의 locator
관련 항목:
ContentHandler.setDocumentLocator(org.xml.sax.Locator) , Locator

startDocument

public void startDocument()
                   throws SAXException 
문서의 개시 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내의 이 메소드를 오버라이드(override) 해, 문서의 선두에서 특수한 액션 (트리의 루트 노드의 할당, 출력 파일의 작성등)을 실행할 수 있습니다.

정의:
인터페이스 ContentHandler 내의 startDocument
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.startDocument()

endDocument

public void endDocument()
                 throws SAXException 
문서의 종료 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내의 이 메소드를 오버라이드(override) 해, 문서의 마지막으로 특수한 액션 (트리의 finalize, 출력 파일의 종료등)을 실행할 수 있습니다.

정의:
인터페이스 ContentHandler 내의 endDocument
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.endDocument()

startPrefixMapping

public void startPrefixMapping(String  prefix,
                               String  uri)
                        throws SAXException 
이름 공간 매핑의 개시 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내에서 이 메소드를 오버라이드(override) 해, 각 이름 공간 접두사의 스코프의 개시 위치에서 특정의 액션 (접두사의 매핑의 포함등)을 실행할 수 있습니다.

정의:
인터페이스 ContentHandler 내의 startPrefixMapping
파라미터:
prefix - 선언되는 이름 공간앞치수식자
uri - 전치수식자에 매핑 된 이름 공간 URI
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)

endPrefixMapping

public void endPrefixMapping(String  prefix)
                      throws SAXException 
이름 공간 매핑의 종료 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내에서 이 메소드를 오버라이드(override) 해, 개개의 접두사의 종료 위치에서 특정의 액션을 실행할 수 있습니다.

정의:
인터페이스 ContentHandler 내의 endPrefixMapping
파라미터:
prefix - 선언되는 이름 공간앞치수식자
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.endPrefixMapping(java.lang.String)

startElement

public void startElement(String  uri,
                         String  localName,
                         String  qName,
                         Attributes  attributes)
                  throws SAXException 
요소의 개시 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내의 이 메소드를 오버라이드(override) 해, 각 요소의 선두에서 특수한 액션 (새로운 트리 노드의 할당, 출력 내용의 파일에의 기입등)을 실행할 수 있습니다. 이름 공간 URI.

정의:
인터페이스 ContentHandler 내의 startElement
파라미터:
uri - 이름 공간 URI. 요소가 이름 공간 URI 를 가지지 않는 경우, 또는 이름 공간 처리가 실행되지 않는 경우는 null
localName - 전치수식자를 포함하지 않는 로컬명. 이름 공간 처리를 하지 않는 경우는 공문자열
qName - 접두사를 가지는 수식명. 수식명을 사용할 수 없는 경우는 공문자열
attributes - 요소에 부가된 속성. 속성이 존재하지 않는 경우, 빈 상태(empty)의 Attributes 객체
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)

endElement

public void endElement(String  uri,
                       String  localName,
                       String  qName)
                throws SAXException 
요소의 종료 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내의 이 메소드를 오버라이드(override) 해, 각 요소의 마지막으로 특수한 액션 (트리 노드의 finalize, 출력 내용의 파일에의 기입등)을 실행할 수 있습니다.

정의:
인터페이스 ContentHandler 내의 endElement
파라미터:
uri - 이름 공간 URI. 요소가 이름 공간 URI 를 가지지 않는 경우, 또는 이름 공간 처리가 실행되지 않는 경우는 null
localName - 전치수식자를 포함하지 않는 로컬명. 이름 공간 처리를 하지 않는 경우는 공문자열
qName - 접두사를 가지는 수식명. 수식명을 사용할 수 없는 경우는 공문자열
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)

characters

public void characters(char[] ch,
                       int start,
                       int length)
                throws SAXException 
요소내의 문자 데이터의 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 이 메소드를 오버라이드(override) 해, 각 문자 데이타체크에 대해서 특수한 액션 (노드 또는 버퍼에의 데이터의 추가, 데이터의 파일에의 출력등)을 실행할 수 있습니다.

정의:
인터페이스 ContentHandler 내의 characters
파라미터:
ch - 문자
start - 문자 배열내의 개시 위치
length - 문자 배열로부터 사용되는 문자수
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.characters(char[], int, int)

ignorableWhitespace

public void ignorableWhitespace(char[] ch,
                                int start,
                                int length)
                         throws SAXException 
요소 컨텐츠에 포함되는 무시할 수 있는 공백 문자의 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 이 메소드를 오버라이드(override) 해, 무시할 수 있는 공백 문자의 각 체크에 대해서 특수한 액션 (노드 또는 버퍼에의 데이터의 추가, 데이터의 파일에의 출력등)을 실행할 수 있습니다.

정의:
인터페이스 ContentHandler 내의 ignorableWhitespace
파라미터:
ch - 공백 문자
start - 문자 배열내의 개시 위치
length - 문자 배열로부터 사용되는 문자수
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.ignorableWhitespace(char[], int, int)

processingInstruction

public void processingInstruction(String  target,
                                  String  data)
                           throws SAXException 
처리 명령의 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내의 이 메소드를 오버라이드(override) 해, 각 처리 명령에 대해서 특수한 액션 (상태 변수의 설정, 그 외의 메소드의 호출등)을 실행할 수 있습니다.

정의:
인터페이스 ContentHandler 내의 processingInstruction
파라미터:
target - 처리 명령의 타겟
data - 처리 명령 데이터. 데이터가 제공되지 않는 경우는 null
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.processingInstruction(java.lang.String, java.lang.String)

skippedEntity

public void skippedEntity(String  name)
                   throws SAXException 
스킵 된 엔티티의 통지를 받습니다.

디폴트에서는 아무것도 실시하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내의 이 메소드를 오버라이드(override) 해, 각 처리 명령에 대해서 특수한 액션 (상태 변수의 설정, 그 외의 메소드의 호출등)을 실행할 수 있습니다.

정의:
인터페이스 ContentHandler 내의 skippedEntity
파라미터:
name - 스킵 된 엔티티의 이름
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ContentHandler.processingInstruction(java.lang.String, java.lang.String)

warning

public void warning(SAXParseException  e)
             throws SAXException 
퍼서 경고의 통지를 받습니다.

디폴트 구현은 아무것도 실행하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내의 이 메소드를 오버라이드(override) 해, 각 경고에 대해서 특수한 액션 (로그 파일에의 메세지의 삽입, 메세지의 콘솔에의 출력등)을 실행할 수 있습니다.

정의:
인터페이스 ErrorHandler 내의 warning
파라미터:
e - 예외로서 encode 된 경고 정보
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ErrorHandler.warning(org.xml.sax.SAXParseException) , SAXParseException

error

public void error(SAXParseException  e)
           throws SAXException 
회복 가능한 퍼서 에러의 통지를 받습니다.

디폴트 구현은 아무것도 실행하지 않습니다. 어플리케이션의 작성자는, 서브 클래스내의 이 메소드를 오버라이드(override) 해, 각 에러에 대해서 특수한 액션 (로그 파일에의 메세지의 삽입, 메세지의 콘솔에의 출력등)을 실행할 수 있습니다.

정의:
인터페이스 ErrorHandler 내의 error
파라미터:
e - 예외로서 encode 된 에러 정보
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ErrorHandler.warning(org.xml.sax.SAXParseException) , SAXParseException

fatalError

public void fatalError(SAXParseException  e)
                throws SAXException 
치명적인 XML 구문 분석 에러를 보고합니다.

디폴트의 구현에서는 SAXParseException 를 throw 합니다. 어플리케이션의 작성자는, 개개의 치명적인 에러에 대해서 특수한 액션을 잡을 (모든 에러를 단일의 보고에 정리하는 등) 필요가 있는 경우, 서브 클래스내의 이 메소드를 오버라이드(override) 할 수 있습니다. 이 메소드가 불려 가면(자), 문서의 신뢰성이 낮아져, 퍼서도 구문 분석 이벤트를 보고하지 않게 되므로, 어플리케이션의 일반적으로 처리는 모두 종료될 필요가 있습니다.

정의:
인터페이스 ErrorHandler 내의 fatalError
파라미터:
e - 예외로서 encode 된 에러 정보
예외:
SAXException - SAX 예외. 다른 예외를 랩 하고 있을 가능성이 있는
관련 항목:
ErrorHandler.fatalError(org.xml.sax.SAXParseException) , SAXParseException

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 도 참조해 주세요.