JBOSS

Conceito

O JBOSS é um servidor contentor de aplicações Web em Java.
Permite que, tal como em SUN RPC, o programador possa implementar um conjunto de serviços que são oferecidos a clientes remotos. No caso de aplicações Web, a interacção entre clientes e servidores é feita pelo protocolo HTTP (ou pela variante segura, HTTPS).
Como contentor, o JBoss simplifica o código das aplicações, fazendo a gestão de: comunicação, contextos e tarefas. Além disso tem também ferramentas de gestão e apoio ao desenvolvimento.

Contentor

As aplicações Web não precisam de implementar os protocolos de comunicação, nomeadamente o HTTP e o HTTPS.
Os pedidos e respostas HTTP são convertidos para objectos Java já validados e muito mais simples de utilizar.

Para guardar estado, o JBoss providencia às aplicações os respectivos contextos.
Existem contextos para guardar variáveis da aplicação e das sessões dos utilizadores.

Contentor de aplicações Web

As aplicações Web não precisam de criar tarefas (threads) para poder atender múltiplos pedidos em simultâneo.
As tarefas são geridas em conjunto (pool) pelo contentor, sendo atribuídas ao processamento dos pedidos, à medida das necessidades.
As aplicações continuam a ser responsáveis pela sincronização do acesso às variáveis partilhadas, para garantir o acesso em exclusão mútua.

Múltiplas tarefas no contentor de aplicações Web

Instalação

Para a disciplina de sistemas distribuídos será necessário instalar o servidor aplicacional JBOSS. Para tal siga os seguintes passos:
  1. Descarregue o JBoss seguindo este link.
  2. Descompacte o ficheiro para uma nova directoria na sua máquina: Por exemplo, para uma directoria de c:\temp.
  3. Defina a variável de ambiente JBOSS_HOME com o nome da directoria para onde descomprimiu o JBoss.
Nota: no campus do Taguspark pode correr o icone do desktop: Setup_JBoss.bat para instalar imediatamente o JBOSS na c:\temp (evitando os passos acima).

Execução

Corra o ficheiro bat: c:\temp\jboss-6.0.0.Final\bin\run.bat
Para se certificar que o jboss esta a correr correctamente abra um browser em: http://localhost:8080