9.3. 在JBoss上部署与运行

9.3.1. 环境准备

9.3.1.1. Java环境

本机需要安装1.5或以上的版本的JDK。如果没有,请先去 Java官方网站 下载并进行安装。

9.3.1.2. 所有需要用到的资源

1. JBoss4.2.0

下载地址: http://www.jboss.org/jbossas/downloads/ ,点击下载4.2.0.GA即可。

2. OperaMasks v3.2

下载地址: http://www.operamasks.org/downloads/index.faces ,下载OperaMasks v3.2的Binary包(Source包内为OperaMasks v3.2的源代码,OperaMasks是开源的)。

3. bpdemos.war

解压缩下载的安装包。bpdemos-aom应用属于OperaMasks自带示例之一,需要在本地使用ant来build产生,由于JBoss中没有内置了Ant,所以首先需要确保本机上安装有Ant。 进入%AOM_HOME%/samples目录执行:

ant -f build.xml bpdemos-aom

产生的bpdemos-aom.war位于%AOM_HOME%/samples/dist目录下。其中 %AOM_HOME%表示OperaMasks安装包解压缩的根目录;以及下文中的%JBOSS_HOME%表示JBoss安装包解压缩的根目录。

bpdemos-aom.war中WEB-INF/lib目录下有运行OperaMasks应用所需要的jar包,如图所示:

9.3.2. 部署示例bpdemos-aom

9.3.2.1. 修改JBoss的JSF运行环境

由于JBoss中内置了Sun Microsystems JavaServer FacesImplementation实现,为了避免冲突需要修改JBoss的JSF运行环境。

1. 删除JBoss_HOME%\server\default\deploy\jboss-web.deployer\jsf-libs\目录下的三个jar包,如图所示:

2. 修改%JBoss_HOME%\server\default\deploy\jboss-web.deployer\conf\web.xml内容,删除或注释掉JSF相关的内容,注释的内容如下所示:

<!--
<context-param>
  <param-name>com.sun.faces.injectionProvider</param-name>
  <param-value>org.jboss.web.jsf.integration.injection.JBossInjectionProvider</param-value>
</context-param>
-->
......
<!--
<listener>
  <listener-class>org.jboss.web.jsf.integration.config.JBossJSFConfigureListener</listener-class>
</listener>
-->
......
<!--
<listener>
  <listener-class>com.sun.faces.application.WebappLifecycleListener</listener-class>
</listener>
-->
......
<!--
<init-param>
  <description>JSF standard tlds</description>
  <param-name>tagLibJar0</param-name>
  <param-value>jsf-libs/jsf-impl.jar</param-value>
</init-param>
-->

9.3.2.2. 启动JBoss服务器

打开command窗口,执行:

%JBOSS_HOME%\bin\run.cmd

9.3.2.3. 部署示例

将bpdemos-aom.war拷贝到%JBOSS_HOME%\server\default\deploy目录下

JBoss将进行热部署,自动将bpdemos-aom.war解压缩到%JBOSS_HOME%\server\default\work\jboss.web\localhost目录下。如图所示:

打开浏览器,输入 http://localhost:8080/bpdemos-aom/ ,出现如下页面说明部署成功。