Форум программистов, компьютерный форум, киберфорум
Java EE (J2EE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/36: Рейтинг темы: голосов - 36, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 06.08.2007
Сообщений: 8

Может ли модуль ejb использоваться в качестве вебсервиса?

21.08.2007, 00:40. Показов 7135. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
есть JBoss - как апп.сервер.
под ним крутятся бины(EJB) - entity и session.
вся логика храниться в корпоративных бинах (entity bean), связь с внешним миром - через сессионные компоненты (session bean).
есть еще слой - сервлет, который подсоединяется к session bean и вызывает некоторые методы.
все работает.
задача следующая - перевести имеющийся функционал на новые рельсы - иметь возможность работать с системой через вебсервисы.
и вот тут возникают вопросы.
использовать ли мне сессионный бин в качестве вебсервиса (как исходник для генерации WSDL, стабов и проч..)?
или прийдется создавать слой - сервлет, который будет вебсервисом, который просто будет передавать управление сессионному бину?
может ли модуль ejb использоваться в качестве вебсервиса? или для этих целей используется только веб-модуль (.war)?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.08.2007, 00:40
Ответы с готовыми решениями:

Как можно проверить, может ли компьютер использоваться в качестве маршрутизатора
Как можно проверить, может ли компьютер использоваться в качестве маршрутизатора (какая командная строка Microsoft)?

Почему не может использоваться command в качестве case для switch?
Почему не может использоваться command в качестве case для switch? using System; using System.Collections.Generic; using...

В качестве оператора могут использоваться только выражения присваивания
Объясните почему при попытке записать код VBA в C# у меня возникает ошибка "В качестве оператора могут использоваться только выражения...

6
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
21.08.2007, 17:21
Для WS по любому придется создавать war, кроме того выбрать ту или иную реализацию вэб-сервисов для Java, например Axis, сервлет по любому будет нужен, но обычно это сервлет реализации вэб-сервисов. Писать собственный сервлет не имеет смысла.



Если дизайн позволяет, то в принципе интерфейс session-bean'а может быть использван для генерации WSDL, стабов и прочая. Если нет, то можно сделать более упрощенный интерфес и на его основе генерировать WSDL.



С уважением,

Владимир
0
0 / 0 / 0
Регистрация: 06.08.2007
Сообщений: 8
22.08.2007, 22:41  [ТС]
в IntelliJ IDEA есть плагин работы с вебсервисами - он работает с Axis.
По идее это должно быть легко, всякие генераторы wsdl, стабов и проч.
но на деле, существующие менюшки не дают деплоить класс в качестве веб сервиса для модулей, отличным от веб.
поэтому я и решил, что веб сервисом может быть создан только на основе вебмодуля.
О чем я имею неверное представление?

Правильно ли я понимаю, что JBoss'у (версии jboss-4.0.5.GA) для работы с веб службами необходим фреймворк JBossWS, который нужно ставить дополнительно?

или необходимый функционал уже присутствует?
по адресу
http://localhost:8080/jbossws/services" target=_blank><FONT color=#800080>http://localhost:8080/jbossws/services
JBoss отзывается и говорит:

Registered Service Endpoints
ServiceEndpointID ServiceEndpointAddress

но это и все.

(Видимо нужно установить дополнительно, потому что плагин для IntelliJ IDEA ругается при указании пути к JBoss, т.к. требует установленного JBossWS)

0
0 / 0 / 0
Регистрация: 06.08.2007
Сообщений: 8
23.08.2007, 20:43  [ТС]
использование тулзы (плагина для IDEA - http://plugins.intellij.net/plugin/?id=133 ) для TomCat - все прекрасно сработало - и



генерация WSDL из класса, и последующие генерации из wsdl "серверных" и "клиентских" кодов.

(Кстати, как их потом использовать?)



те же действия для JBoss - ошибка при попытке деплоя класса (сервлет) в качестве вебсервиса:

Nonvalid context or AxisServlet is not present (web service support not enabled for module)



в web.xml AxisServlet прописан (запустил поддержку веб сервисов - выбрал веб модуль, тип Server, Web Service Platform -



Apache Axis)

появились:

- сервлеты - AxisServlet, AdminServlet, SOAPMonitorService

- сервлетмаппинги -

/servlet/AdminServlet - AdminServlet

/servlet/AxisServlet, /services/* - AxisServlet





что это за ошибка?

как ее решить?

толи ставить JBossWS, к существующему JBoss 4.0.5 GA (или в этой версии есть JBossWS?)

толи ставить JBoss 4.2 (со 100% строенным JBossWS), плюс еще обновлять JRE...
0
0 / 0 / 0
Регистрация: 06.08.2007
Сообщений: 8
28.08.2007, 22:26  [ТС]
Для добавления библиотек Axis в classpath и деплоя, я запускаю поддержку веб сервисов - "enable web service support"



В этом диалоге предлагается ввыбрать тип - server или client.



Во втором случае имеется возможность выбрать не вебмодули.

Хелп подсказывает, что в этом случае необязательна генерация клиентского кода.



В режиме server сервлет Axis добавляется в web.xml



Что-то я совсем запутался...

Кто смог реально запустить веб сервисы под JBoss ?



Добавлено через 1 минуту и 15 секунд

Я уже пришел к мысли, что прийдется реализовывать слой сервлета, который будет дергать сессионный бин.

Уже согласился на это



У меня получается создать примитвный веб сервис для Tomcat - я могу увидеть список сервисов, их wdsl.



И не могу для JBoss - хотя выполняю те же действия.

Ведь JBoss использует Tomcat в качестве сервлет-контейнера...



Может дело в том, что я использую в качестве платформы вебсервисов Axis? Может быть для JBoss нужно использовать JBossWS?



Хотя натыкался на мнение, что JBoss (а точнее JBossWS) так же использует Axis...
0
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
29.08.2007, 15:38
> Axis добавляется в web.xml



Правильно, через Axis-servlet и будет проходить коммуникация между клиентом и бизнес-логикой на сервере.



Главное, чтобы Axis библиотека была включена в war-файл, на случай, если они не входят в стандартный набор JBoss (а они вроде бы не входят).



> Кто смог реально запустить веб сервисы под JBoss ?



Ну я деплоил приложение с вэб-сервисами под JBoss локально, war-файл был точно таким же как и для BEA Weblogic, за исключениме дополнительных deployment descriptors для Weblogic и некоторых махинаций с конфигурацией JBoss'а для правильной регистрации имен JNDI ресурсов (DB connection, EJB).



Никаких особых проблем не было.



С уважением,

Владимир



P.S. JBossWS не пробовал, возможно с ним будет проще, даже если он и сам по себе использует Axis.

P.P.S. Единственное, что могу сказать, визардами из различных IDE для разработки WS не пользовался, war-файл собирался самостоятельно и различные конфигурации изменялись вручную, может быть так конечно и дольше возиться, но зато понимаешь, что к чему и за что отвечает и код получается красивее и проще чем сгенерированный.
0
Christy
12.10.2007, 20:46
по адресу
http://localhost:8080/jbossws/services" target=_blank><FONT color=#800080>http://localhost:8080/jbossws/services
JBoss отзывается и говорит:

Registered Service Endpoints
ServiceEndpointID ServiceEndpointAddress
Я устанавливала jbossws отдельно, но судя по тому, что у Вас он отзывается, значит он уже стоит.
Вот это: Registered Service Endpoints
ServiceEndpointID ServiceEndpointAddress
означает лишь то, что пока Вы не заделоили ни одного сервиса. Когда какойто задеплоите, напротив ServiceEndpointID ServiceEndpointAddress высветится адресс сервиса.
Кристина
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.10.2007, 20:46
Помогаю со студенческими работами здесь

В качестве оператора могут использоваться только выражения присваивания,
Создал маленький код. А Визуалка уже ругается long klc; klc = 53426521534626; Convert.ToInt32(Key.Text) != klc; Key...

В качестве линий связи для передачи данных по компьютерной сети могут использоваться
сетевая карта оптоволокно коаксиальный кабель витая пара

Укажите название приложения, которое будет использоваться провайдером в качестве хост-системы
Корочь ситуация такая кто может мне разжевать вопрос данный мне одной компанией. Вопрос звучит так : Укажите название приложения, которое...

Классы: объекты вспомогательных классов должны использоваться в качестве полей основного класса
объясните, пожалуйста, как это можно реализовать: Один класс является основным, остальные — вспомогательные. Вспомогательные классы...

ОШИБКА - Эта функция здесь не может использоваться
Пытаюсь интегрировать систему из 4х ДУ, но ошибка не даёт построить таблицу результатов. Помогите,пожалуйста, всю голову уже поломал в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru