Sun GlassFishTM Enterprise Server 产品是兼容 JavaTM Platform, Enterprise Edition (Java EE) 6 平台的服务器,用于开发和部署 Java EE 应用程序和 Java Web 服务。该服务器可以免费用于生产。Sun GlassFish Enterprise Server 可免费用于开发、部署和再分发。如果您是对再分发感兴趣的客户,请联系 Sun OEM 销售部,以获取再分发许可证。
《Sun GlassFish Enterprise Server v3 发行说明》包含有关 Enterprise Server v3 发行版本的重要信息,其中包括有关新功能、硬件和软件要求、已知问题及其解决方法(如果有的话)的信息。
安装和设置软件之前,请先检查本文档;并请先阅读本文档,然后再开始使用 Sun GlassFish Enterprise Server v3。定期查阅本文档,以查看最新文档。
本节提供《Sun GlassFish Enterprise Server v3 发行说明》的更改记录。
表 1–1 修订历史记录
日期 |
更改描述 |
---|---|
2009 年 12 月 |
初始版本。 |
2010 年 1 月 |
已添加关于再分发的信息。 已将问题 11427 添加到已知问题。 已将问题 11428 添加到已知问题。 已将问题 11439 添加到已知问题。 已将问题 6852796 添加到已知问题。 |
Sun GlassFish Enterprise Server v3 为开发和部署 Java Platform, Enterprise Edition(Java EE 平台)应用程序以及基于 Java 技术的 Web 技术提供服务器。
本节说明 Enterprise Server 的以下新增功能:
Java EE 6 引入了配置文件的概念。配置文件 (profile) 是针对特定开发者社区和应用程序类型的 Java EE 技术和 API 的集合。
以下配置文件通过分发 Sun GlassFish Enterprise Server v3 来实现:
Full Platform Profile。该配置文件的使用对象是需要 Java EE API 完整集合来进行企业应用程序开发的开发者。安装 Sun GlassFish Enterprise Server v3 时会安装 Full Platform Profile。该配置文件也可作为 Java EE 6 SDK 安装的一部分安装。
Web Profile。该配置文件包含属于 Full Platform 一部分的 Web 技术,使用对象是不需要 Java EE API 完整集合的开发者。安装 Sun GlassFish Enterprise Server v3 Web Profile 时会安装 Web Profile。该配置文件也可作为 Java EE 6 Web Profile SDK 的一部分安装。
Java EE 6 SDK 分发可从 Java EE 6 SDK 下载页面 获取。
有关每个配置文件中的 API 列表,请参见Java EE 6 标准。
Sun GlassFish Enterprise Server v3 将 GlassFish 代码拆分为模块,以增强灵活性并提高运行时性能。模块化体系结构遵循 OSGi Alliance 标准实施,实现了 Enterprise Server v3 模块及其他模块的可重用性。
此设计更改让您可只使用部署的应用程序所需的模块。运行时环境仅用于必需的应用程序,并且可以在不重新安装整个系统的情况下实现升级。此更改最大程度地缩短了启动时间、降低了内存消耗并减少了磁盘空间需求。
此模块化设计可实现以下功能:
部署 OSGi 包
部署库 Java 归档 (Java Archive, JAR) 文件
用其他实现替换现有功能
新的 Sun GlassFish Enterprise Server v3 容器系统提供者接口 (system provider interface, SPI) 定义了容器开发者必须实现以便 Enterprise Server 可随时调用的接口。此更改允许 Enterprise Server 用户通过添加管理命令和图形附加组件创建自定义应用服务器。
Enterprise Server 还提供对新模块类型(如 Ruby on Rails)的简化支持。
更新工具现已嵌入到 Sun GlassFish Enterprise Server v3 管理控制台。此工具有利于管理可用于扩展 Enterprise Server v3 功能的附加组件及相关应用程序。
管理控制台可通过导航树访问更新工具页面。更新工具页面提供有一些选项卡,可显示以下内容:
已安装的组件
已安装组件的可用更新
可用且可安装的附加组件
在管理控制台中集成更新工具使管理员可方便地扩展 Enterprise Server 并查看可用的更新。可通过 updatetool 命令来使用更新工具的独立版本。有关更新工具的更多信息,请参见《Sun GlassFish Enterprise Server v3 Administration Guide》中的“Update Tool”。
无法使用管理控制台中的更新工具界面来更新现有组件。要更新或删除已安装组件,必须使用独立命令行版本或 pkg 命令。
更新工具由更新中心 项目开发。管理控制台使用 Update Center 2.3 API 显示可用的组件、版本和日期的列表。有关 Update Center 2.3 的信息,请参见 Update Center 2.3 发行说明。
更新工具与升级工具不同,后者用于从 Enterprise Server 的较早版本将配置和已部署应用程序迁移到当前版本。有关“升级工具”的更多信息,请参见《Sun GlassFish Enterprise Server v3 Upgrade Guide》。
为加快应用程序开发和部署,Sun GlassFish Enterprise Server v3 支持各种脚本语言。脚本语言的使用使得 Enterprise Server 的应用得以超出集中于 Java 技术开发的范围。支持的脚本语言包括:
JRuby 和 Rails:脚本语言和用于开发 Web 应用程序的框架
Grails:Web 应用程序框架,利用 Groovy 编程语言并对 Java Web 开发进行了补充
Jython 和 Django:Python 语言的 Java 实现和用于 Python 和 Python 实现(例如 Jython)的 Web 框架
jMaki:用于创建 Ajax Web 应用程序的框架
对这些脚本语言提供支持的组件均可通过“更新工具”找到。
Sun 与 Microsoft 密切合作,以确保 Web 服务企业技术(例如消息优化、可靠的消息传送和安全性)的互操作性。WSIT 便是这一通力合作的产品。WSIT 是 Metro 2.0 的一部分,Metro 2.0 是高性能的可扩展 Web 服务栈,它提供与 Microsoft .NET 3.5 的互操作性。Metro 2.0 包括在 Enterprise Server v3 的完整分发中。
WSIT 是多个开放式 Web 服务规范的实现,用以支持企业功能。除了消息优化、可靠的消息传送和安全性之外,WSIT 还包括引导和配置技术。从当前 Java 平台上内置的核心 XML 支持开始,WSIT 使用或扩展了现有的功能,并添加了新的对可互操作 Web 服务的支持,其中包括:
引导和配置
消息优化技术
可靠的消息传送技术
安全性技术
在本发行版本中,appclient 实用程序具备以下增强功能:
appclient 实用程序可接受与 Java 应用程序启动器 (java) 的语法类似的备用命令行语法。
添加了 -targetserver 选项以启用要指定的目标的服务器和端口号。
应用程序客户端中支持闪屏。
有关更多信息,请参见 appclient(1M) 手册页。
Sun GlassFish Enterprise Server v3 将 EclipseLink 用作其 Java 持久性 API (Java Persistence API, JPA) 2.0 提供者。EclipseLink 也是 JSR 317 的参考实现。有关 EclipseLink 功能性的最新信息,请参见 EclipseLink 2.0 发行说明。
在 Sun GlassFish Enterprise Server v3 中,大多数“HTTP 服务”设置已移动到新的“网络服务”配置。有关更多信息,请参见《Sun GlassFish Enterprise Server v3 Upgrade Guide》。
在 Sun GlassFish Enterprise Server v3 中,默认情况下不会对管理凭证进行提示。这不同于之前的发行版本。
如果使用 ZIP 文件安装 Enterprise Server,则在启动管理控制台或使用 asadmin 实用程序以及远程子命令来执行管理任务时,不会对管理凭证进行提示。
使用自解压文件和图形安装程序安装 Enterprise Server v3 时,只有在安装期间在“Administration Settings”页面上指定了用户名和密码后才会对管理凭证进行提示。如果接受该页面上的默认设置,则默认管理用户为 admin,并且密码字段为空。
如果仅有一个无密码的 admin 用户,则允许未经验证的登录。有关管理员验证的更多信息,请参见《Sun GlassFish Enterprise Server v3 Administration Guide》中的“To Log In to a Domain”。
可在安装 Enterprise Server 后更改管理员验证要求。有关使用管理控制台执行此操作及相关任务的信息,请参见管理控制台联机帮助。有关使用命令行界面的信息,请参见《Sun GlassFish Enterprise Server v3 Administration Guide》中的“Administering Passwords”。
已修改 asadmin 实用程序的行为来强调 asadmin 实用程序自身的选项与其子命令的选项之间的区别。现在允许在子命令前使用 asadmin 实用程序自身的选项。然而,为与其他发行版本兼容,仍允许在子命令后使用 asadmin 实用程序自身的选项,但此类语法已过时。
有关更多信息,请参见《Sun GlassFish Enterprise Server v3 Administration Guide》中的“Using the asadmin Utility”。
与之前的发行版本相比,Sun GlassFish Enterprise Server v3 对文件布局进行了以下更改:
默认安装目录为:
Solaris、Linux 和 Mac OS X 系统:user's-home-directory /glassfishv3
Windows 系统:SystemDrive :\glassfishv3
添加了 glassfish 子目录,而且该目录之下存在其他子目录。
产品库从 glassfish/lib 移动至 glassfish/modules。
添加了 osgi 目录。
为法律文件添加了指定目录。许可证和版权文件现在位于 glassfish/legal。
Sun GlassFish Message Queue 安装在顶层目录而非子目录中。
Java DB 安装在顶层目录而非子目录中。
Sun GlassFish Enterprise Server v3 提供服务器特定的 Ant 任务,因此必须安装 Ant。发行版本中未包括 asant 实用程序。
Enterprise Server 与 Apache Ant 版本 1.6.5 或更高版本兼容。如果未安装 Ant,可使用更新工具进行安装。
有关更新工具的更多信息,请参见《Sun GlassFish Enterprise Server v3 Administration Guide》中的“Update Tool”。有关 Ant 任务的更多信息,请参见《Sun GlassFish Enterprise Server v3 Application Development Guide》中的第 3 章 “Using Ant with Enterprise Server”。
因为 Sun GlassFish Enterprise Server v3 为模块化和可扩展的,所以无法通过静态 DTD 文件来验证 domain.xml 文件。而是需要通过源代码中的 @Configured 注释来对 domain.xml 文件进行验证。有关 domain.xml 文件结构的更多信息,请参见《Sun GlassFish Enterprise Server v3 Domain File Format Reference》。
Enterprise Server v3 与 Enterprise Server v2 之间存在与应用程序相关的差异。本节说明了部分差异。
在 Enterprise Server v3 中,用于部署的 force 选项的默认值为 false。不过 Enterprise Server v2 中该默认值为 true。因此在 Enterprise Server v3 中,必须在重新部署时明确地将选项设置为 true。升级期间不会自动设置该选项。此更改的目的在于避免意外地覆写现有应用程序的内容。而且此更改会同时应用到管理控制台和命令行实用程序。
Enterprise Server v3 中的 asadmin redeploy 命令为新命令,相当于 --force=true。force 选项仅适用于 deploy 命令(命令行界面)和 deploy 屏幕(控制台),而不适用于 redeploy 命令和 redeploy 屏幕。
Enterprise Server v2 包含两个用于应用程序系统信息库的子目录:applications/j2ee-apps 和 applications/j2ee-modules。Enterprise Server v3 中不存在这些子目录(没有 j2ee-apps 或 j2ee-modules 级别)。在 Enterprise Server v2 中,独立模块(例如 foo.war)部署在 applications/j2ee-modules/foo 之内,如今在 Enterprise Server v3 中,此类模块部署在 applications/foo 之内。企业应用程序和独立模块本质上共享同一名称空间,因此无需中间目录层。
在 Enterprise Server v3 中,以前的 web-module、ejb-module 等元素已过时,取而代之的是新的 application 元素。有关 application 元素的更多信息,请参见《Sun GlassFish Enterprise Server v3 Domain File Format Reference》中的“application”。
升级期间会通过 domain.xml 中新的 application 元素将 Enterprise Server v2 应用程序重新部署到新的 applications/ 位置。将使用新目录结构和元素来部署在 Enterprise Server v3 上部署的所有新应用程序。
Java EE 6 引入了比 Java EE 5 更严格的 JAR 可见性规则。因此某些版本更低的应用程序可能会失败。
Java EE 6 规范 引入了严格的规则,规定企业归档 (enterprise archive, EAR) 文件中有哪些 JAR 文件可见。请参见特殊章节 EE.8.3.3。具体而言,只有在应用程序客户端 JAR 文件的清单 Class-Path 显式地引用了 EJB JAR 文件的情况下,应用程序客户端模块才能访问 EJB JAR 文件。
这是针对 Enterprise Server v2 的更改(在此发行版本中,应用程序客户端自动拥有访问 EAR 文件中的所有 EJB JAR 文件,以及位于 EAR 文件顶层的所有 JAR 文件的权限)。为遵守这一更严格的规范语言,Enterprise Server v3 无法自动向应用程序客户端提供对这些 JAR 文件的访问权。
可按照以下方法处理这一由 Java EE 6 引入的更严格的新行为:
如果将应用程序部署到 Enterprise Server v2 域,“升级工具”将保留应用程序在该域中的 Enterprise Server v2 行为。有关升级的更多信息,请参见《Sun GlassFish Enterprise Server v3 Upgrade Guide》。
更改客户端的 Class-Path 清单以使其显式地引用其所依赖的 JAR 文件。Class-Path 不得列出 EAR 文件的库目录中的 JAR 文件。按照规范要求,EAR 文件中的所有模块都可使用该目录中的所有 JAR 文件。该目录默认为 /lib,也可使用 application.xml 描述符中的 library-directory 将其设置为其他目录。
使用可选的 --property compatibility=v2 设置来部署 EAR 文件。这样就可在将应用程序部署到 Enterprise Server v3 时保留其 Enterprise Server v2 行为。
《Sun GlassFish Enterprise Server v3 Upgrade Guide》中的第 1 章 “Application Server Compatibility Issues”中也探讨了对此行为的更改。
在 Sun GlassFish Enterprise Server v3 中运行 deploy --retrieve 和 get-client-stubs 命令时,将不再像在 Enterprise Server v2 中那样仅将一个 JAR 文件下载到本地目录。在 Enterprise Server v3 中,除了仍然会创建 localdir/myAppClient.jar 并可在 appclient 命令中将其作为目标外,还会创建另一个目录 localdir/myAppClient ,进而可包含其他文件。
之前可通过复制单个 Enterprise Server v2 下载 JAR 文件来将应用程序客户端组件从一个位置移动到另一位置,但是此方法在 Enterprise Server v3 中不起作用。现在支持的方法是使用 asadmin get-client-stubs 命令执行此操作。有关该命令的更多信息,请参见 get-client-stubs(1)。
如果仍然选择复制,就必须同时复制 localdir/myAppClient.jar 文件(与在 Enterprise Server v2 中一样)和 localdir/myAppClient 目录的所有内容。
本节列出了在安装 Sun GlassFish Enterprise Server v3 产品之前必须满足的要求。
安装 Sun GlassFish Enterprise Server v3 需要至少 200 MB 的可用磁盘空间,而运行则需要至少 100 MB 的可用内存。
下表列出了受支持的操作系统,并给出了每种操作系统的最小内存、建议的内存、最小磁盘空间、建议的磁盘空间和 Java 虚拟机。
如下表所示,Enterprise Server 要求 JDKTM 发行版本 6。需要的最低(并且已认证的)JDK 6 软件版本取决于操作系统。对于平台特定的要求,请参见所需 JDK 版本。
表 1–2 支持的操作系统
操作系统 |
最小内存 |
建议的内存 |
最小磁盘空间 |
建议的磁盘空间 |
Java 虚拟机 |
---|---|---|---|---|---|
SolarisTM 操作系统 |
|||||
Solaris 10(SPARCTM 平台) |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位和 64 位 |
Solaris 10(x86 平台) |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位和 64 位 |
OpenSolarisTM 2009.06 |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 |
Linux |
|||||
Red Hat Enterprise Linux 5.0 |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位和 64 位 |
Red Hat Enterprise Linux 4.0 |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位 |
SUSE Linux Enterprise Server 10 |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位 |
Ubuntu Linux 8.04 |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位 |
Windows |
|||||
Windows 7 Professional |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位和 64 位 |
Windows XP Professional SP3 |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位 |
Windows 2008 |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位 |
Windows Vista Business |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB |
JDK 6 32 位 |
Mac OS |
|||||
Mac OS X 10.5 和 10.6 |
1 GB |
2 GB |
250 MB 可用空间 |
500 MB 可用空间 |
JDK 6 32 位 |
在 UNIX® 平台上,可以使用 uname 命令查看操作系统版本。可以使用 df 命令查看磁盘空间。
在任何 Microsoft Windows 平台上运行 Enterprise Server 时,使用 NTFS 文件系统而非 FAT 或 FAT32 文件系统。
系统虚拟化是一项允许多个操作系统 (Operating System, OS) 实例在共享硬件上独立执行的技术。在功能方面,部署到在虚拟化环境中托管的 OS 的软件通常不知道基础平台已被虚拟化。Sun 在所选择的系统虚拟化和 OS 组合上执行其 Sun Java System 产品的测试,以帮助验证 Sun Java System 产品是否能够继续在正确调整大小及配置的虚拟化环境中如在非虚拟化环境中一样运行。有关 Sun 对虚拟化环境中 Sun Java System 产品的支持,请参见 System Virtualization Support in Sun Java System Products。
要安装以下软件,临时目录必须具有足够的空闲空间:
Sun GlassFish Enterprise Server:最少 35 MB
SDK:最少 250 MB
必须有七个未使用的可用端口。
安装程序自动检测正在使用的端口,并建议将当前未使用的端口用作默认设置。
下表列出了初始默认端口分配。如果这些默认端口号均已在使用,则安装程序会从动态端口范围中分配一个随机选定的端口号。所选端口号可能并不是下一可用端口号。
表 1–3 Enterprise Server v3 的默认端口分配
端口号 |
用法 |
---|---|
4848 |
管理控制台 |
8080 |
HTTP |
8081 |
HTTPS |
8686 |
Pure JMX 客户端 |
3700 |
IIOP |
3820 |
IIOP/SSL |
3920 |
具有相互验证的 IIOP/SSL |
如果使用的是 Solaris 10 操作系统,必须在平台上应用适当的修补程序,如下表所示。
平台 |
修补程序编号 |
---|---|
SPARC 平台 |
119963-08 |
x86 平台 |
119964-08 |
同时必须确保已应用 Sun 建议的修补程序集。
这些修补程序和修补程序集可从 SunSolveSM 程序 Web 站点 获得。
要获取修补程序,可单击“PatchFinder”(修补程序查找器)链接,然后使用“Patch ID”(修补程序 ID)字段搜索修补程序。
要获取修补程序集,可单击“Downloads”(下载)部分中的“Patch Cluster and Patch Bundle Downloads”(修补程序集和修补程序包下载)链接,然后单击建议的修补程序集的链接。
安装 Sun GlassFish Enterprise Server v3 需要 JDK 发行版本 6。
Enterprise Server 需要的最低(并且已认证的)JDK 软件版本取决于操作系统:
对于支持的操作系统,需要的最低版本为 1.6.0_17,不过 Mac OS X 除外。
对于 Mac OS X 操作系统,需要的最低版本为 1.6.0_15。
Enterprise Server 所使用的以下二进制文件必须来自 JDK 软件,而非来自 Java 运行时环境 (JRETM) 软件:
java
keytool
要达到此要求,需要确保在路径中,JDK 软件的 bin 目录位于 JRE 软件的 bin 目录之前。
下表列出了在本发行版本中所支持的数据库和驱动程序。所有受支持的 Sun GlassFish Enterprise Server v3 配置都必须至少包含一个由此表中数据库和驱动程序组成的组合,例如 Java 数据库和驱动程序。此外,Enterprise Server 设计为支持使用支持 JDBC API(JDBC 驱动程序)的相应驱动程序,通过 Java 数据库连接 (Java DataBase Connectivity, JDBCTM) 技术与任何其他数据库管理系统 (Database Management System, DBMS) 进行连接。
表 1–4 支持的 JDBC 驱动程序和数据库
JDBC 驱动程序供应商 |
JDBC 驱动程序类型 |
支持的数据库服务器 |
---|---|---|
MySQL Connector/J Driver 5.1 |
类型 4 |
MySQL 5.1 |
Java DB 10.5.3.0 |
类型 4 |
Java DB 10.5.3.0 |
Oracle 11 |
类型 2 和类型 4 |
Oracle 11 |
PostgreSQL 8.4 |
类型 4 |
PostgreSQL 8.4 |
DB2 9.7 |
类型 2 |
DB2 9.7 |
Sun, DataDirect 4.0 |
类型 4 |
Sybase ASE 15 |
Sun, DataDirect 4.0 |
类型 4 |
DB2 9.7 |
Sun, DataDirect 4.0 |
类型 4 |
Microsoft SQL Server 2008 |
Sun, DataDirect 4.0 |
类型 4 |
MySQL 5.1 |
下表列出了支持的浏览器和版本。
表 1–5 支持的 Web 浏览器
浏览器 |
版本 |
---|---|
Firefox |
2.0, 3.0 |
Internet Explorer |
7.0, 8.0 |
Safari |
3.2, 4.0 |
Sun GlassFish Enterprise Server v3 支持 mod_jk 1.2.x,最低版本为 1.2.26。
本节说明 Sun GlassFish Enterprise Server v3 中的已知问题及其解决方法(如果有)。
[JDK_Issue] 因调用 setSoLinger 或 setReuseAddress 导致性能降级(问题 7109)
[JDK_ISSUE] Richacess:java.io.IOException:由 doSelect 产生的无效参数(问题 8573)
com.sun.xml.wss.NonceManager.getInstance 抛出 null 指针异常(问题 11138)
[Open Installer] Windows Vista 和 Windows 2008 上“开始”菜单未显示,且随后该菜单为空(问题 5087)
部署 specj 应用程序后,asadmin get --monitor=true "server.*" 会导致 I/O 错误(问题 11163)
Java EE 6 受管 Bean 支持在使用 Java Web Start 启动的应用程序客户端中不可用(问题 11257)
在具有 Apple Java 实现的 Mac OS X 上调用 appclient 脚本时出现警告消息(问题 8644)
内嵌帮助和 CLI 手册页在 X-Powered-By 中列出了不正确的 servlet 版本 2.4(问题 11011)
[Embedded] 使用 uber-jar 部署包含有 activation-1.1.jar 的应用程序时失败(问题 11149)
在 Solaris 上,passwordfile 中没有 AS_ADMIN_USER 时,create-service 无法创建服务(问题 11119)
[Monitoring] 用于 connector-connection-pools 的附加监视视图不可用(问题 11256)
[EclipseLink] 可嵌入部分的 ElementCollections 问题(EclipseLink 问题 296606)
调用 setSoLinger 方法或 setReuseAddess 方法时,会出现性能降级并抛出以下异常:
[#|2009-01-26T00:33:56.325-0800|WARNING|sun-appserver9.1| javax.enterprise.system.container.web|_ThreadID=17; _ThreadName=SelectorReaderThread-8084; _RequestID=11ae0030-c392-4217-8408-cfa7efe0a879;|setSoLinger exception java.net.SocketException: Invalid argument |
该问题是由 JDK 软件的问题所导致的。JDK 版本 7 中已解决该问题。
有关更多信息,请参见问题报告。
无。
重新启动 Enterprise Server 有时会导致抛出 null 指针异常。
SEVERE: doSelect exception java.lang.NullPointerException |
该问题是由 JDK 软件的问题所导致的。JDK 版本 7 中已解决该问题。
有关更多信息,请参见问题报告。
无。
在 HTTP 生命期测试期间,连续运行 42 小时后抛出以下异常:
[#|2009-04-05T17:41:26.537-0700|SEVERE|glassfish|javax.enterprise.system.core| _ThreadID=15;_ThreadName=Thread-1;|doSelect exception java.io.IOException: Invalid argument |
在运行期间仍可访问实例和应用程序。
该问题是由 JDK 软件的问题所导致的。JDK 版本 7 中已解决该问题。
有关更多信息,请参见问题报告。
无。
在启动时,Enterprise Server 会抛出 null 指针异常:
java.lang.NullPointerException at sun.nio.ch.Util.atBugLevel(Util.java:326) at sun.nio.ch.SelectorImpl.<init>(SelectorImpl.java:40) at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:47) |
该问题与 Grizzly 有关,是 JDK 6 的问题。JDK 7 中已解决该问题。
有关更多信息,请参见问题报告。
无。Grizzly 尝试解决该问题,但该问题仍可能发生。
会产生以下异常:
[#|2009-06-20T06:05:57.942-0700|SEVERE|glassfish| com.sun.grizzly.config.GrizzlyServiceListener| _ThreadID=21;_ThreadName=Thread-2;|doSelect IOException java.io.IOException: Invalid argument |
这是 JDK 的问题,计划在 JDK 1.6.0_18 中修复。
有关更多信息,请参见问题报告。
将文件描述符的最大数量增加至 10000 或更多(Solaris 中默认为 64000)。JDK 1.6.0_18 一经发布,请立即安装。
如果域的 /applications 目录存在访问限制,或者使用的是来自受限目录的目录部署,则服务器无法读取扩展目录中的文件。部署期间会出现 NullProcessException 错误。
有关更多信息,请参见问题报告。
更改此类目录的文件访问设置,以授予服务器读取目录内容的权限。
time-stamp-install.log 文件无法读取,因为所有写入到该文件的行全部串连到了单个长字符串中。
有关更多信息,请参见问题报告。
换用其他编辑器,然后手动打开 %TEMP% 目录下创建的安装日志文件。
只有在重新启动服务器之后,才能监视关于新增虚拟服务器的统计信息。
有关更多信息,请参见问题 6238 和问题 6422 的报告。
添加虚拟服务器后,重新启动服务器以查看虚拟服务器的监视数据。
将用于重定位日志文件的选项 -l与选项 -a 和 -s 一起使用时,该选项会被忽略,并且会在默认位置创建日志文件。
有关更多信息,请参见问题报告。
无。
Windows Vista 上启用用户帐户控制 (User Account Control, UAC) 后,部分功能无法正常工作。例如无法启动管理控制台。
有关更多信息,请参见问题报告。
禁用 UAC 并重新引导。
在启用 GlassFish 消息安全提供者的情况下测试 JAX-RPC Web 服务,会在服务器日志中抛出以下异常:
[#|2009-11-23T11:16:58.375+0005|SEVERE|glassfishv3.0| javax.enterprise.resource.webservices.rpc.server.http|_ThreadID=25;_ ThreadName=http-thread-pool-8080-(2);|caught throwable java.lang.RuntimeException: com.sun.enterprise.security.jauth.AuthException |
nonce 属性的默认值不起作用。
有关更多信息,请参见问题报告。
要在 JAX-RPC Web 服务中使用消息安全,则需要在配置中禁用 nonce 属性。请参见问题报告以获取解决方法的完整步骤。
首次完成安装后未显示 Enterprise Server 的“开始”菜单组。如果注销后重新登录,则会显示菜单组,但是该菜单组为空。
有关更多信息,请参见问题报告。
无。
命令 asadmin get -m "server.*" 会返回与该服务器有关的所有监视数据。在部署很多应用程序后,数据量很大,可能需要很长的时间才能返回。客户端可能超时且出现以下客户端错误:
./asadmin get --monitor=true "server.*" I/O Error: Read timed out Command get failed. |
有关更多信息,请参见问题报告。
尽可能地减少返回至客户端的数据量。
运行 asadmin list -m "server.*" 命令以返回顶层元素。
选择需要详细信息的顶层元素,并将其用作过滤器。例如:
> ./asadmin list -m "server.*" ... server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-cache server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods. create-int-int-[Lorg\.spec\.jappserver\.supplier\.helper\.ComponentOrder server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods. findByPrimaryKey-java\.lang\.Integer server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.generateXml server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.getEJBLocalHome ... >./asadmin get -m "server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.*" ... server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.remove. methodstatistic-name = MethodStatistic server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.remove. methodstatistic-starttime = 1259604209775 ... |
在 Solaris 上安装附加组件时,通过 updatetool 命令启动独立更新工具失败,并且出现段故障。
有关更多信息,请参见问题报告。
确保系统符合 Update Center 发行说明 中定义的独立更新工具修补程序要求。
管理控制台中的更新工具功能使用不同的基于 Java 的 Update Center API,因此不受该问题影响。
如果在上下文根目录 '/' 中部署了 Ruby 应用程序,然后访问管理控制台,则访问 Ruby 应用程序时会产生 404 错误。
有关更多信息,请参见问题报告。
无。
使用 Java Web Start 启动应用程序客户端后,无法识别应用程序客户端中的所有受管 bean。
有关更多信息,请参见问题报告。
使用 appclient 脚本启动应用程序客户端。可正常支持应用程序客户端中的受管 bean。
在已安装 Apple Java 的 Mac OS X 系统上调用 appclient 脚本时,两次出现以下栈跟踪信息(此处仅显示头几行信息):
Intentionally suppressing recursive invocation exception! java.lang.IllegalStateException: recursive invocation at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:1394) at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1377) at sun.security.jca.ProviderConfig$1.run(ProviderConfig.java:64) ... |
有关更多信息,请参见问题报告。
不需要。
尽管出现警告消息,客户端仍会成功启动并正常运行。这些错误是由 Apple Java 实现中的问题造成的。
满足以下所有条件时会出现问题:
应用程序为包含应用程序客户端的 EAR。
EAR 为部署的目录。
EAR 包含应用程序客户端模块 myAppClient.jar,而且因为该模块是目录部署,它会预扩展到 myAppClient_jar。(在本示例中,myApp 为 EAR 的名称。它可以是任意名称。)
由于将某个在服务器上生成的文件放置在错误的服务器目录中,并且该文件覆写了另一个生成的文件,因此尝试启动应用程序客户端时会失败,并且出现以下错误:
java.lang.ClassNotFoundException:(main-class-for-the-client) |
有关更多信息,请参见问题报告。
更改应用程序客户端的名称,使其不为 myAppClient.jar。具体而言:
编辑 myApp/META-INF/application.xml,使客户端的声明为 <java>myClient.jar</java>。请注意,可使用 myAppClient.jar 外的任何名称。
将 myApp/myAppClient_jar 目录重命名为 myApp/myClient_jar。请注意,客户端的子目录名称必须与 application.xml 文件中的应用程序客户端 URI 一致,且 _jar 替换掉 .jar。
部署应用程序:
asadmin deploy --retrieve localdir myApp |
运行应用程序客户端:
appclient -client localdir/myAppClient.jar |
在管理控制台中的“Logger Settings”页面的“General”选项卡上对服务器日志值进行的更改不会立即生效。
有关更多信息,请参见问题报告。
重新启动服务器。在此页面上所有对值的更改都需要重新启动服务器才能生效。
图形化安装程序中的安装过程结束时会显示“Summary”页面,无法通过单击该页面上的链接来打开安装日志文件。
有关更多信息,请参见问题报告。
手动访问这些文件。安装日志和摘要文件的名称为 timestamp-install.log 和 timestamp-install-summary.html。在 Linux 和 Mac 系统上,这些文件在 $TMP 目录中生成。
如果在同一安装目录中使用相同的默认值重新安装 Enterprise Server(带有更新工具),然后使用 updatetool 命令调用更新工具,则用户会收到消息,告知用户未安装更新工具,并且询问用户是否进行安装。该问题仅出现在 Windows 系统上。
有关更多信息,请参见问题报告。
在卸载后,手动删除残留的 .org* 目录,然后重新安装。
在 Windows 和 Mac OS 系统上会间歇性地出现该问题。在某些系统上,有时 pkg(5) 会不起作用。
有关更多信息,请参见更新中心问题报告。
无。
内嵌帮助和 CLI 手册页在 X-Powered-By 字段中列出了 servlet 2.4。正确版本应为 servlet 3.0。
有关更多信息,请参见问题报告。
无。
通过 glassfish-embedded-all-3.0-b73.jar 使用嵌入部分时,部署会失败,并且出现以下错误:
SEVERE: WEB9051: Error trying to scan the classes at /private/var/folders/CV/CVhj8DvqEwGK5bdJKK9TaE TI/-Tmp- /gfembed6991712842235699248tmp/applications/xwiki-enterprise-web-2.0/ WEB-INF/lib/activation-1.1.jar for annotations in which a ServletContainerInitializer has expressed interest java.util.zip.ZipException: error in opening zip file |
出现该问题的原因是嵌入部分使用带加号 (+) 的文件夹,而在对路径进行解码时,路径中的加号被转换为空格字符 " "。
有关更多信息,请参见问题报告。
已添加可设置临时目录位置的系统属性。该属性为 glassfish.embedded.tmpdir,可设置为不将临时域目录放置在用户目录中。
在 Solaris 上,passwordfile 中没有 AS_ADMIN_USER 时,create-service 无法创建服务。
有关更多信息,请参见问题报告。
无。
Enterprise Server 使用树结构来跟踪可监视对象。在该树中,获取连接池统计信息时以下视图不可用:
server.connector-service.resource-adapter-name .connection-pool-name .* 或 server.jms-service.connection-factories. connection-factory-name.*(适用于与 jms-ra 相关的池)。
有关更多信息,请参见问题报告。
使用 server.resources.* 视图获取统计信息。
有关监视的更多信息,请参见《Sun GlassFish Enterprise Server v3 Administration Guide》中的第 8 章 “Administering the Monitoring Service”。
启用编织 (weaving) 后,更新可嵌入部分的元素集合时可能抛出 null 指针异常。
有关更多信息,请参见 EclipseLink 问题报告。
有两个可用的解决方法:
在可嵌入部分添加注释 @ChangeTracking(DEFFERED),然后将 eclipselink.weaving.internal 属性设置为 false,或者
在持久性 XML 中将以下属性设置为 false:eclipselink.weaving.changetracking 和 eclipselink.weaving.internal。
启动域并访问 localhost:4848 后,服务器日志中会出现以下消息:
[#|2009-11-27T16:21:57.091+1100|INFO|glassfishv3.0| javax.enterprise.system.container.web.com.sun.enterprise.web| _ThreadID=20;_ThreadName=Thread-1;|Created virtual server server|#] |
[#|2009-11-27T16:21:57.091+1100|INFO|glassfishv3.0| javax.enterprise.system.container.web.com.sun.enterprise.web| _ThreadID=20;_ThreadName=Thread-20;|Created virtual server server|#] |
这些消息会让用户感觉虚拟服务器 server 启动了两次。但事实并非如此。虚拟服务器只启动了一次,但消息却记录了多次。
有关更多信息,请参见问题报告。
无。
因为来自服务器的消息有限,所以很难调试 JPA。
有关更多信息,请参见问题报告。
向 logging.properties 文件添加属性 org.eclipse.persistence.session.level=INFO。然后可使用管理控制台控制 EclipseLink 记录器。
当与目标 EJB 位于同一主机上(另一个 Enterprise Server 域或另一个 Enterprise Server v3 实例)时,远程 EJB 的 EJB 互操作性会中断。
有关更多信息,请参见问题报告。
在 jvm-options 中设置以下属性:
-Dorg.glassfish.orb.iiop.orbserverid=:
在 Windows Vista 和 Windows 7 上进行安装时,Enterprise Server 图形化安装程序会在 41% 处挂起。并非是每次安装时都会出现该问题。
有关更多信息,请参见问题报告。
该问题与 Windows Vista 和 Windows 7 中的自动调整功能相关,默认会启用该功能。
如果在初次安装 Enterprise Server 时或者在添加软件包或应用更新时出现挂起现象,则限制或禁用自动调整功能。
默认情况下,Enterprise Server 上的 JMS 服务的默认主机名为 localhost。可是,要从其他系统访问 JMS 服务时却必须更改主机名。可将其更改为实际主机名或更改为 0.0.0.0。
有关更多信息,请参见问题报告。
要进行更改,可完成以下某个步骤:
使用管理控制台:展开“Configuration”、“Java Message Service”和“JMS Hosts”节点,选择 default_JMS_host,编辑“Host”字段;或者
使用 asadmin 子命令,如下所示:
asadmin set server-config.jms-service.jms-host.default_JMS_host.host="0.0.0.0",或者
asadmin set server-config.jms-service.jms-host.default_JMS_host.host="hostname"
使用图形化安装程序安装 Enterprise Server 时,成功完成安装后仅在 Windows 系统菜单中添加了顶层 GlassFish v3 条目,而且此菜单为空。该问题在本地化安装程序和英文安装程序中都会出现。
有关更多信息,请参见问题报告。
无。
deploy 命令手册页的 --dbvendorname 内支持的数据库列表中没有列出 mysql。这不正确。MySQL 是支持的数据库,应该将其列出。
有关更多信息,请参见问题报告。
无。
ACC 预期当前线程的上下文类加载器为 ACCClassLoader。这过于严格。尽管 appclient 脚本和 Java Web Start 启动满足此条件,但嵌入式功能可能无法满足。ACC 内的其他功能要求类加载器为 URLClassLoader(或 URLClassLoader 的子类的实例),但加载器不需要为 ACCClassLoader。
有关更多信息,请参见问题报告。
有两个可用的解决方法:
设置 -Djava.system.class.loader=org.glassfish.appclient.client.acc.ACCClassLoader,或
在 Java 程序中,实例化 ACCClassLoader 并使用 Thread.currentThread().setContextClassLoader 将其设置为当前线程的上下文类加载器,然后再使用嵌入式 ACC 类和接口。
能够以用户的身份在 MySQL 中创建和存储 EJB 计时器,但当尝试为 MySQL 配置 EJB 计时器服务时,出现以下异常(SQLException 执行语句):
"CREATE TABLE EJB__TIMER__TBL (TIMERID VARCHAR(255) NOT NULL, BLOB BLOB(64000), INITIALEXPIRATIONRAW BIGINT, SCHEDULE VARCHAR(255), INTERVALDURATION BIGINT, OWNERID VARCHAR(255), STATE INTEGER, LASTEXPIRATIONRAW BIGINT, PKHASHCODE INTEGER, CREATIONTIMERAW BIGINT, CONTAINERID BIGINT, PRIMARY KEY (TIMERID))": com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BLOB BLOB(64000), INITIALEXPIRATIONRAW BIGINT, SCHEDULE VARCHAR(255), INTERVALDU' at line 1|#] |
有关更多信息,请参见问题报告。
确保为计时器池指定的 datasource-classname 表示 XA 数据源。
MySQL 特定步骤:
解压缩 glassfishv3/glassfish/lib/install/applications/ejb-timer-service-app.war。
将以下内容添加到 WEB-INF/classes/__ejb_timer_mappings.xml 中的 <persistence-unit-metadata> 之后:
<persistence-unit-defaults> <delimited-identifiers/> </persistence-unit-defaults>
重新打包 WEB-INF/classes/__ejb_timer_mappings.xml 文件。
(只有当前安装已使用 EJB 计时器服务时,才需要此步骤。)在数据库中使用此 create 语句手动创建 EJB__TIMER__TBL:
CREATE TABLE `EJB__TIMER__TBL` (`TIMERID` VARCHAR(255) NOT NULL, `BLOB` BLOB(64000), `INITIALEXPIRATIONRAW` BIGINT, `SCHEDULE` VARCHAR(255), `INTERVALDURATION` BIGINT, `OWNERID` VARCHAR(255), `STATE` INTEGER, `LASTEXPIRATIONRAW` BIGINT, `PKHASHCODE` INTEGER, `CREATIONTIMERAW` BIGINT, `CONTAINERID` BIGINT, PRIMARY KEY (`TIMERID`))
除非使用 --secure 选项,否则 deploy 子命令会在安全服务器上失败。
有关更多信息,请参见问题报告。
对安全服务器发出 deploy 子命令时,使用 --secure 选项。
Enterprise Server truststore 中的某个授权证书将于 2010 年 1 月 7 日过期。该证书为 cacerts.jks。启动时将生成错误消息以表明该证书已过期:
Version: V1 Subject: OU=Secure Server Certification Authority, O="RSA Data Security, Inc.", C=US Signature Algorithm: MD2withRSA, OID = 1.2.840.113549.1.1.2 Key: SunPKCS11-Solaris RSA public key, 1000 bits (id 17891456, session object) modulus: public exponent: Validity: [From: Tue Nov 08 19:00:00 GMT-05:00 1994, To: Thu Jan 07 18:59:59 GMT-05:00 2010] Issuer: OU=Secure Server Certification Authority, O="RSA Data Security, Inc.", C=US SerialNumber: [ 02ad667e 4e45fe5e 576f3c98 195eddc0] |
有关更多信息,请参见问题报告。
已在 Java SE 6 的更新 18 中删除过期的授权证书。该证书还将从 Enterprise Server truststore 将来的更新中删除。
可以忽略该错误消息并使用更新,也可以删除该错误消息。要停止接收错误消息,请使用密钥工具将证书从 Enterprise Server truststore 中删除:
=> cd domains/domainX/config => cp cacerts.jks cacerts.jks.save => keytool -delete -keystore cacerts.jks -alias verisignserverca Enter keystore password: |
要避免在后续创建的域中再次出现过期的证书,还应从模板 truststore 中删除该证书:
=> cd glassfish/lib/templates => cp cacerts.jks cacerts.jks.save => keytool -delete -keystore cacerts.jks -alias verisignserverca Enter keystore password: |
有关密钥库密码的更多信息,请参见《Sun GlassFish Enterprise Server v3 Administration Guide》中的“Authentication”中关于主密码和密钥库的信息。
本节说明 Sun GlassFish Enterprise Server v3 的以下限制:
asadmin 命令的帮助描述了一些不受 Sun GlassFish Enterprise Server v3 支持的选项。例如:
与群集和多个服务器实例有关的选项,如 --target 选项
与配置文件有关的选项,如 --profile 选项
如果指定了不受支持的选项,不会出现语法错误。相反,命令会成功运行,而不受支持的选项会被忽略,且没有提示。
默认情况下,Enterprise Server 使用客户端 VM 来达到最佳启动和部署性能。如果使用的是 Windows AMD64,则需要编辑 domain.xml 文件以删除行 <jvm-options>–client<jvm-options>。在这种情况下,JVM 自动优化功能 (ergonomics) 将为给定平台选择适当的 VM 类型。
有关平台支持的更多信息,请参见《Ergonomics in the 5.0 Java Virtual Machine》(《5.0 Java 虚拟机中的自动优化功能》)。
下表提供了 Enterprise Server 文档集中书籍的标题和简短描述。
表 1–6 Enterprise Server 文档集中的书籍
书名 |
说明 |
---|---|
提供有关软件和文档的最新信息。并以表格形式全面地提供了所支持硬件、操作系统、Java Development Kit (JDK) 以及数据库驱动程序的有关信息。 |
|
介绍如何开始使用 Enterprise Server 产品。 |
|
介绍如何安装软件及其组件。 |
|
介绍如何升级到 Enterprise Server 的最新版本。该指南还介绍了相邻产品发行版之间的差异以及可导致与产品规范不兼容的配置选项。 |
|
介绍如何使用 asadmin(1M) 实用程序从命令行配置、监视和管理 Enterprise Server 子系统和组件。如需从管理控制台执行这些任务的说明,请参见管理控制台联机帮助。 |
|
介绍如何将应用程序安装和部署到 Enterprise Server,并提供有关部署描述符的信息。 |
|
《Your First Cup: An Introduction to the Java EE Platform》(《入门知识:Java EE 平台简介》) |
为 Java EE 初级程序员提供简要教程,此教程介绍开发简单企业应用程序的完整流程。样例应用程序是 Web 应用程序,包含基于 Enterprise JavaBeansTM 规范的组件、JAX-RS Web 服务以及用于 Web 前端的 JavaServerTM Faces 组件。 |
介绍如何创建和实施在 Enterprise Server 上运行的 Java Platform, Enterprise Edition(Java EE 平台)应用程序。这些应用程序遵循 Java EE 组件和 API 的开放式 Java 标准模型。本指南提供有关开发者工具、安全性和调试的信息。 |
|
介绍如何使用发布的 Enterprise Server 接口为 Enterprise Server 开发附加组件。本文档介绍如何只执行那些可确保附加组件适用于 Enterprise Server 的任务。 |
|
介绍如何在嵌入式 Enterprise Server 中运行应用程序,以及如何开发嵌入 Enterprise Server 的应用程序。 |
|
介绍如何使用 Ruby on Rails 和 Groovy on Grails 等语言开发部署到 Enterprise Server 的脚本应用程序。 |
|
说明在使用 Enterprise Server 时可能遇到的常见问题及其解决方法。 |
|
说明在使用 Enterprise Server 时可能遇到的错误消息。 |
|
以手册页格式提供 Enterprise Server 管理命令、实用程序命令和相关概念的参考信息。 |
|
说明 Enterprise Server 配置文件 domain.xml 的格式。 |
|
介绍如何使用 Java EE 6 平台技术和 API 开发 Java EE 应用程序。 |
|
说明 Sun GlassFish Message Queue 的新功能、兼容性问题和现有错误。 |
|
介绍如何设置和管理 Sun GlassFish Message Queue 消息传送系统。 |
|
说明 Sun GlassFish Message Queue 中的应用程序编程接口,用于遵照 Java Management Extensions (JMX) 来程序化地配置和监视 Message Queue 资源。 |
|
《System Virtualization Support in Sun Java System Products》(《Sun Java System 产品中的系统虚拟支持》) |
总结了在将 Sun Java System 产品与系统虚拟产品和功能配合使用时,Sun 对于该产品的支持。 |
Sun GlassFish Enterprise Server v3 的以下功能仅在 Full Platform Profile 中可用:
构成完整 EJB 3.1 API 的 EJB 功能,例如远程 EJB 组件、消息驱动 bean、Web 服务 EJB 端点以及 EJB 定时器服务
在 Web Profile 中支持 EJB 3.1 Lite 规范。该规范允许在 Web 应用程序中存在企业 bean,并且支持本地无状态会话 bean、有状态会话 bean 和单件 (singleton) 会话 bean。
应用程序客户端容器
JMS 资源
Web 服务
在 Web Profile 中,servlet 或 EJB 组件不能作为 Web 服务端点。与 Web 服务相关的 sun-web.xml 和 sun-ejb-jar.xml 元素会被忽略。
消息安全性
JavaMail 资源
Web Profile 支持仅使用出站通信功能的连接器模块,以及不涉及入站通信功能的工作管理。其他连接器功能仅在 Full Platform Profile 中得到支持。
下表中列出了 Sun GlassFish Enterprise Server v3 中实现的 Java EE 标准。该表同时指出各分发中是否实现了某个标准。
X 表示该实现在分发中可用。
- 表示该实现在分发中不可用。
Java EE 标准 |
Java 规范请求 (Java Specification Request, JSR) |
Sun GlassFish Enterprise Server v3 Full Platform Profile |
Sun GlassFish Enterprise Server v3 Web Profile |
---|---|---|---|
X |
X |
||
X |
X |
||
X |
X |
||
Expression Language 2.2 |
X |
X |
|
Debugging Support for Other Languages 1.0 |
X |
X |
|
X |
X |
||
X |
X |
||
Common Annotations for the Java Platform 1.1 |
X |
X |
|
X |
X |
||
X |
X |
||
X |
X |
||
Managed Beans 1.0 |
X |
X |
|
Interceptors 1.1 |
X |
X |
|
Dependency Injection for Java 1.0 |
X |
X |
|
X |
X |
||
Contexts and Dependency Injection for Java EE 1.0 |
X |
X |
|
X |
X |
||
Bean Validation 1.0 |
X |
- |
|
X |
- |
||
X |
- |
||
X |
- |
||
Implementing Enterprise Web Services 1.3 |
X |
- |
|
Web Services Metadata for the Java Platform 2.1 |
X |
- |
|
X |
- |
||
X |
- |
||
X |
- |
||
Java Authentication Service Provider Interface for Containers 1.1 |
X |
- |
|
X |
- |
||
X |
- |
||
X |
- |
||
Java API for XML-Based Registries (JAXR) 1.0 |
X |
- |
以这些标准为基础, Enterprise Server v3 提供有多个扩展,其中包括:
Ajax(异步 JavaScript 和 XML): 可检索和显示 Web 页面某部分的新数据,而不影响页面其他部分。
Metro:Web 服务栈,可实现 Java Architecture for XML Binding (JAXB) 和 Java APIs for XML Web Services 2.1 (JAX-WS 2.1)。
Grizzly: 用于使用新 I/O (NIO) API 构建可伸缩且强健服务器的框架,可适用于数以千计的用户。提供嵌入支持 HTTP、Bayeux 协议、Java Servlet API 和 Comet 的组件的功能。
Enterprise Server v3 是作为 Java EE 6 SDK 的一部分提供的。以下为 Java EE 6 SDK 的可用版本:
Java EE 6 SDK。该版本包括 Sun GlassFish Enterprise Server v3。该版本的使用对象是需要 Java EE API 完整集合来进行企业应用程序开发的开发者。
Java EE 6 Web Profile SDK。该版本包括 Sun GlassFish Enterprise Server v3 Web Profile。该版本包含属于 Full Platform Profile 一部分的 Web 技术,使用对象是不需要 Java EE API 完整集合的开发者。
Java EE 6 SDK 分发可从 Java EE 6 SDK 下载页面 获取。
如果您在使用 Sun GlassFish Enterprise Server v3 期间遇到问题,请通过以下方式提供反馈:
GlassFish 邮件列表 – 针对各种问题和反馈的多个 GlassFish 社区邮件列表
GlassFish 论坛 – 用于讨论 GlassFish 项目的论坛
可以在以下位置找到有用的信息:
本文档引用了第三方 URL 以提供其他相关信息。
Sun 对本文档中提到的第三方 Web 站点的可用性不承担任何责任。对于此类站点或资源中的(或通过它们获得的)任何内容、广告、产品或其他资料,Sun 并不表示认可,也不承担任何责任。对于因使用或依靠此类站点或资源中的(或通过它们获得的)任何内容、产品或服务而造成的或连带产生的实际或名义损坏或损失,Sun 概不负责,也不承担任何责任。
欲获得自本介质发行以来所发布的辅助功能,请联系 Sun 索取有关“Section 508”法规符合性的产品评估文档,以便确定哪些版本最适合部署辅助功能解决方案。可在以下网址找到应用程序的更新版本:http://sun.com/software/javaenterprisesystem/get.html。
有关 Sun 在辅助功能方面所做出的努力,请访问 http://sun.com/access。