Язык XML - практическое введение (часть 2)


Использование Java XML-обработчиков - часть 3


  • найдено содержимое элемента - передать его соответствующему обработчику - characters, ignorableWhitespace,processingInstruction и т.д.;
  • если внутри текущего элемента есть подэлементы, то эта процедура повторяется;
  • найден закрывающий тэг элемента - обработать событие endElement();
  • найден закрывающий тэг корневого элемента -обработать событие endDocument;
  • если в процессе обработки были обнаружены ошибки, то анализатором вызываются обработчики предупреждений (warning), ошибок (error) и критических ошибок обработчика (fatalError).
  •    Ссылка на объект класса обработчика событий может передаваться объекту XML-анализатора при помощи следующих функций:

       parser.setDocumentHandler(event_class); // - обработчик событий документа

       parser.setEntityResolver(event_class); // - обработчик событий загрузки DTD-описаний

       parser.setDTDHandler(event_class); // - обработчик событий при анализе DTD-описаний

       parser.setErrorHandler(event_class); // - обработчик чрезвычайных ситуаций

       Здесь event_class - объект созданного нами ранее класса.

       Краткое описание некоторых из объектов-обработчиков событий приведено в следующей таблице:

       Объект DocumentHandler

    startDocument()

    Начало документа

    endDocument()

    Конец документа

    startElement (String name, AttributeList atts)

    Начало элемента. Функции передается название элемента(открывающий тэг) и список его атрибутов.

    endElement (String name)

    Конец элемента

    characters (char[] cbuf, int start, int len)

    Обработка массива текстовых символов

    ignorableWhitespace (char[] cbuf, int start, int len)

    Необрабатываемые символы

    processingInstruction (String target, String data)

    Обработка инструкций XML-анализатора)

       Объект ErrorHandler

    warning (SAXParseException e)

    Получение сообщения о "несерьезной" ошибке. Пдробная информация содержится в передаваемом объекте класса SAXParseException

    error (SAXParseException e)

    Сообщение об ошибке

    fatalError (SAXParseException e)

    Сообщение о критической ошибке

    <


    Начало  Назад  Вперед



    Книжный магазин