Установка JBOSS

Начинал я когда-то изучать java, хороших и свежих статей на русском про установку
 JDK + Jboss + Mysql  не было пришлось учить английский :)  счас есть но в них тупо говорится
 как поставить но не говориться зачем мы так делаем, в этой статье я хочу дать основы и понятия
 установки связки JDK + Jboss + Mysql. И так приступим. Для начала надо сказать что Jboss
 - это Application server написанный на java по этому нам понадобиться:
 1 jdk 1.6 - качаем с  http://java.sun.com зачем нужно: запустить Jboss и "компилить" web приложения.
 2 собственно Jboss  - качаем с http://www.jboss.org/jbossas/downloads/  - зачем нужно: запускать "откомпилиные" web приложения и не только web приложения :)
 3 Mysql  - База Данных  качаем с http://www.mysql.com - зачем нужно: для хранения постоянных данных.
 4 Connector/J - jdbc драйвер mysql качаем с http://dev.mysql.com/downloads/connector/j/5.1.html - зачем нужно: для доступа из java-приложений к БД mysql.
 5 Ant - сборщик в Java проектах качаем с http://ant.apache.org/ - зачем нужно: для быстрого развертывания и "компиляции" web приложения

Установка :
Если у вас правильно установлена  java  или ant пропускаем соответсвующие пункты описывать как
устанавливать БД  mysql я думаю не надо в инете и у нас на сайте достаточно об этом писали
 
Устанавливаем Jboss
Распаковываем  архив jboss-4.2.0.GA.zip и перенесем в /usr/local/:
#mv jboss-4.2.0.GA /usr/local/

Даем доступ на выполнение скриптов запуска jboss-4.2.0.GA:
#chmod 777 jboss-4.2.0.GA

Устанавливаем java
Даем доступ на выполнение
# chmod 777 *.bin
Запускаем установку и соглашаемся на все :)
# ./jdk*.bin

перенесем в /usr/local/jdk-1.6.02 и даем доступ на выполнение:
# chmod 777 jdk-1.6.02

Устанавливаем Ant
Распаковываем  архив
#tar -xjvf apache-ant-1.7.1-bin.tar.gz

перенесем в /usr/local/ant-1.7.1 и даем доступ на выполнение:
# chmod 777 ant-1.7.1

Правильно выставляем переменные окружения (я их обычно вписываю в файл ~/.bashrc):
export JAVA_HOME=/usr/local/jdk-1.6.02
export ANT_HOME=/usr/local/ant-1.7.1
export JBOSS_HOME=/usr/local/jboss-4.2.0.GA
export PATH=$PATH:$JAVA_HOME/bin:$ANT_HOME/bin:$JBOSS_HOME/bin

Проверяем работаспособность всего установленого
# java -version
....
# ant - version
...
если все правильно сделали то версии програм должны совпадать с релизами архивов :)
запускаем jboss:
# ./$JBOSS_HOME/bin/run.sh
.... Started in 1m:19s:661ms (загрузка заканчивается всего лишь за 1m:19s:661ms)
и если сделали все правильно то набрав http://127.0.0.1:8080 увидете стартовую страничку jboss :)
останавливаем jboss:
# ./$JBOSS_HOME/bin/shutdown.sh -S

Немножко о структуре каталогов jboss:
bin - содержит startup, shutdown и другие важные скрипты
client - конфигурационные файлы и jar-ы которые должны  использоваться внешними клиенскими
программами (подразумеваеться что java-программа имеет другой экземпляр виртуальной java-машины) 
docs - содержит примеры и описания настроечных XML - файлов jboss
lib - содержат  jar-ы которые используются при работе самого Application server'a
server -  котел где варятся все приложения :)  о нем поговорим чуть подробнее
server  имеет обычно 3 поддериктории ( точнее сказать 3 конфигурации) minimal,default и all грубо можно сказать что minimal - минимальная конфигурация сервера, default - стандартная, достаточная для отладки и запуска программ, all - стандартная, достаточная для отладки и запуска программ (то же самое что и default)+ дополнительные приблуды вроде Кластеризации и RMI/IIOP & etc...
когда запускаем jboss по умолчанию считается что мы работаем с default конфирурацией
выбор конфигурации происходит при запуске сервера, параметр -c имя_конфигурации :
# ./$JBOSS_HOME/bin/run.sh  -c all
....
Перейдем в директорию server/default:
conf - одна из директорий настройки  для default
data - директория где хранятся постоянные данные т.е. данные которые будут доступны даже после перезагрузки сервера
deploy - директория куда мы должны размещать свои проекты
lib - директория где хранятся наши jar-ы которые после загрузки сервера будут нам доступны(загружены) в classpath
log - каталог где будут храниться логи сервера по умолчанию
tmp - каталог используется при работе сервера содержит  данные которые будут доступны до перезагрузки сервера
work  - используется Tomcat'om  при компиляции JSPs

Переносим JDBC драйвер в $JBOSS_HOME/server/default/lib:
#mv mysql-connector-java-5.0.0-beta-bin.jar $JBOSS_HOME/server/default/lib

настраиваем datasource для mysql копирум mysql-ds.xml  в  deploy  в нем прописываем БД у меня - test (jdbc:mysql://localhost/test), пользователь - root, пароль -  (пусто)

<?xml version="1.0" encoding="UTF-8"?>
<datasources>
  <local-tx-datasource>
    <jndi-name>MySqlDS</jndi-name>
    <connection-url>jdbc:mysql://localhost/test</connection-url>
    <driver-class>com.mysql.jdbc.Driver</driver-class>
    <user-name>root</user-name>
    <password></password>
    <metadata>
         <type-mapping>mySQL</type-mapping>
    </metadata>
  </local-tx-datasource>
</datasources>
 

открываем файл build.properties  в нем прописываем переменные для ant

name=jbossweb
webinf.dir=WEB-INF
resources.dir=resources
server.name=localhost
server.port=8080
server.scheme=http
mysql.jdbc.Driver=com.mysql.jdbc.Driver
mysql.db=test - ваша БД mysql
mysql.user=root - ваш пользователь
mysql.password= - ваш пароль
path.jar=${env.JBOSS_HOME}/server/default/lib
path.deploy=${env.JBOSS_HOME}/server/default/deploy
j2ee.jar=${path.jar}/j2ee.jar
jsp.jar=${path.jar}/jsp-api.jar
servlet.jar=${path.jar}/servlet-api.jar
mysql.jar=${path.jar}/mysql-connector-java-5.0.0-beta-bin.jar  - ваш драйвер
build.classpath=${mysql.jar};${j2ee.jar};${jsp.jar};${servlet.jar}

запускаем ant и если вы все правильно настоили(переменные окружения и прочее) то у вас создастся таблица Hello_world - создастся war-архив (web application)  и сразу же deploy-итя(копируется в JBOSS_HOME/server/default/deploy):

# ./ant

запускаете ваш любимый браузер - вводим http://localhost:8080/jbossweb и видим заветную фразу Hello World :) :) :)

 

PS sourse code : http://linux16.net/upload/jbossweb_0.zip

кто дружит с английским

кто дружит с английским советую заглянуть сюда здесь боллее подробнее описана установка JBOSS

http://www.jboss.org/file-access/default/members/jbossas/freezone/docs/Installation_Guide/beta500/html-single/index.html

Так вот ты какой, северный

Так вот ты какой, северный олень!

Спасибо, vit. Очень толковое введение в JBoss. Только вот не совсем ясно, он свободный или платить за него нужно?

Постараюсь в ближайшие дни про Tomcat написать.

The JBoss(R)* app server is

The JBoss(R)* app server is Copyright 2000-2007, Red Hat Middleware LLC
and individual contributors, and is licensed under the GNU LGPL. - как только я вижу GNU - лицензию  я все продукты начинаю считать  бесплатными :) :) :) :) 

Логично :). Тут на одном

Логично :). Тут на одном форуме прочитал:

"Джава сильна в EE но не в SE (для этих нужд .NET более предпочтительнее — мое мнение). "

Что-то мне подсказывает, что с SE пора соскакивать... Если честно, сдерживающим фактором была именно уверенность в том, что EE и всё связанное с ним не бесплатно. Интересно, а зачем тогда вообще появились такие вещи, как OpenJDK?

чтоб прогеры могли залесть во

чтоб прогеры могли залесть во внутренности jav'ы и поиграть с настройками :) :) :) :)   вообще-то есть еще apache Geronimo, Glassfish - open source  проекты то же доволно интересные JEE Apllication servera :) :) :)

Рекламу Glassfish видишь

Рекламу Glassfish видишь сразу, когда лезешь качать JDK... А чем они отличаются в двух словах?

Glassfish если честно я не

Glassfish если честно я не пробовал работать с ним (настраивать jndi, datasource ...)   он относительно молодой jee server  и по моему мнению у него мало дополнительных сервисов которые можно поковырять :) :) :)   или поставить отдельно :) :) :)  в отличии от jboss

Прям энциклопиедия получилась

Прям энциклопиедия получилась :). Спасибо, vit!

jboss

А у меня не заработало. После долгих соображений оказалось необходимо было ещё и файл конфигурации подправить, чтобы сервак jboss работал не с локальной своей базой Hypersonic SQL, а с Mysql. Вот файл -\jboss\server\default\conf\standardjbosscmp-jdbc.xml с DefaultDS на MySqlDS. У меня версия jboss 5.1, может кому и пригодится эта инфа. А так материал хороший. Удачи всем.

Помогите!

Вопрос помогите!Все настроил установил, запустил Jboss, при обращении на http://localhost:8080/
в консоли такая штука вылетает
Debugger failed to attach: handshake failed - received >GET / HTTP/1.1< - expected >JDWP-Handshake<
кто подскажет, буду благодарен!

Отправить комментарий

КАПЧА
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
CAPTCHA на основе изображений
Enter the characters shown in the image.