Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > Парсинг XML не теряя последовательности тегов |
Автор: Авенгер 12.5.2011, 10:31 | ||
Привет! Столкнулся со следующей задачей: Нужно распарсить XML файл так, чтоб не терялась последовательность тегов, т.е к примеру есть следующий XML:
Нужно из <testAction> вытащить все вложенные теги в соответствии с их последовательностью(не однозначна) в XML, а затем исходя из типа этих тегов вызывать различные методы. пытаюсь делать с помощью "selectPath", но насколько я понял этот метод возвращает массив типа XmlObject. а мне бы нужно сохранить исходный тип каждого тега(сформированный на основе XSD). Подскажите пожалуйста, может есть варианты сохранения последовательности и типа? |
Автор: MisterCleric 12.5.2011, 11:31 |
http://www.google.com/search?q=xslt |
Автор: Авенгер 12.5.2011, 11:39 |
Забыл сразу сказать.... пользуюсь xmlBeans, использовать что-то другое нет возможности. а я так понял,что xslt это альтернатива xsd и нужно другое ПО |
Автор: MisterCleric 12.5.2011, 12:11 |
Нет, xslt - это инструмент, который позволяет из одного XML сделать другой, без каких-либо "анмаршвализаций" в Java, а потом обратно, как ты проводишь пример. |
Автор: LSD 12.5.2011, 12:16 |
А разве XmlBeans не сохраняет последовательность тегов? |
Автор: Авенгер 12.5.2011, 12:45 |
я имею ввиду уже после парсинга всего xml, нужно вытащить последовательность из конкретного блока. если пользоваться методами вроде "getClassArray()", то у меня получится массив типа Class и в нем будут все теги этого типа встречающиеся в данном блоке(соответственно теряется последовательность) задача моя стоит в написании парсера, который на основе тегов из xml вызывает различные методы. все это делается для того, чтоб однажды написать код, а в дальнейшей просто накидывать сценарии тестов в виде xml файлов. |
Автор: MisterCleric 12.5.2011, 13:01 |
А почему не воспользоваться какими-то уже существующими тулзами: http://www.google.com/search?q=testng Или если уж хочется скриптами побаловаться: http://www.google.com/search?q=groovy+testing |
Автор: Авенгер 12.5.2011, 13:14 |
с радостью бы воспользовался, но работаю в рамках уже написанного ОГРОМНОГО фреймверка, так что приходится делать так как делаю. ![]() |
Автор: LSD 12.5.2011, 14:02 |
Покажи схему? |
Автор: Авенгер 12.5.2011, 14:12 |
спасибо за помощь!!! схему завтра покажу, работаю на удаленных машинах, копи/паст на локальную не работает, придется ручками печатать! |
Автор: Авенгер 13.5.2011, 09:39 |
Вот схема(упрощенная, но отражающая суть): http://saveimg.ru/show-image.php?id=c5815f2b1dbecaa6621db0290777a8c2 печатать влом ![]() |
Автор: LSD 13.5.2011, 14:04 |
Мне схема нужна была, чтобы скомпилить по ней XmlBeans, сам я ее набирать тоже не буду. Не обязательно вся схема, просто пример демонстрирующий проблему. |
Автор: Авенгер 17.5.2011, 08:26 |
Решил проблему переписав XSD. теперь не создаю отдельный класс для тегов, а использую один тег "action" но с разными атрибутами. Спасибо![]() |