Instalação do JBoss Application Server (JBoss AS) no Windows

O JBoss Application Server (ou, abreviadamente, JBoss AS) é um servidor de aplicação de código aberto desenvolvido pela JBoss (atualmente, uma divisão da Red Hat) para a plataforma Java EE. Ele é completamente compatível com a especificação Java EE 6 e oferece toda a infraestrutura necessária para executar aplicações Web desenvolvidas sobre essa plataforma. Ele é necessário para executar o PETIC Wizard.

A seguir, são fornecidas instruções para instalar, configurar e executar a versão mais recente do JBoss AS (atualmente, a 7.1.1) no sistema operacional Microsoft Windows. Se procura instruções para o sistema operacional Linux, clique aqui.

Antes de prosseguir, é necessário que o Java Development Kit (JDK) esteja instalado no computador. Também é importante que a variável de ambiente JAVA_HOME esteja configurada, pois o JBoss AS consulta o valor dessa variável para saber a localização do JDK no sistema. Se precisar de ajuda com relação a isso, consulte a página Instalação do Java Development Kit (JDK) no Windows.

Download

Acesse a página de downloads do JBoss AS 7 e baixe o arquivo .zip referente à versão mais atual do servidor de aplicação. No momento da escrita desta página, o link para download direto desse arquivo é esse.

Extração

No Windows, o processo de instalação do JBoss AS se resume a extrair o conteúdo do arquivo baixado em uma pasta acessível a todos os usuários do sistema (como “C:\”, por exemplo). O arquivo descompactado gera uma pasta com o mesmo nome (“jboss-as-7.1.1.Final”, por exemplo) e pode ser excluído após a extração.

Inicialização do servidor

De acordo com a documentação oficial do JBoss AS, há duas maneiras de iniciar o servidor de aplicação: em modo “standalone”, onde cada instância do servidor é um processo que atua de maneira independente; ou em modo de domínio (“domain”), onde várias máquinas (físicas ou virtuais) executando o servidor de aplicação compõem um domínio, no qual há uma máquina central responsável por gerenciar as demais.

Para fins de simplificação, nessa página você será instruído a iniciar o servidor em modo “standalone”. Se quiser obter mais informações sobre como iniciar o servidor em modo de domínio, consulte a documentação oficial do JBoss AS.

Para iniciar o servidor dessa maneira, usando o Windows Explorer, acesse a pasta na qual o JBoss AS está instalado (no exemplo, “C:\jboss-as-7.1.1.Final”), abra a pasta “bin” e dê um duplo-clique no script “standalone.bat”. O servidor é iniciado e uma nova janela de terminal é aberta exibindo suas mensagens.

Recomenda-se criar um atalho para o script ”standalone.bat” em algum local de fácil acesso, para facilitar a inicialização do servidor.

Também é possível iniciar o JBoss AS pelo Prompt de Comando, invocando esse mesmo script:

> C:\jboss-as-7.1.1.Final\bin\standalone.bat

Nesse caso, a própria janela na qual o comando é invocado passa a exibir a saída do servidor (é importante observar que não é possível executar nenhum outro comando nessa mesma janela enquanto o servidor estiver em execução).

O terminal deve exibir uma saída parecida com essa, resultado da inicialização do servidor:

=========================================================================

JBoss Bootstrap Environment

JBOSS_HOME: /home/vinicius/jboss-as

JAVA: /opt/jdk1.7.0/bin/java

JAVA_OPTS: -server -XX:+TieredCompilation -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djboss.server.default.config=standalone.xml

=========================================================================

04:35:28,890 INFO [org.jboss.modules] JBoss Modules version 1.1.1.GA
04:35:29,488 INFO [org.jboss.msc] JBoss MSC version 1.0.2.GA
04:35:29,647 INFO [org.jboss.as] JBAS015899: JBoss AS 7.1.1.Final "Brontes" starting
04:35:32,341 INFO [org.xnio] XNIO Version 3.0.3.GA
04:35:32,366 INFO [org.xnio.nio] XNIO NIO Implementation Version 3.0.3.GA
04:35:32,457 INFO [org.jboss.as.server] JBAS015888: Creating http management service using socket-binding (management-http)
04:35:32,468 INFO [org.jboss.remoting] JBoss Remoting version 3.2.3.GA
04:35:32,623 INFO [org.jboss.as.logging] JBAS011502: Removing bootstrap log handlers
04:35:32,662 INFO [org.jboss.as.configadmin] (ServerService Thread Pool -- 26) JBAS016200: Activating ConfigAdmin Subsystem
04:35:32,831 INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 31) JBAS010280: Activating Infinispan subsystem.
04:35:33,167 INFO [org.jboss.as.naming] (ServerService Thread Pool -- 38) JBAS011800: Activating Naming Subsystem
04:35:33,193 INFO [org.jboss.as.osgi] (ServerService Thread Pool -- 39) JBAS011940: Activating OSGi Subsystem
04:35:33,269 INFO [org.jboss.as.connector] (MSC service thread 1-2) JBAS010408: Starting JCA Subsystem (JBoss IronJacamar 1.0.9.Final)
04:35:33,393 INFO [org.jboss.as.security] (ServerService Thread Pool -- 44) JBAS013101: Activating Security Subsystem
04:35:33,514 INFO [org.jboss.as.webservices] (ServerService Thread Pool -- 48) JBAS015537: Activating WebServices Extension
04:35:33,515 INFO [org.jboss.as.security] (MSC service thread 1-1) JBAS013100: Current PicketBox version=4.0.7.Final
04:35:33,588 INFO [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 27) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)
04:35:33,549 INFO [org.jboss.as.naming] (MSC service thread 1-2) JBAS011802: Starting Naming Service
04:35:34,470 INFO [org.jboss.as.mail.extension] (MSC service thread 1-1) JBAS015400: Bound mail session [java:jboss/mail/Default]
04:35:34,530 INFO [org.jboss.ws.common.management.AbstractServerConfig] (MSC service thread 1-2) JBoss Web Services - Stack CXF Server 4.0.2.GA
04:35:35,289 INFO [org.apache.coyote.http11.Http11Protocol] (MSC service thread 1-2) Starting Coyote HTTP/1.1 on http--127.0.0.1-8080
04:35:35,866 INFO [org.jboss.as.remoting] (MSC service thread 1-2) JBAS017100: Listening on /127.0.0.1:9999
04:35:36,060 INFO [org.jboss.as.server.deployment.scanner] (MSC service thread 1-2) JBAS015012: Started FileSystemDeploymentService for directory /home/vinicius/jboss-as/standalone/deployments
04:35:36,119 INFO [org.jboss.as.remoting] (MSC service thread 1-2) JBAS017100: Listening on /127.0.0.1:4447
04:35:36,270 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-2) JBAS010400: Bound data source [java:jboss/datasources/ExampleDS]
04:35:36,294 INFO [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
04:35:36,295 INFO [org.jboss.as] (Controller Boot Thread) JBAS015874: JBoss AS 7.1.1.Final "Brontes" started in 8025ms - Started 133 of 208 services (74 services are passive or on-demand)

Uma vez iniciado o servidor, abra seu navegador de preferência e acesse o endereço “http://localhost:8080” (a porta 8080 é a utilizada pelo JBoss AS por padrão, mas essa porta pode ser alterada na configuração do servidor). Você deve ver a tela de boas vindas do JBoss AS:

Criação de um usuário para administrar o servidor

O servidor de aplicação JBoss AS pode ser gerenciado através de um console Web, que permite realizar, entre outras configurações, implantar ou remover aplicações, iniciar ou interromper a execução de aplicações, verificar o consumo de memória do servidor, configurar datasources, etc. Esse console, por padrão (se as configurações de portas não forem alteradas) pode ser acessado através do endereço “http://localhost:9990/“.

Na primeira vez em que você tentar acessar esse endereço, no entanto, ele emitirá um aviso:

Esse aviso informa que é necessário definir um usuário e uma senha para acessar o console de administração Web.

Para isso, execute o script “add-user.bat” dentro da pasta “bin” onde o servidor está instalado:

> C:\jboss-as-7.1.1.Final\bin\add-user.bat

Após iniciar o script, você será guiado no processo de adicionar um novo usuário:

What type of user do you wish to add?
a) Management User (mgmt-users.properties)
b) Application User (application-users.properties)
(a):

Nesse caso, como estamos criando um usuário com a finalidade de administrar o servidor, escolhemos a opção “a”. Ela já é a opção padrão, apenas tecle Enter.

Você será solicitado a fornecer informações sobre o novo usuário. Quando questionado sobre o domínio do usuário (Realm), aceite a opção padrão (ManagementRealm), para isso basta teclar Enter quando chegar nesse campo. No mais, digite nome de usuário, senha e confirme a senha.

Enter the details of the new user to add.
Realm (ManagementRealm) :
Username :
Password :
Re-enter Password :

Se não houver nada errado, uma mensagem de confirmação será exibida na tela.

Feito isso, você já pode acessar o console de administração Web, informando o usuário e senha criados quando solicitados:

Mais informações sobre como administrar o servidor são fornecidas na página JBoss AS.

Finalização do servidor

Para encerrar o servidor JBoss AS, basta abortar a execução do comando na janela de terminal onde o servidor está sendo executado. Para isso, basta abrir a janela onde as mensagens do servidor estão sendo exibidas e apertar Ctrl + C.

Antes de ser fechada, a janela deve exibir uma saída parecida com essa, resultado da finalização do servidor:

15:09:21,996 INFO [org.jboss.as.osgi] (MSC service thread 1-1) JBAS011942: Stopping OSGi Framework
15:09:22,034 INFO [org.jboss.as.logging] JBAS011503: Restored bootstrap log handlers
15:09:22,044 INFO [org.jboss.weld.deployer] JBAS016009: Stopping weld service for deployment jboss-as-helloworld-jsf.war
15:09:22,053 INFO [org.apache.coyote.http11.Http11Protocol] Pausing Coyote HTTP/1.1 on http--127.0.0.1-8080
15:09:22,058 INFO [org.apache.coyote.http11.Http11Protocol] Stopping Coyote HTTP/1.1 on http--127.0.0.1-8080
15:09:22,083 INFO [com.arjuna.ats.jbossatx] ARJUNA032018: Destroying TransactionManagerService
15:09:22,111 INFO [com.arjuna.ats.jbossatx] ARJUNA032014: Stopping transaction recovery manager
15:09:22,111 INFO [org.jboss.as.server.deployment] JBAS015877: Stopped deployment jboss-as-helloworld-jsf.war in 132ms
15:09:22,114 INFO [org.jboss.as.controller] JBAS014774: Service status report
JBAS014776: Newly corrected services:
service jboss.server.controller.management.security_realm.ApplicationRealm.properties_authentication (new available)

15:09:22,121 INFO [org.jboss.as] JBAS015950: JBoss AS 7.1.1.Final "Brontes" stopped in 143ms