JBoss技术支持文档
1、本节内容简介
本文主要介绍JBOSS(免费的EJB服务器),以及教会大家如何安装Jboss,建立你第一个EJB和客户端。关于什么是EJB,以及如何开发等。这些关于EJB方面有很多书籍进行描述,在此不再阐述。描述信息是运行在windows平台,当然你可以应用在其他支持的平台(如:Linux等)。
2、关于JBOSS
Jboss支持EJB 1.1和EJB 2.0的规范,它是一个为管理EJB的容器和服务器。类似于Sun’s J2SDK Enterprise Edition(J2EE),但是Jboss核心服务仅是提供EJB服务器。JBOSS不包括serverlers/JSP page 的WEB容器,当然可以和Tomcat或Jetty绑定使用。JBOSS需要比较小的内存和硬盘空间。可以在64M内存以及几兆空间上很好的运行。而Sun’s J2EE需要最少内存为128M,以及31M硬盘空间。JBOSS启动速度要比J2EE快10倍。而且它能内嵌SQL 数据库服务器进行持久性BEAN处理,当启动时会自动启动。(J2EE装载分离CloudScape SQL Server)。
其中一个非常好的特性JBOSS能够“热”部署,“热”部署的意思就是在部署BEAN只是简单拷贝BEAN的JAR文件到部署路径下,如果BEAN已经被LOAD,JBOSS卸载它,然后LOAD一个新版本BEAN。如果你需要更多的JBOSS特性,你可以查看关于JBOSS论坛的网站。如果需要支持,可以付费联系JBossGroup LLC。
本文一步一步帮助你开始用jboss进行分布式开发:如何建立一个简单的BEAN,以及如何在jboss服务器上部署和在测试。
3、必备条件
JBOSS是一个纯JAVA编写的,需要一个JAVA系统和JDK1.3兼容。为了能便宜和运行所有的例子,你需要有Ant 1.4或以上版本。在下节将会介绍如何获得和安装。当然你要有开发EJB基础。
4、安装ANT
我们在很多书上以及网页可能都看见过这个名字,到底它用来作什么的呢?Ant 是一个基于java的build工具。现在已经有了许多的build工具,例如make、gnumake、nmake、jam等,而且这些工具都非常优秀。Ant是一个跨平台的Build工具。之所以Ant能跨平台,是因为Ant不再需要你编写shell命令,Ant的配置文件是基于XML的任务树,能让你运行各种各样的任务,任务的运行是由实现了特定任务接口的对象来完成的。
有两个版本Binary和Source 可以下载最新版本1.5.2。
Binary版: http://ant.apache.org/old-releases/v1.5.2/binaries/
Source版:http://ant.apache.org/old-releases/v1.5.2/source/
关于这两个版本的不同之处可以参考http://ant.apache.org/ 。如果下载不了可以向我索取QQ:182244794, Email: amaryllis@163.net 。
在下载完Ant后,你解压文件,全部文件会放在一个apache-ant-1.5.2路径下。Ant文档会释放在docs/manual目录下,你可以打开网页docs/manual/index.html来浏览关于ant文档的内容。 我用Windows系统释放在c:/apache-ant-1.5.2路径下。
1) 设置ANT_HOME环境变量,指向你的ANT目录。
2) 需要设置JAVA_HOME环境变量,指向你的JDK目录。
3) 将%ANT_HOME%\bin加入到PATH环境变量中。
4) 当你不带任何参数运行ant时,Ant会在当前目录找一个名叫build.xml的文件。如果没找到,会有以下提示:
Buildfile : build.xml does not exist!Build failed
为了测试ANT安装是否成功,我建立了一个新的build.xml文件,放在当前的目录下%ANT_HOME%\samples。Build.xml内容如下:
<!-- Simple Ant build script to test an Ant installation --><br />
<project name="TestInstall" default="run" basedir="."><br />
<target name="init"> <br />
<available file="ASimpleHelloObject.java" property="ASimpleHelloObject"/> <br />
</target> <br />
<target name="ASimpleHelloObject" unless="ASimpleHelloObject" depends="init"> <br />
<echo file="ASimpleHelloObject.java"><br />
public class ASimpleHelloObject<br />
{<br />
public static void main(String[] args) { <br />
System.out.println("ASimpleHelloObject.main was called"); }<br />
}<br />
</echo> <br />
<echo message="Wrote ASimpleHelloObject.java" /> <br />
</target> <br />
<target name="compile" depends="ASimpleHelloObject"> <br />
<javac destdir="." srcdir="." debug="on" classpath="."> <br />
<include name="ASimpleHelloObject.java"/> <br />
</javac> <br />
</target> <br />
<target name="run" depends="compile"> <br />
<java classname="ASimpleHelloObject" classpath="." /> <br />
<echo message="Ant appears to be successfully installed" /> <br />
</target><br />
</project><br />
运行ant 显示结果如下:
c:\apache-ant-1.5.2\samples> antBuildfile: build.xml
Init :
AsimpleHelloObject:
[echo] Wrote AsimpleHelloObject.java
compile:
[javac] Compiling 1 source file to c:\apache-ant-1.5.2\samples
run :
[java] AsimpleHelloObject.main was called[echo] Ant appears to be successfully installed
BUILDE SUCCESSFUL
Total time :11 seconds.
到此你安装的ANT以及环境已经设置成功。如果有以下警告
Warning: JAVA_HOME environment variable is not set. If build fails because sun.* classes could not be found you will need to set the JAVA_HOME environment variable to the installation directory of java.
表示你需要设置JAVA_HOME环境,指定你安装的JDK 目录。如何运用Ant 中的各种命令,我会在以后编写《ANT文档》介绍。
5、安装JBOSS
1) 在安装和运行JBoss 之前,你必须检查是否安装了JDK,需要在PATH环境中,设置JDK的目录。
2)、 下载JBoss 服务器。JBoss 是一个压缩文件,你可以下载最新版本。为了能支持Web Server,我用的是Windows平台,所以下载了jboss3.0.6-tomcat4.1.18。你可以到http://prdownloads.sourceforge.net/jboss/ 中直接下载。如果你使用的是Unix/Lunix平台也可以从这个网址下载相应的JBoss 服务器。
3)、安装
(1) Lunix/Unix下安装
a、 你下载了对于Unix/Lunix版本的JBoss 服务器l 用JDK 的JAR工具来解压文件到一个临时目录。
b、 设置JBOSS_DIST指向JBoss 解压后最顶级目录。
c、 然后到此目录下
cd JBOSS_DIST/bin
sh run.shl
运行完后显示信息如下:
bash-2.04$ /bin/sh run.sh
JBOSS_CLASSPATH=:run.jar:../lib/crimson.jar
jboss.home = /tmp/JBoss-2.2.2
Using JAAS LoginConfig: file:/tmp/JBoss-2.2.2/conf/default/auth.conf
Using configuration "default"
[Info] Java version: 1.3.1,Sun Microsystems Inc.
[Info] Java VM: Java HotSpot(TM) Server VM 1.3.1-b24,Sun Microsystems Inc.
[Info] System: Linux 2.2.16-22,i386
[Shutdown] Shutdown hook added
[Service Control] Registered with server
[Service Control] Initializing 24 MBeans
...
[Service Control] Started 24 services
[Default] JBoss 2.2.2 Started in 0m:7s
(2) Windows下安装
a、 下载jboss3.0.6-tomcat4.1.18.zip, 然后用winzip解压到一个目录,我解压在c:\jboss3.0.6-tomcat4.1.18目录
b、 解压后基本上不需要配置,运用bin目录下的run.bat命令。
c、 运行run.bat命令,请看后台有没有什么异常抛出。
d、 运行成功请访问http://localhost:8083将会出现空白页。访问http://localhost:8080将会出现Tomcat的欢迎页面,如果出现Apache Tomcat/4.1.12 - HTTP Status 500 - No Context configured to process this request的错误,这是正常的,因为你还没有发布.ear或.war应用。当然jboss-3.2.ORC3_tomcat-4.1.18.zip不会出现这样的问题,因为在目录server\default\deploy\中自带了web测试文件webtest.ear 访问http://localhost:8082你可以看到Jboss起动的服务。你可以运行http://localhost:8080/jmx-console就会出现相关页面。
(3) Window NT 和2000补充
对于NT和Win2k系统如果你要安装NT或Win2k服务的话,可以把jboss加在系统服务中,避免你每次需要到jboss目录下运行run.bat命令,只是当系统启动时,自动启动jboss服务器。
a、 首先你需要下载javaservice.exe文件。l 编辑一个批处理文件,自己命名文件名,存入和JavaService.exe相同的目录。我命名为Jboss_Tomcat_Service.bat此文件的内容@echo offecho --------
echo Usage: %0 jdk_home tomcat_home (classic/hotspot/server)echo NOTE: You MAY NOT use spaces in the path names. If you k