2010-03-29 4 views
8

Я изучаю EJB3 за последние несколько дней. У меня много вопросов относительно EJB, серверов приложений и развертывания EJB.Как развернуть EJB на сервере?

Для начала я создал один простой сеансовый сеанс helloworld без состояния, но я не знаю, как его развернуть на сервере. Он имеет один компонент bean, интерфейс bean и один клиент сервлета. Я использовал eclipse для разработки этого проекта.
Ни одна из прочитанных книг не дает пошаговую информацию о том, как поставить EJB на сервер и как получить доступ к этим компонентам.

У меня есть сервер JBoss 6, и у меня также есть Java EE budle, загруженный с веб-сайта sun. Этот пакет Java EE содержит сервер Glassfish? или мне нужно загрузить его отдельно?
Может ли кто-нибудь, пожалуйста, дать мне пошаговую информацию о том, как поместить мой компонент и его клиент на сервер (JBoss или Java EE)?

И зачем нам включать класс интерфейса bean в код клиента EJB? Я имею в виду, что нам нужно поддерживать клиент и компонент в одном пакете, или если мы храним их в отдельных пакетах, нам нужно импортировать интерфейсы bean в код клиента. Я прав?

+0

Спасибо за помощь! – Shekhar

ответ

8

С Java EE 6, вы можете упаковать ваш сервлет и ваш EJB в WAR (или упаковать EJB в JAR и положите его в WEB-INF/lib или просто введите все классы в WEB-INF/classes). И развернуть эту WAR, скопировать его:

  • $GLASSFISH_HOME/domains/<domain1>/autodeploy для GlassFish v3 *
  • $JBOSS_HOME/server/default/deploy для JBoss 6

С Java EE 5, вы должны упаковать ваши код в EAR.

И если вы хотите развернуть приложение из Eclipse (используя Eclipse WTP), вам нужно будет установить соответствующий серверный адаптер. Для Eclipse, Galileo и GlassFish (там в настоящее время нет переходника для JBoss 6 AFAIK) правой кнопкой мыши мнение, сервер, выберите Создать> Сервер, нажмите на Скачать дополнительные серверные адаптеры и выберите GlassFish адаптер. Завершите, чтобы определить новый сервер GlassFish v3 Java EE 6 и развернуть приложение на нем (щелкните правой кнопкой мыши на вашем приложении, затем Запустите как> Запустить на сервере). Для Eclipse Helios и GlassFish вы можете перейти по ссылке @VonC (ручная установка) или проверить this answer (установить через сайт обновления).

+0

В то время я не видел вашего (более полного) ответа. +1 – VonC

+0

Java EE 6 не позволяет размещать ведомые сообщения во время войны. –

1

Вы должны экспортировать как EJB в свою папку jboss<version>\server/default/deploy, а затем добавить путь сборки для нее в веб-проекте сервлета.Вы можете «Запустить на сервере» и выбрать сервер приложений так же, как и в любом проекте, не нужно экспортировать WAR, хотя, если вы это сделаете, вам придется реэкспортировать свою WAR каждый раз, когда вы изменяете свой код.
AFAIK нет плагина Eclipse для JBoss 6, но Eclipse предоставляет один для 5.1

Смежные вопросы