<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
2005 年 6 月,Sun 启动了 GlassFish 项目 —— 开发一个与 Java Platform, Enterprise Edition 5 (Java EE 5) 兼容的应用服务器,并向 Java 社区公开。此后,一个名为 GlassFish 社区 的活跃的开发人员社区参与了此项目。他们努力的最初结果是 GlassFish v1(第一个开源的、与 Java EE 5 兼容的应用服务器),以及 Java EE 5. 的参考实现。另外,GlassFish 社区还发布了 Toplink Essentials,即 Java Persistence API 的参考实现。此社区还培养了许多不同的子项目,比如 Metro、jMaki、Open Message Queue (Open MQ)、Hudson 和 Grizzly。
GlassFish v1 的重点是开发人员。目的是提供一个开源并与 Java EE 5 完全兼容的应用服务器,开发人员可以使用此服务器部署并测试其 Java EE 5 应用程序。远景是简单部署,也就是对单个 GlassFish 实例的应用程序部署。在 Common Development and Distribution License (CDDL) 下可用的 GlassFish v1 已经非常流行,每年的下载量都超过 3 百万。它已被全世界采纳并在多个发行版中可用,其中包括支持 Sun 的商业发行版 Sun Java System Application Server Platform Edition 9.0。它还在多个平台上可用,其中包括 Solaris、Windows 和 Linux 操作系统。
2007 年 9 月,GlassFish 社区发布 GlassFish v2,其中包括 GlassFish v1 的所有功能,并添加了其他功能,使得应用服务器能够接受重型生产环境的挑战。本文概述了这些功能。
本指南将阐述启动 GlassFish 服务器软件,封装和部署应用程序的基本步骤。同时还包括 Admin Console 和命令行工作的相关信息。要使用此快速入门指南,您必须首先安装 GlassFish 产品。有关下载及安装说明,请参见 GlassFish 下载页面。
此文档包含以下几个主题:
-
启动和验证服务器
-
封装和部署应用程序
-
使用命令行工具
-
未来计划
有关此文档所使用的规范信息,请参阅 文档规范。
启动和验证服务器
本节提供的步骤适用于想启动和验证 GlassFish 服务器软件的管理员:
-
启动 GlassFish 服务器
-
确认服务器正在运行
-
使用 Autodeploy 部署 Hello 应用程序
-
登录 Admin Console
针对管理任务,GlassFish 服务器软件提供了能管理服务器实例的工具:
-
Admin Console,基于浏览器的图形用户界面
-
asadmin 实用工具,命令行工具
默认的管理值如下:
-
domain.name=domain1
-
instance.name=server
-
admin.user=admin
-
admin.password=adminadmin
-
admin.port=4848
-
instance.port=8080
-
orb.port=3700
-
imq.port=7676
-
https.port=8181
- master.password=changeit (only in setup-cluster.xml)
在安装时运行 setup.xml 和 setup-cluster.xml 命令会用到这些值。在安装过程中,如有端口冲突,请用适当的端口值编辑 setup.xml 和 setup-cluster.xml 文件,并重新运行命令。
启动 GlassFish 服务器
单一实例模式
使用 ant -f setup.xml 执行安装时,通过启动域,您也启动了该服务。域会对属于它的服务实例提供授权和管理。启动域也就启动了该域中的服务。安装 GlassFish 服务时将创建默认的 domain1 域。
步骤
-
将 install-dir/bin/ 目录添加到PATH 环境变量中。
-
键入以下命令启动服务器:asadmin start-domain domain1.
服务启动后会出现以下信息:Domain domain1 is ready to receive client requests. Additional services are being started in the background.
集群模式
GlassFish 支持集群模式的服务器实例,在集群中,每个实例的程序和配置均相同。与集群相关的术语,请参阅参阅 Cluster support in GlassFish V2。
使用 ant -f setup-cluster.xml 执行安装时,通过启动域,您也启动了该服务。启动域会启动 DAS ,DAS 会依次启动该域中的实例,DAS是一个特殊委派的应用服务实例,它会在所有管理任务中进行协调。安装 GlassFish 时将创建默认的 domain1 域。
步骤
-
将 install-dir/bin/ 目录添加到 PATH 环境变量中。
-
键入以下命令启动服务器:asadmin start-domain domain1.
提示键入管理用户名和管理密码时,输入 setup-cluster.xml 中提供的用户名和密码。默认的用户名和密码分别是: admin 和 adminadmin。服务启动后会出现以下信息:Domain domain1 started
- 创建集群、节点代理,请遵循此 快速入门指南。
- 在 GlassFish V2 上创建集群后,如何加载平衡的快速方法,请参阅 Configuring the Cluster/Load Balancer with GlassFish V2
确认服务在运行
步骤
-
要确认该服务正在您的系统上运行,请单击此 URL:http://localhost:8080。
该 URL 包括两部分:
-
如果浏览器和 GlassFish 服务器运行同相的系统上,则使用 localhost 。如果 GlassFish 服务器运行在另一个系统上,则将 URL 中的系统名称替换为localhost。
-
默认端口号是8080.如果在安装过程中,修改了端口号,在浏览器地址栏里也应作相应替换。
你会看到服务欢迎页面出现在下面。
该页面可能需要几分钟才能显示。
当您看到这个页面时,表明服务器正在运行。如果服务器未运行,但系统运行正常,你会看到 server not found 错误。(在某些浏览器中,该错误会自动运行收索引擎。)
-
使用 Autodeploy 部署 Hello 应用程序
预先封装好的 Hello 程序,可以从 Java EE 5 教程上获得,也可从 http://glassfish.dev.java.net/downloads/quickstart/hello.war. 上下载。Hello 程序包含在 Web ARchive 文件中。封装好的程序可以是 Java™ ARchive 或者企业版 ARchive 文件。
拖拽或者复制 Hello 程序给域的 autodeploy 目录,能让你花费最小的力气立即运行预先封装好的程序。
步骤
-
从 http://glassfish.dev.java.net/downloads/quickstart/hello.war 下载 hello.war。
-
将 hello.war 复制到 install-dir/domains/domain1/autodeploy/。
提示 - 在 Windows 操作系统中,你可以在桌面上为 autodeploy 目录创建一个快捷方式,然后将 hello.war 文件拖拽到快捷方式上。
当系统完成应用程序的部署时,会在 autodeploy 目录下创建一个 hello.war_deployed 文件。根据你的系统配置,此过程可能需要几分钟。当你试图访问程序页面时,会出现错误: 404-File Not Found
-
要访问应用程序页面,请访问此 URL:http://localhost:8080/hello.
应用程序首页会提示您键入名称:
-
键入名称并单击提交。
应用程序会显示:Hello。
注意 - 你还可以使用 asadmin 命令行实用工具通过命令行或在 shell 脚本中部署程序。该命令是:asadmin deploy。若要获得等多信息,在命令提示后键入: asadmin deploy --help
登录 Admin Console
Admin Console 是一个基于 Web 的界面,它能使各种管理和配置任务更加简单。通常用于:
-
部署和取消部署应用程序
-
启用和禁用应用程序
-
确认当前正在运行的应用程序
-
配置 Java Database Connectivity (JDBC™) 资源和其他服务器设置
-
在日志文件中选择和查看最近条目
有关使用 Admin Console 的更多信息,请获取在线帮助文档。
步骤
-
以单一实例模式访问 http://localhost:4848/,并以集群模式访问 https://localhost:4848
-
如果 GlassFish 服务器和浏览器运行在相同的系统上,则使用 localhost。如果 GlassFish 服务器运行在另一台系统上,请替换 URL 中的系统名称。
-
4848 是 Admin Console 的默认端口号。如果在安装过程中修改了端口号,请使用修改后的端口号。
-
-
输入用户名和密码。
默认用户名是 admin,默认密码是 adminadmin。
-
单击登录。
Admin Console 应如下所示:
用服务器树形结构中的项目配置 GlassFish 服务器软件的操作设置。通过右上角的按钮,获得在线帮助。
要查看服务器的日志文件,在右边面板的普通任务标题下单击“搜索 Log 文件”,当 Log 档查看窗口出现时,设定搜素规则,单击搜索会显示状态信息,这些信息来自服务器和 JavaEE 程序的输出。
启动绑定的 Derby 数据库服务器
GlassFish 包括一个绑定的 Derby 数据库服务器,可以用命令 asadmin start-database 启动它。过程如下:
步骤
-
确保使用数据库用户登录。
- 运行 asadmin start-database.
有关 start-database 命令的更多信息,请参阅该命令的帮助。
封装和部署应用程序
在部署应用程序之前,确保将它们压缩成 Java ARchive、Web ARchive 或者 Enterprise ARchive 文件。封装的应用 程序包含部署描述符,其中包含 GlassFish 加载程序所需要的信息,并建立了一个 URL指向这些信息和其他需要的资源。这部分描述了如下的封装和部署应用程序的技术:
有关更多信息,请参见 The Java EE 5 Tutorial 的 "Getting Started With Web Applications" 部分。
使用 IDE 开发和部署应用程序
NetBeans™ IDE 是一个集成的开发环境,你可以用它创建、封装和部署复杂的 Java EE 程序。NetBeans 可以从 http://www.netbeans.org. 下载,NetBeans IDE 运用集成了开发环境和部署环境,并且能让很多生成 Java EE 的步骤自动化。一旦你用 NetBeans IDE 注册了 GlassFish 服务,就可以很容易地封装、修改和部署它们。
有关 GlassFish 和 NetBeans IDE 的更多信息,请参见:https://glassfish.dev.java.net/public/netbeans/index.html.
流行的 Eclipse IDE 还可用于开发和部署 GlassFish 上的 Java EE 程序。参考 https://glassfishplugins.dev.java.net/ 上的插件项目,可以提供 Eclipse version 3.1 的下载信息和 快速入门指南。
使用 asant 封装 Hello 应用程序
如果程序没有用类似 NetBeans IDE 的工具封装,可以用该产品的附带工具 asant 该工具能使重复性的部署任务自动化,它也是一个可以初始化 GlassFish 服务环境和条用 akarta Ant 工具的 shell 脚本。 有关 asant 工具的信息,请参见: Sun Java System Application Server Platform Edition 9 Reference Manual and Chapter 3, "The asant Utility," in Sun Java System Application Server Platform Edition 9.0 Developer's Guide.
该部分包括封装应用程序的组件到另一个 WAR 文件。 包含 Hello 程序的build.xml 文件包含了创建目标。
步骤
-
如果你已经把 install-dir/bin 加到了 PATH 环境变量中,你现在就可以这样做。
-
进入存放 Hello 应用程序的目录。
-
键入 asant war.
此命令将汇编应用程序的 WAR 文件。
通过 Admin Console 部署
封装 Hello 程序之后,下面将部署它。以下部分讨论用 Admin Console 部署应用程序,你也可以使用 asant。
步骤
-
以单一实例模式单击 http://localhost:4848/asadmin,并以集群模式单击 https://localhost:4848/asadmin
-
如果 GlassFish 服务器和浏览器运行在相同的系统上,则使用 localhost。如果 GlassFish 服务器运行在另一台系统上,请替换 URL 中的系统名称。
-
4848 是 Admin Console 的默认端口号。如果在安装过程中修改了端口号,请使用修改后的端口号。
-
-
输入管理用户名和密码。
- 在左侧窗格中,单击 Application 节点并展开它。
-
单击 Web Applications。
-
如果您已经部署了 Hello 程序,选择靠近它的复选框并单击 Undeploy。
-
要部署最近汇编的 Hello 应用程序,请单击 Web Applications 页上的 Deploy。
-
选择 Package file to upload to the Application Server 选项并单击 Browse。
-
导航到存放 Hello 应用程序的目录并选择 hello.war。
-
单击 Next。
-
在 Deploy Web Module 页面上,单击 OK。
应用程序将出现在 Web Applications 列表中。
-
要验证应用程序已正确部署,请单击 Launch。
通过部署目录部署
如果合适的目录层次结构和部署配置已经建立,你就可以从发展目录部署程序。由于对于简单的程序这个过程是复杂的,因此只最推荐高级用户和简单程序使用。但是一旦这样做是可行时,直接从目录部署可以加速开发循环。
这个过程可以用 Admin Console 和或则命令行和脚本里的 asadmin deploydir 执行。由于大多数的开发者想在命令脚本里自动化这些步骤,现将使用命令行的步骤呈现于此,
注意 - 在 Windows 中使用 asadmin 之前,请参阅 To Configure the Windows Environment to Use the Command-Line Tools。
步骤
-
在存放 Hello 应用程序的目录中,创建一个名称为 hello2/ 的新目录。
-
将 hello.war 文件的内容解压到 hello2/ 目录。
当你解压 hello.war时,维持目录结构不变。它也是你需要直接从目录部署的这类文件的一个模板。
-
如果你已经部署了 Hello 程序,在命令行中用 asadmin undeploy hello 封装它。
-
使用以下命令部署应用程序:
asadmin deploydir hello-download-dir/hello2
注意 - 指定 hello2/ 目录的完整路径。
如果你没有安装带有"Don't prompt"的 GlassFish 服务,请指定 --user username, 选项, username 是管理者的名字。你可能会提示输入密码。
会出现下面的信息: Command deploydir executed successfully.
-
验证应用程序正在运行,请访问 URL:http://localhost:8080/hello。
使用命令行工具
除了 Admin Console 外,GlassFish 服务器软件还提供了各种各样的命令行工具来执行管理功能。这部分解释命令行工具。
要运行工具,请在命令窗口中输入命令名。下表的第一列是命令的名字,第二列是相关的描述。
表 1 命令行工具
工具名 | 说明 |
---|---|
appclient | 运行 Application Client Container 并调用 JAR 文件中的客户端程序。 |
asadmin | 配置 GlassFish 服务器软件的管理工具。 |
asant | 运行 Jakarta Ant 工具,这样你可以让重复的开发和部署任务自动化。 |
asapt | 用 Java EE 解释编译 Java 资源。该工具自动调用 wsimport 命令。 |
asupgrade | 升级 GlassFish 服务器软件的管理工具。 |
capture-schema | 压缩数据库的模式信息,生成服务为 CMP 使用的模式文件。 |
jspc | 编译 JSP 页面。 |
package-appclient | 封装程序客户端容器库和 JAR 文件。 |
verifier | 使带有 DTDs 的 Java EE 部描述符署有效。 该工具提供了图形用户接口,为了能够查看 GUI,请指定 -u 选项。 有些系通可能会有同名的驱动核查工具。要运行 GlassFish 服务核查工具,首先在 install-dir/bin 目录中必须有该工具。 |
wscompile | 打开服务定义接口、产生客户数据和 JAX-RPC 的服务器概述。,或者为已经提供的接口产生网页描述语言。 |
wsdeploy | 为使用 JAX-RPC 的服务程序生成一个有特定功能的,很容易部描的 WAR 文件。 |
wsgen | 读取服务器端类生成网络服务部描和调用所需的数据。 |
wsimport | 生成 JAX-WS 可移植的工件,例如服务器端接口、标记 wsdl:fault and soap:headerfault 中的预期类。不同步的回复来源于wsdl:message 标记,JAX-B 产生值的类型。 |
使用命令行工具配置 Windows 环境
步骤
-
在浏览器窗口或桌面右击我的电脑。
-
选择属性显示系统属性对话框。
-
单击高级选项卡。
-
单击环境标签。
-
在用户标签部分,添加或修改 PATH 变量。
- 如果 PATH 变量存在:
-
单击编辑。
- 在变量值中,输入路径给 bin 目录,要区别于其他的输入,可以使用分号间隔。例如:
install-dir/bin;other_entries
-
-
如果PATH变量不存在 :
-
单击新建。
-
在变量名中输入 PATH。
-
在变量值中,输入服务器的 bin 目录:
install-dir/bin
-
- 如果 PATH 变量存在:
-
在用户选项卡部分,添加环境变量AS_ADMIN_USER 并且把它设置成你在安装中用的管理者名字。
如果你设定了这个变量,你在运行 the administrative user name when you run asadmin 命令时,不需要输入管理者名.
-
单击 OK 提交并关闭剩余的窗口。
未来计划
学习和使用 GlassFish 服务器的其他资料,包括:
-
服务器安装结束时的页面 install_dir/docs/about.html。
了解一些最新的消息、教程和其他教育服务。
-
The Java EE 5 Tutorial (http://java.sun.com/javaee/5/docs/tutorial/doc/index.html)
本文介绍如何构建和部署 Java™ 平台企业版程序。
-
此站点提供的全面示例演示了 GlassFish 服务器软件的操作过程以及如何将它作为应用程序模板使用。
-
获取 GlassFish 项目的帮助。
-
GlassFish Articles, Tech Tips and Blogs
访问该站点,阅读各类与 GlassFish 特性相关的文章。
-
访问该站点,下载 NetBeans IDE 并查看文档,包括安装说明和快速入门指南。
-
访问该站点,了解如何使用支持 GlassFish 的 IDE 插件。
<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>