![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| 3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
Вообще говоря, есть несколько вариантов, либо отсылаешь каждому, либо сохраняешь в доступном для клиентских приложений ресурсе. -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
| zss |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: нет Всего: 2 |
Я вроде нашел решение.
Чтоб избавиться от анализа руками я написал два рекурсивных метода, которые позволяют найти любую ноду во всей иерархии xml документа Два метода потому, что названия нод могут повторяться на одном уровне (если такого нет, то достаточно вызова первого метода) К примеру (повторяются properties)
Так вот если я хочу найти например список всех свойств для 2 объекта, то достаточно вызвать
Сами методы
Здесь осуществляется рекурсия для любого уровня вложенности Правда пока не до конца протестил, но пока вроде пашет (может кому и еще пригодится Это сообщение отредактировал(а) zss - 26.1.2005, 15:48 |
||||||
|
|||||||
| 3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
А если что-то измениться в описании обьекта весь код будешь переписывать?
-------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
| zss |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: нет Всего: 2 |
Так в твоем случае ведь тоже придется анализировать (или ты хочешь сказать, что это делается атоматом ?)
Ведь отсылая сообщение надо знать описание объекта |
|||
|
||||
| 3,14 |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
Вообще говоря можно сделать вариант при к-ом не нужно будет прилагать практически никаких усилий даже при смене кода, но ежели надо записать в XML что-то простое - то пожайлуста, вот пример записи в SOAP документ Hasstable-а (немного изменённый вариант кода взятого с http://www-106.ibm.com/developerworks/webs.../ws-soapmap2/):
Результат:
Если тебе интересен вариант типа этого спрашивай, расскажу дальше. Чуть не забыл, для запуска приложения (для компиляции не надо), так же нужны apache-вские mail.jar и activation.jar, пути к ним должны стоять в classpath. Это сообщение отредактировал(а) 3,14 - 28.1.2005, 17:23 -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
||||
|
|||||
| zss |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: нет Всего: 2 |
3,14, спасибо - попробую разобраться
Кстати, а существует ли иерархический класс в java (что-то вроде иерархическрго списка) |
|||
|
||||
| 3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
Чего-то вроде класс Tree нету (хотя разных реализаций по нету выше крыше), вообще говоря класса Map как правило вполне достаточно. К примеру используешь в качестве ключа корневой эл-т а в качестве обьекта хранения - список потомков.
Если же тебе нужно дерево для работы с xml то это совсем другое дело. Это сообщение отредактировал(а) 3,14 - 28.1.2005, 17:22 -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
| zss |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: нет Всего: 2 |
ага |
|||
|
||||
| Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Как это нету??? А JTree? Совсем ведь необязательно чтобы оно рисовалось, можно и так им пользоваться. -------------------- |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Лучше ограничится TreeModel, вернее его реализациями, например DefaultTreeModel. zss А зачем тебе отдельное дерево, чем DOM плох? -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| zss |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: нет Всего: 2 |
Я перевожу данные из xml-файла в собственную иерархическую структуру, которая удобна для доступа к данным. Пока уровень вложенности = 3. Но данные преобразуются к определенному виду. Node - имеет имя и список subnode. Subnode - имеет имя и свойства. Свойства двуч видов. Если использовать DOM, то это заново придется анализировать, а так я пока обхожусь ArrayList |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Тогда посмотри DefaultTreeModel, вот тебе готовая древовидная структура. Плюс еще в том, что при желании отобразить ее будет элементарно.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| zss |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: нет Всего: 2 |
В общем я долго общался с людьми на счет SOAP, так вот они отказываются от этого и хотят увидеть именно создание xml и доступ к нему по сети.
при этом возникают следующие проблеммы: 1. Необходимо запустить серверное приложение и создать xml 2. На клиентской машине запустить приложение. При этом оно должно знать где находится этот xml. Тоесть либо задавать путь к нему через командную строку, либо удаленно запускать само приложение с указанием пути (больше я ничего не придумал) 3. Прочитать xml с сервера локальной сети (А как это сделать ?) Что Вы можете предложить ? Или может быть есть еще какие варианты ? Особенно интересует пункт 3. |
|||
|
||||
| 3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
1. Создать сервлет к-ый по запросу генерирует требуемый XML документ
2. В качестве указания пути использовать URL доступа к сервлету 3. Если средствами java то
Ну а читать из InputStream ты наверное умеешь Это сообщение отредактировал(а) 3,14 - 2.2.2005, 16:02 -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
| zss |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: нет Всего: 2 |
Что-то не очень понял |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |