JBoss环境搭建及部署Web项目

http://blog.csdn.net/pop303/article/details/7210290
赶在年前学习了一下JBOSS,之前觉得JBOSS相关资料会有很多,不过现在发现很少,在亚马逊出也是很少,只有一个“JBoss实战:服务器配置指南 ”,不过我找到了英文版,有要的可以邮件给大家。我想从不会JBOSS开始进行,到我打包部署到JBOSS后能看到我的HELLO!网页结束的过程。

首先要进行的工作是下JBOSS、JBOSS插件、开发以eclipse为平台,都需要JEE方式。

JBOSS,在http://www.jboss.org/projects网页下有很多项目,后来了解了一下,在redhat收了之后JBOSS有很多扩展主题,但最主要大家都在用的还是servers下的Application Server,到我下载时已经是AS7了,我下了之后发现AS7和以前版脚本差异太大,对于我初学的相关文档都是7以下的,我在后来又重新下的AS6版本。

JBOSS Tool是对于eclipse为平台的插件是一定要的。不过我是在eclipse上直接选择源下载安装的。源:http://download.jboss.org/jbosstools/updates/stable/helios/。插件安装在eclipse下的help->insall new software ->Avaliable Software。(这个就不上图了)

eclipse为平台我选择的是Eclipse Java EE IDE for Web Developers.

 

JEE环境我选择的是java_ee_sdk-6u3-jdk7-windows-ml

配置环境:

JBOSS_HOME=D:\jboss\jboss-6.0.0.Final

JAVA_HOME=C:\glassfish3\jdk7

CLASSPATH=.;%JAVA_HOME%/lib/dt.jar;:%JAVA_HOME%/lib/tools.jar

PATH=%JAVA_HOME%\bin;:%JAVA_HOME%\jre\bin;:D:\oracle...略

 

JBOSS要关注的两个目录:

bin目录,操作脚本目录;server\default\deploy,完成的WAR包的部署目录

 

JBOSS安装与启停:

对于JBOSS解了包那就算完成安装了,只要配置好JEE环境和最好加上JBOSS_HOME环境变量。并且安装包linux和windows是一个包,启动脚本分为bat和sh两种来对应两种系统

启动:   ./run.sh               //linux

           run.bat                //windows

       启动时还可以加参数,如   run.bat -c all

      

usage: run.sh [options] 

options: 
    -h, –help                    Show this help message 
    -V, –version                 Show version information 
    –                            Stop processing options 
    -D<name>[=<value>]            Set a system property 
    -d, –bootdir=<dir>           Set the boot patch directory; Must be absolute or url 
    -p, –patchdir=<dir>          Set the patch directory; Must be absolute or url 
    -n, –netboot=<url>           Boot from net with the given url as base 
    -c, –configuration=<name>    Set the server configuration name 
    -B, –bootlib=<filename>      Add an extra library to the front bootclasspath 
    -L, –library=<filename>      Add an extra library to the loaders classpath 
    -C, –classpath=<url>         Add an extra url to the loaders classpath 
    -P, –properties=<url>        Load system properties from the given url 
    -b, –host=<host or ip>       Bind address for all JBoss services 
    -g, –partition=<name>        HA Partition name (default=DefaultDomain) 
    -u, –udp=<ip>                UDP multicast address 
    -l, –log=<log4j|jdk>         Specify the logger plugin type 

其中有几个常用的参数 

-c 服务配置名,指定JBoss启动哪个服务配置,默认是default,常用有 -c all 

-b 绑定JBoss服务的IP,特别在部署EJB服务,只能通过绑定的IP查找EJB,在Linux下,不绑定IP将找不到EJB服务.对于单纯的Web应用,不绑定IP可以实现全地址绑定,对双网卡或者多个IP的环境都能通过不同IP访问. 

-g 绑定HA分区名,用于EJB集群分组. 

-u UDP多播地址,用于集群JBoss环境,默认为230.0.0.4,如果在局域网在有多个启动all配置(有集群配置)的JBoss服务,那在 JBoss日志中能看到不时的有组播信息出现,可以设置为不同的组播地址,避免这些干扰.合法值是IP协议中说到的广播段.

 

启动后可以看到网页:http://127.0.0.1:8080

 

停止服务:

            ./shutdown.sh -s //linux

            shutdown.bat -s //windows

(停止方式我没有试成功过,未解中,都是CTRL+C shutdown的)。

 

在下来就是关于部署了,这个工作我是在eclipe平台完成的。上面已经说过要使用jee的eclipse和jboss的插件还要有jee的环境。

在JBOSS Tool安装后,对应在new中会多出三个目录,对于j2ee来说有可选的jboss6.0运行时环境。

选择可以使用很多种,我选择的是先创建一个Dynamic Web project(也可选用Enterprise application project)工程,生成的包就是war或ear 。在工程创建后,在以这个工程的src创建包com.clo.tAction,创建Hello.java:

 

package com.clo.tAction;


import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class Hello
 */
@WebServlet("/Hello")
public class Hello extends HttpServlet {
 private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Hello() {
        super();
        // TODO Auto-generated constructor stub
    }
    public void service(HttpServletRequest request,HttpServletResponse response) throws ServletException ,IOException{
     java.io.PrintWriter out = response.getWriter();
     out.println("<html><boby>Hello too!</boby></html>");
     out.close();
    }
 

}

 

之后就可以进行web.xml的配置了

 
web.xml内容:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <servlet>
   <servlet-name>Hello</servlet-name>
   <servlet-class>
   com.clo.tAction.Hello
   </servlet-class>
  </servlet>
  <servlet-mapping>
   <servlet-name>Hello</servlet-name>
  <url-pattern>/sayhello</url-pattern>
  </servlet-mapping>
  </web-app>

注:是将之前web.xml内容从<servlet>标签之下开始修改的。头标签要保留。

之后就可以生成war了。

在此工作运行使用右键选择export ->war file

生成的war文件即可放到jboss的server\default\deploy,部署目录。此时如已经启动,也会得到加载成功。会生成日志:

此时浏览器网页上对应目录会有显示:

注:目录OK为我之前创建的工程,在此工程下做的网页。
 
其实还可以进行其他的方式,但我没成功,有空在说了!
 
 
 
其他文章参考:

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。