Это не дает прямого ответа на ваш вопрос, но я прочитаю немного между строк и сосредоточусь на вашем действительном намерении ...
Так как вам нужен экземпляр какого-то Product
класса, которыйинкапсулирует данные из XML, вероятно, в структурированном виде по предпочтению, вы бы гораздо лучше использовали JAXB для этой задачи.Если у вас нет действительно особых требований к настройке привязки XML-ввода к объектам, это окажется намного проще, чем при использовании SAX.
Что вам нужно будет сделать:
- Получить W3C XML-схему для вашего XML.Если у вас его нет и вы не можете его получить, то существуют инструменты, которые могут генерировать схему на основе входного XML. Trang делает это очень простым.
- Генерация классов Java из схемы.Для этого вы можете использовать XJC (компилятор XML-Java), доступный в Sun JDK.Если вы используете инструменты сборки, такие как Ant или Maven, есть плагины.Это может автоматизировать процесс, чтобы сделать его частью полной сборки.
- Используйте API JAXB с вашими сгенерированными классами, чтобы легко превращать документы XML в объекты и наоборот.
ХотяJAXB потребуется некоторое время для изучения (особенно если желаемое отображение XML-Java не равно 1-к-1), я думаю, что в конечном итоге вы сэкономите время.
Извините, если вы действительноМне нужен SAX, и этот ответ не применим, но я решил, что лучше сообщу вам о ваших возможностях, прежде чем использовать несколько устаревшую модель обработки XML.Обратите внимание, что DOM и StAX также могут вас заинтересовать.