Eclipse и Jboss
Установка
Оная, на примере ArchLinux.
Из репозиториев: pacman -S eclipse-gef eclipse-emf
Из AUR:
- eclipse-wtp
- eclipse-dtp
- eclipse-rse
- jboss
Собирать и ставить эти пакеты можете любым удобным/привычным способом.
Из сторонних источников, и, по сути, основное:
- JBoss Tools 3.2, устанавливать через Eclipse -> Help -> Install new software… Добавить там сайт: http://download.jboss.org/jbosstools/updates/development. Пакет должен быть поставлен после eclipse-wtp, eclipse-dtp, eclipse-rse. Дополнительная информация: http://www.jboss.org/tools/download/installation/update_3_2.html
У Jboss после установки малость подправить права: chown -R root:GROUP /opt/jboss/server/* chmod -R g+w /opt/jboss/server/*
GROUP - группа на ваше усмотрение, главное что бы пользователь, от которого будете работать был в этой группе.
Ещё хорошо бы было поставить GUID бит на все директории в /opt/jboss/server: find /opt/jboss/server -type ’d’ -print | xargs chmod g+s
Тогда все созданные там файлы и директории будут автоматом наследовать права и владельца группы от родительской директории.
На это установка и первоначальная настройка завершена. Можно запускать Eclipse и создавать первый проект.
Первый проект
Эдакий “Hello, World”.
Создаём проект
- File -> New… -> Web -> Dynamic Web Project
- Вводим название, типа web-test-00
- Указываем Target Runtime, на первый запуск оно пустое, поэтому:
- New Runtime -> Jboss Community -> Jboss 5.1 Runtime (или какой у вас), жмём Next
- Указываем HOME jboss, в ArchLinux, при установке Jboss из AUR это /opt/jboss, выбираем конфигурацию, для начала предлагаю default, жмём Finish
- Жмём Next, Next, Finish
Добавляем сервер
Если не создали при старте, или как я что-то пропустил. Внизу смотрим вкладки, видим там Servers, вызываем контексное меню, там выбираем New -> Server, далее:
- Выбираем тип сервера
- Выбираем hostname
- Выбираем имя
- Выбираем Server Runtime (ранее уже создали)
- Жмем Next, Next, добавляем нужные проекты (что будут деплоиться), Finish
По сути всё, за одним нюансом, если как мне, пришлось менять порты для веб-сервиса в самом jboss (правим файл JBOSS_HOME/server/default/deploy/jbossweb.sar/server.xml): для HTTP я сменил порт с 8080 на 8081 и AJP (TODO) с 8009 на 8011 (8010 каким-то образом начинает использоваться автоматом, так что не канает), в этом случае, раскрываем список у нужного сервера, видим там XML Configuration в ней видим Ports, раскрываем его, смотрим JBoss WEB, открываем редактировать, переключаемся в XML вид, и меняем 8080 на 8081 везде где можно. Сохраняемся. Впринципе, хоть и отображается пока старое значение (8080, сменится после перезапуска Eclipse), можно уже работать.
Первый сервлет
В дереве проекта находим “Java Resources: src”, контекстное меню -> New… -> Servlet, вбиваем Java packages, имя сервлета HelloWorld, после чего Next. На следующей странице мастера можно откорректировать URL мапинги, но пока оставляем как есть - всегда можно откорректировать в web.xml. Опять Next, тут уже смотрим какие методы нужно автосгенерировать, оставляет на данный момент всё бай-дефолт. Финиш.
В нутрях метода doGet()
вписываем:
PrintWriter out = response.getWriter();
out.println("<b>Hello, World!</b>");
Всё, сохраняемся, делаем Run As -> Run on Server, видим брутальную 404 Page Not Found, добиваем в строку ввода (используется по дефолту встроенный браузер) /HelloWorld, и видим приветствие.