Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / apche XmlBeans xsd2inst / 5 сообщений из 5, страница 1 из 1
31.01.2012, 19:13:42
    #37640605
apche XmlBeans xsd2inst
Всем доброго дня)))
Возникла необходимость формировать xml-документ по xsd в Java. Все ссылки по этому поводу на xsd2inst из apach.XmlBeans. Скачал версию 2.5.0. Опробовал с командной стоки - все работает. С исходников затащил себе код из ShemaInstanceGenerator.java - получаю Exception - "The 0th supplied input is not a schema document: its type is N="(id=154)". Там код-то простой))). В отладчике XmlObject.Factory.parse(...) не дает Exception и сформированный объект содержит мой xsd, но тип объекта XmlBeans.NO_TYPE. Естественно дальше валится XmlBeans.copileXsd(...) - смотрел по кодам - просто на несоответствии типа входного документа, при попытке привести его к org.appach.xmlbens.impl.xb.xsdschema.SchemaDocument.

Братья, мож кто подтолкнет куда мне рыть)))

Заранее благодарен)))
...
Рейтинг: 0 / 0
01.02.2012, 08:56:48
    #37641226
apche XmlBeans xsd2inst
Уточню - пишу под eclipce - plug-in - отлаживаюсь через eclipce-application. Мож настройки какие в eclipce помогут?
...
Рейтинг: 0 / 0
01.02.2012, 09:42:30
    #37641260
apche XmlBeans xsd2inst
Еще уточнение - не работает в обработчике события от кнопки. Перенес код в конструктор диалога - там все работает. Я еще больше озадачен. В чем может быть проблема? Но уж и до-кучи - приложение JFace SWT)))
...
Рейтинг: 0 / 0
01.02.2012, 10:05:38
    #37641285
apche XmlBeans xsd2inst
Продвигаюсь дальше - похоже дело не в обработчике. Я динамически подгружаю классы и баг начинает проявляться после таких кодов
loader=new URLClassLoader(urls);
Thread.currentThread().setContextClassLoader(loader);
- когда я устанавливаю в контекст свой класс-лоадер

Мож я чего не так делаю? Мож после нужно вычищать свой лоадер из контекста?

Посоветуйте))))
...
Рейтинг: 0 / 0
01.02.2012, 11:49:31
    #37641502
apche XmlBeans xsd2inst
Похоже сам и отвечу)))
Запоминаю через getContextClassLoader - текущий лоадер и восстанавливаю его после завершения работы со своим. Наверное это нормальная культура программирования. Остаюсь в недоумении - почему парсер просто молчал - если внутрях не отработал егошный лоадер). Потом setContextClassLoader - логично не void-овскую иметь - ну возвращали бы туда текущий лоадер)))Это сразу наводило бы на мысль))) Удачи всем)))
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / apche XmlBeans xsd2inst / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]