Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с XML и XPathAPI 
:(
    Опции темы
Cross
Дата 26.4.2008, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


информатик-аналитик
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 2.6.2006
Где: Москва

Репутация: нет
Всего: 1



Сделала DOM парсинг XML-файла. 
Цель - передать все дерево документа как поток в XSP-страничку.

Вот код:

Код

package domparsertest;

import javax.xml.transform.TransformerException;
import org.w3c.dom.*;
import org.apache.xerces.parsers.DOMParser;
import org.apache.xpath.XPathAPI;

public class Main {
    
    private static Document doc = null;
    private static Node n = null;
    
    public static void main(String[] args) {
       
    try {
            DOMParser parser = new DOMParser();
            parser.parse("index-text.xml");
            doc = parser.getDocument();
            try {
                Node xe = XPathAPI.selectSingleNode(doc, "root");
                System.out.println(xe);
                } catch (TransformerException ex) {
            }
            
        } catch (Exception ex) {
            System.out.println(ex);
        }
    }
}


Корневая ветсь документа XML называется "root". Но Java всегда возвращает NULL.

PM MAIL ICQ Skype MSN   Вверх
medin_84
Дата 17.9.2009, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 3.1.2008

Репутация: нет
Всего: нет



возможно
System.out.println(xe.getTextContent());
или getNodeValue()
что в root

вроде зависит от выборки Node xe = XPathAPI.selectSingleNode(doc, "root");

Это сообщение отредактировал(а) medin_84 - 17.9.2009, 08:09
PM MAIL   Вверх
medin_84
Дата 17.9.2009, 08:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 3.1.2008

Репутация: нет
Всего: нет



слудеющий код применимо к данному xml ниже работает у меня
Код

try {
    String fxml = application.getRealPath("/WEB-INF/xml/") + "/nav_tools.xml";
            DOMParser parser = new DOMParser();
            parser.parse(fxml);
            Document doc = parser.getDocument();
            try {
                Node n = XPathAPI.selectSingleNode(doc, "menu/title[@lang=\"ru\"]");
                response.getWriter().println(n.getFirstChild().getNodeValue().toString());
            }catch (TransformerException n) {
            }
            
    } catch (Exception n) {
        response.getWriter().println("n=" + n);
    }


Код

<menu>
    <title lang="kz">Деректер</title>
    <title lang="ru">Ресурсы</title>
    <title lang="en">Resources</title>
</menu>


результат обработки = Ресурсы
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0980 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.