Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.12.2015, 13:38   #1
Ilyard
 
Регистрация: 09.01.2013
Сообщений: 5
По умолчанию Ошибка автоматического создания wsdl при деплое проекта веб-сервиса на IBM WAS

Доброе время суток.
Уже пол года как занимаюсь разработкой JAX-WS сервисов. И возникла ошибка которую не могу уже пару месяцев победить.
Сначала предоставляю данные о моих средах и IDE и др. парамерах.
Начал разрабатывать на IBM Rational application developer for WebSphere software v9.1.1 (далее RAD) , позже на нем же версии 9.5.
Локально на моем ПК так же установлен сервер WebSphere Application Server v8.5.5.7 (далее WAS), недавно обновленный до 8.5.5.8.
Используется JRE 1.6. Не девовской и тестовой средах конфигурация такая же.
Веб-сервис создавал как говорится, по книжке, а конкретно "Rational Application Developer for WebSphere Software V8 Programming Guide" раздел 14, используя top-down подход,
тоесть сначала создавал голый проект, Dynamic Web Project (Dynamic Web Module version 3.0) в паре с его EAR проектом (EAR version 6.0),
в проект в папку WebContent добавлял новый WSDL файл (протокол выбирал SOAP), описывал в нем объекты, элементы и генерил из него автоматом Java Bean "скелеты" классов (Version of JAX-WB code to be genereted: 2.2).
Создавались автоклассы, я их потом заполнял логикой. Основная логика у меня хранилась в отдельном вручную созданном классе Utils который находится в отдельном пакете, а в автосгенерированном главном классе ...SOAPImpl я уже создавал объект класса Utils,
вызывал нужный мне метод и возвращал результат.
Разработанный таким образом Веб-сервис деплоился на мой локальный WAS в виде EARника, когда я его принудительно паблишил из RADа.
Что бы перенести сервис со своей локальной машины на девовскую или тестовую среду мне достаточно было в RAD экспортировать основной проект в виде war'ника (Export - Web - WAR file)
и потом этот war'ник уже напрямую в девоском/тестовом WAS проинсталировать (раздел WebSphere enterprise applications - Install в консоли WAS). И все было хорошо: после инсталяции можно было зайти в WAS в сам application
и в разделе Web Services Properties - Publish WSDL files и все такое все было хорошо.
Но с развитием проекта он дополнялся новым кодом и т. д. и на определенном этапе когда я обновлял проект на WAS через Update система писала что приложение успешно обновлено, но внутри проекта на WAS раздела Web Services Properties уже не стало,
а в логах обновления/установки появилось следующее исключение (см.log.docx)

В итоге я не могу сгенерировать автоматом WSDL с пролижения развернутого на WAS. Единственный способ который я нашел - это паблишить проект в WAS напрямую с RAD,
но проект в таком случае паблишиться как EAR. С него можно извлечь WSDL. Но при экспорте этого EAR как с RAD так и с WAS на другую среду и попытку установки возникает такая же ошибка.
Тоесть единственный способ - это деплоить апликейшн прямо с IDE RAD находящегося на той же машине, на которую необходимо установить веб-сервис!!!
Я жил с этим и не тужил, пока не пришла пора менять протокол общения с http на секюрный https, и тут WAS выдал новый прикол:
те проекты котрые установленны на нем как war'ники и которые не менялись и не пострадали от вышеописанной ошибки (в виду редкого изменения),
в них успешно можно поменять протокол в разделе Provide HTTP endpoint URL information на https. Те же проекты по которым выскочила ошибка - такой опции не имеют.
Кроме того те проекты которые были установлены на WAS альтернативным способом через RAD в виде EAR'ников - в них раздел Provide HTTP endpoint URL information присутствует,
но изменить в нем на https не дает. Выходит что единственный способ смены транспортного протокола для задеплоеного веб-сервиса - это что бы он был задеплоен в виде war'ника и задеплоен корректно.
Но описанная в начале сего сообщения ошибка не дает это сделать.
МОжет кто-то сталкивался с подобной ситуацией и знает ее решение?
Может есть способ сказать проекту в IDE RAD что бы он сразу при деплое на сервер паблишился с применением секюрного https протокола?
Прилагаю wsdl и автоклассы проекта.
Вложения
Тип файла: zip project.zip (14.4 Кб, 5 просмотров)
Тип файла: docx log.docx (13.3 Кб, 6 просмотров)

Последний раз редактировалось Ilyard; 25.12.2015 в 13:43.
Ilyard вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка при локализации проекта Oleg_SS Общие вопросы Delphi 6 15.12.2015 14:40
Стартап веб сервиса ->схему сервиса прилагаю Bikalexander Фриланс 7 12.10.2015 15:43
Ищу веб-программиста для создания интернет сервиса aeternus Фриланс 10 03.07.2010 18:15
Построить описание веб-сервиса на языке WSDL. evilok Помощь студентам 0 16.12.2009 22:33
ошибка при открытии проекта KiSH333 БД в Delphi 2 08.09.2008 12:47