Sun Java System Application Server Enterprise Edition 8.2 发行说明

第 2 章 关于 Application Server Enterprise Edition 8.2

Sun Java System Application Server Enterprise Edition 8.2 是与 J2EE 1.4 平台兼容的服务器,它用于在大规模生产环境中开发和部署 J2EE 应用程序和基于 Java 技术的 Web 服务。

本章包括:

8.2 发行版的新增功能

Application Server Enterprise Edition 8.2 包括以下增强功能:

硬件和软件要求

本节列出了安装 Sun Java System Application Server Enterprise Edition 8.2 产品之前必须满足的要求。

平台要求

下表列出了 Sun Java System Application Server Enterprise Edition 8.2 产品所支持的操作系统。此外,还标识了安装和运行 Application Server 所需的最小内存和建议的内存。

表 2–1 Sun Java System Application Server 8.2 平台要求

操作系统 

最小内存 

建议的内存 

最小磁盘空间 

建议的磁盘空间 

JVM [仅支持 32 位(而非 64 位)JVM。]

Sun Solaris 9, 10 (SPARC) 

Solaris 9, 10 (x86) 

512 MB 

1 GB 

250 MB 可用空间 

500 MB 可用空间 

J2SE_5_08 

Sun Java Desktop System 

512 MB 

1 GB 

250 MB 可用空间 

500 MB 可用空间 

J2SE_5_08 

Redhat Enterprise Linux 3.0 U1, 4.0 

512 MB 

1 GB 

250 MB 可用空间 

500 MB 可用空间 

J2SE_5_08 

Windows Server 2000 SP4+ 

Windows 2000 Advanced Server SP4+ 

Windows Server 2003 

Windows XP Pro SP1+ 

1 GB 

2 GB 

500 MB 可用空间 

1 GB 可用空间 

J2SE_5_08 


注 –

上面列出的 Application Server 的系统要求与HADB 要求和支持的平台中列出的 HADB 的系统要求不完全相同。这不是文档错误。通常会在不同计算机上运行 Application Server 和 HADB 服务器。


在 UNIX 上,可以使用 uname 命令查看操作系统的版本。可以使用 df 命令查看磁盘空间。


注 –

在任一 Microsoft Windows 平台上运行 Application 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

重要修补程序信息

Solaris 修补程序要求

建议 Solaris 9、10(x86、SPARC)用户安装“Sun 推荐的修补程序簇”。此修补程序群集可以在 SunSolve 上的 Recommended and Security Patches 下找到。

RedHat Enterprise Linux 3.0 的附加软件包要求

要运行此产品的本机组件(包括安装程序),应安装以下软件包,该软件包不是标准 RedHat Enterprise Linux 3.0 分发的一部分:compat-libstdc++-7.3-2.96.118.i386.rpm

可以从 http://rpm.pbone.net/index.php3/stat/4/idpl/843376/com/compat-libstdc++-7.3-2.96.118.i386.rpm.html 下载该软件包

JDBC 驱动程序和数据库

Sun Java System Application Server 支持使用相应的 JDBC 驱动程序连接任何 DBMS。有关经 Sun 测试发现适合构建符合 J2EE 规范的数据库配置的组件列表,请参阅下表。

表 2–2 符合 J2EE 规范的 JDBC 驱动程序

JDBC 供应商 

JDBC 驱动程序类型 

支持的数据库服务器 

i-net Software 

类型 4 

Oracle (R) 8.1.7, 9i, 9.2.0.3+, 10.1.x, 10.2.x

Sybase ASE 12.5.2 

Microsoft SQL Server 2000 4.0 Service Pack 1 

IBM 

类型 2 

IBM DB2 8.1 Service Pack 3+ 

Java DB 

类型 4 

Apache Derby 10.1.3 

PointBase 

类型 4 

PointBase Network Server 5.2 

DataDirect 

类型 4 

Oracle (R) 8.1.7, 9i, 9.2.0.3+, 10.1.x, 10.2.x

Sybase ASE 12.5.2 

Microsoft SQL Server 

IBM DB2 8.1 Service Pack 3+ 

MySQL 

类型 4 

5.x

用于 Oracle 的 Sun Java System JDBC 驱动程序 

类型 4 

Oracle (R) 9.2.0.3, 10G 

用于 DB2 的 Sun Java System JDBC 驱动程序 

类型 4 

IBM DB2 8.1 Service Pack 3+ 

用于 Sybase 的 Sun Java System JDBC 驱动程序 

类型 4 

Sybase ASE 12.5.2 

用于 Microsoft SQL Server 的 Sun Java System JDBC 驱动程序 

类型 4 

Microsoft SQL Server 2000 4.0 Service Pack 1 

Oracle 

类型 4、类型 2 

Oracle (R) 9.2.0.3, 10G 

使用捆绑的 Java DB 数据库

本节介绍了有关使用 Application Server 8.2 捆绑的 Java DB 数据库实现的说明。

启动和停止 Java DB 数据库

Sun Java System Application Server 8.2 引入了两个新的 asadmin 命令,用于启动和停止 Java DB 网络服务器。

Java DB 实用程序脚本

Application Server 8.2 附带的 Java DB 配置还包括几个有用的脚本,可帮助您使用 Java DB。可以在 <appserver_install_dir>/derby/frameworks/NetworkServer/bin 目录中使用以下脚本:

Procedure配置环境以运行 Java DB 实用程序脚本

  1. DERBY_INSTALL 环境变量设置为指向 <appserver_install_dir>/derby 目录。

  2. 取消 CLASSPATH 环境变量的设置。

  3. 还可以有选择地设置以下属性:

    1. DERBY_SERVER_HOST 设置为网络服务器将侦听的主机。

      还可以设置为 0.0.0.0 来启用所有侦听器。

    2. DERBY_SERVER_PORT 设置为网络服务器将侦听的端口号。

另请参见

有关这些实用程序的更多信息,请参见 Derby 工具管理指南

将 Pointbase 中的表导出到 Java DB

本示例介绍了如何使用 Netbeans 5.0 在 Pointbase 中捕获表的 DDL 并在 Java DB 中创建相同的表。也可以通过使用 commander 工具和 unload database 命令来执行此操作:

./startcommander.sh
Do you wish to create a new Database. (Yes (Y) or No (N))? [default: N]: 
Enter product to connect with: (Embedded (E) or Server (S))? [default: E]: e
Enter driver to use? [default: [com.pointbase.jdbc.jdbcUniversalDriver]: 
Enter database URL? [default: [jdbc:pointbase:embedded:sample]: 
Enter Username? [default: PBPUBLIC]: 
Enter Password? [default: PBPUBLIC]: 

PointBase Commander 5.2 ECF build 294 size restricted version EMBEDDED

Interactive SQL command language. SunOS/5.9

(C) Copyright 2004 DataMirror Mobile Solutions, Inc. All rights reserved.

Licensed to: Sun_customer_demo_use
For commercial version contact PointBase at: 
pointbase.com
PHONE: 1-877-238-8798 (US & CANADA)
       1-408-961-1100 (International)
WEBSITE: www.pointbase.com

SQL>unload database sampledb.sql;
SQL> unload database sampledb.sql;
SQL> 13 Row(s) Unloaded. (PBPUBLIC.CUSTOMER_TBL)
SQL> 4 Row(s) Unloaded. (PBPUBLIC.DISCOUNT_CODE_TBL)
SQL> 30 Row(s) Unloaded. (PBPUBLIC.MANUFACTURE_TBL)
SQL> 11 Row(s) Unloaded. (PBPUBLIC.MICRO_MARKETS_TBL)
SQL> 9 Row(s) Unloaded. (PBPUBLIC.OFFICE_TBL)
SQL> 4 Row(s) Unloaded. (PBPUBLIC.OFFICE_TYPE_CODE_TBL)
SQL> 15 Row(s) Unloaded. (PBPUBLIC.ORDER_TBL)
SQL> 6 Row(s) Unloaded. (PBPUBLIC.PRODUCT_CODE_TBL)
SQL> 30 Row(s) Unloaded. (PBPUBLIC.PRODUCT_TBL)
SQL> 10 Row(s) Unloaded. (PBPUBLIC.SALES_REP_DATA_TBL)
SQL> 10 Row(s) Unloaded. (PBPUBLIC.SALES_REP_TBL)
SQL> 52 Row(s) Unloaded. (PBPUBLIC.SALES_TAX_CODE_TBL)
SQL> 12 Table(s) Unloaded.
SQL> quit;

在上述示例中,unload database 命令的执行结果将被写入 sampledb.sql 文件。sampledb.sql 文件中包含创建必要的表和索引所需的所有 DDL。它还包含将数据插回到数据库中的 DML。通过 commander 命令 RUN 使用生成的脚本可以将数据导入到其他 Pointbase 数据库中。以下是有关生成的文件中的 INSERT 语句和相关数据的示例:

INSERT INTO "ADVENTURE"."CATEGORY" (
"CATID", "LOCALE", "NAME", "DESCRIPTION", "IMAGEURI" )
VALUES( ?, ?, ?, ?, ? );
{
'ISLAND              ','en_US','Island Adventures','Experience an island /
paradise in a way fit for your needs.','Island_Adventures.gif'
'JUNGLE              ','en_US','Jungle Adventures','Experience a jungle /
paradise in a way fit for your needs.','Jungle_Adventures.gif'
'MOUNTAIN            ','en_US','Mountain Adventures','Experience an /
elevated paradise with a view.','Mountain_Adventures.gif'
'ORBITAL             ','en_US','Orbital Adventures','Experience a vacuum /
paradise with a beautiful view and where no one can hear you scream.', /
'Space_Adventures.gif'
'WESTERN             ','en_US','Western Adventures','Enjoy the Wild West. /
','Western_Adventures.gif'
'SOUTH_POLE          ','en_US','South Pole Adventures','Experience a /
frozen paradise in a way fit for your needs.','SouthPole_Adventures.gif'
};

可以轻松地编辑通过 commander unload database 命令生成的文件,以使它仅包含 DDL(例如,编写用于处理 insert 语句的程序并不困难)。在简单测试中,我们可以对 Pointbase 样例数据库使用 unload database 命令,然后编辑生成的脚本,可做出如下更改:

接下来,使用简单的 Ant 脚本执行使用 sql 目标的 DDL。最后,对 sun-appserv-samples 数据库重复执行相同的操作,并对生成的 SQL 文件做出如下更改:

要将 Pointbase Java 过程转换为使用 Java DB,需要对 Java 代码和 CREATE PROCEDURE 语句进行某些更改。可在 Derby 参考手册 中查看有关创建 Java DB Java 过程的信息。Java DB 的下一版将支持布尔变量数据类型。

支持的 Web Server

本节列出了 Sun Java System Application Server Enterprise Edition 8.2 所支持的 Web 服务器。

表 2–3 支持的 Web Server

Web 服务器 

版本 

操作系统 

Sun Java System Web Server 

6.0、6.1、7.0 

Solaris SPARC 9、10 

Solaris x86 9、10

Red Hat Enterprise Linux 3 和 4 

Apache Web Server 

1.3+, 1.4, 2.0 

Solaris SPARC 9、10 

Solaris x86 10

Red Hat Enterprise Linux 3 和 4 

Windows Server 2003 

Windows 2000 Advanced Server SP4+ 

Windows Server 2000 SP4+ 

Windows XP Pro SP1+ 

Microsoft IISTM

5.0+ 

Windows Server 2003 

Windows 2000 Advanced Server SP4+ 

Windows Server 2000 SP4+ 

Windows XP Pro SP1+ 

浏览器

本节列出了 Sun Java System Application Server Enterprise Edition 8.2 所支持的浏览器。

表 2–4 支持的 Web 浏览器

浏览器 

版本 

Mozilla 

1.4, 1.5, 1.6, 1.7.x

Netscape Navigator 

4.79, 6.2, 7.0, 8.x

Internet Explorer 

5.5 Service Pack 2, 6.0 

Firefox 

1.4, 1.5 

HADB 要求和支持的平台

除了硬件和软件要求中列出的要求以外,还需验证系统是否满足下面所列的运行 HADB 的要求。


注 –

平台要求中所列的 Application Server 的系统要求与此处所列的 HADB 的系统要求并非完全相同。这不是文档错误。通常会在不同计算机上运行 Application Server 和 HADB 服务器。



注 –

该系统的 Java 组件使用 JDK 1.4.2_02 构建,并且已在 JDK 1.5_09 上进行了测试。


支持的平台

HADB 服务器主机要求


注 –

请确保在存储 HADB 数据和日志文件的设备上禁用写高速缓存。默认情况下,在有些 Solaris 平台上写高速缓存处于启用状态;例如,Solaris x86。


HADB 管理主机要求

HADB 客户机主机要求

升级 Sun Java System Application Server

不支持从任意先前的 Application Server 发行版直接升级。有关从先前版本的 Application Server 升级到当前版本的完整说明,请参见 Application Server Enterprise Edition Upgrade and Migration Guide

其他要求

安装 Sun Java System Application Server 软件之前,必须满足以下附加要求。

Enterprise Edition 8.2 发行版中修复的错误

本节列出了由客户提出并且已经解决的 Sun Java System Application Server Enterprise Edition 8.2 产品问题。

错误号 

说明 

6368745 

AS:无法从 AS7 (Java ES 2) 升级到 AS8.2 (Java ES 5) 

6432308 

将 AS、JES5b7a 和 asupgrade 从 JES2 升级到 JES5 失败 

6378409 

AS 8.2:由于 8.2 中包括 jsf 库,因此无法向下兼容 

6371534 

AS82EE:如果安装路径中包含空格,则 configure-ha-cluster 会在 Windows 上挂起 

6242761 

Init 无法如记录的一样启动节点代理而不生成错误 

6267772 

有关配置 Borland OptimizeIt 的说明不正确 

6273226 

添加文本,解释为何添加 -Xrs jvm 选项以运行作为 windows 服务运行的服务器/NA

6361145 

从 8.1EE 就地升级到 8.2EE 时无法升级 LB 插件 

6362881 

从 8.1UR2 升级到 8.2EE 时,安装程序未提供升级选项 

6325988 

第一个传入的带有 FVD/codeBase 的 RMI-IIOP 请求存在互操作性问题 

6363689 

JES5 ASEE8.2 build03 - 无法停止实例 

6364900 

如果一个 Web 应用程序中包含另一个 Web 应用程序,则在故障转移时会话值会丢失 

6370993 

在群集中将应用程序上下文根目录修改为 "/" 时,会话故障转移将失败

6373729 

由于 ORB 冲突,Appserver 8.1 代码无法与 WebLogic 9.0 进行通信 

6377594 

有关 Weblogic initialcontext 工厂的查找问题 

6381538 

独立客户机出现 NPE 故障 

6406055 

警告:“IOP00110205:(BAD_PARAM) 对象引用来自外部 ORB”org.omg.CORBA。 

6388329 

Access Manager 升级后,Application Server 中出现 JSP 编译错误 

6419659 

transport-guarantee 是 CONFIDENTIAL 时,请求未通过 LB 插件进行正确地重定向 

6390584 

OutOfMemoryError:PermGen 空间 

6401424 

如果 PDF 文件请求字节范围,则 libns-httpd40.so 中的 service_plain_range 将出现 SEGV 

6401704 

需要对 AppServer 8.# 的 WebDAV 支持 

6416478 

jsp testsuite 故障:javax.servlet.jsp.el.ELException 

6438908 

RelativeRedirectAllowed=true 时,标头位置错误 

6456553 

当响应附加 Cookie 时,发生 java.lang.IllegalArgumentException 

6295010 

将不检查稳定池中的连接是否存在与防火墙冲突的空闲超时 

6350435 

在对两个数据库执行 XA 操作期间,Application Server 无法处理数据库故障 

6377830 

当下一用户使用同一连接时,setAutoCommit 仍设置为 false 

6399830 

IT 319:密码别名功能在 domain.xml 中不起作用 

6360040 

SJAS 8.x:AppServer LDAP 领域绑定用户倾向于访问所有组和成员 

6370095 

无法将 acceptor-thread 设置为高于 10。 

6399365 

InvokerServlet 仅在 Enterprise Edition 中不起作用 

6303835 

过多的日志记录:服务器日志中存在误导性的安全性消息 

6349541 

无法将 8.1 EE UR2 - SSL 侦听器绑定到特定 IP 地址…… 

6380040 

需要自动清除日志文件 

6387278 

客户机验证失败或不是 threadsafe(ProgrammaticLogin) 

6407896 

覆盖 getUserPrincipal() 的 HttpServletRequestWrapper 引起 ClassCastException 

6321194 

Round Robin 策略不起作用 

6362269 

安装路径包含空格时,Verifier 不能在 Windows 上正确运行 

6365888 

事务中未列出默认连接器连接池中的连接 

6369554 

向应用程序提供连接前,连接池需要验证此连接 

6370574 

使用“稍后配置”进行 AS 升级后,缺少 /var/opt/SUNWappserver 目录 

6371723 

对于所有版本的 Web 服务器,lbplugin 均会泄漏内存(对于 Apache mod_loadbalancer 会泄漏更多内存) 

6395390 

在故障转移的 http 请求上不会发生 Round Robin。 

6402713 

负载平衡器无法连接到 HTTPS 请求。 

6409992 

证书从 8.1pe 升级到 8.2EE 失败 

6413224 

升级工具跳过升级证书选项 

6422893 

HTTPS 路由不工作 

6424051 

从 8.xPE 升级到 9.1 EE 的过程中,需要使用现有管理员凭证和 MP 

6424053 

由于出现 start-domain 异常,从 8.XEE 升级到 9.1EE 失败 

6430394 

出现 n/w 故障时消息会丢失。 

6444052 

将 JMS 1.5 版的 Generic RA 集成到 AS 8.2 EE 中 

6444308 

AS 8.1 UR2 EE-> 8.2 EE SS:无法启动 8.2 的 domain1;启动了错误的 8.1UR2 的域 

6444368 

在 win2003 并行 GUI 上从 8.0PE UR1 到 9.1 EE 的升级会挂起 

6446558 

手动事务恢复对连接器连接池资源不起作用。 

6447895 

事务恢复对使用嵌入式 RA 的资源不起作用。 

6454007 

更改升级工具所需的输入 

6455396 

从 8.1EE 升级到 9.1EE SBS 后,节点代理和实例无法启动。 

6374533 

由于性能和稳定性的原因,Application Server 应捆绑 XWSS 1.1 而非 XWSS 1.0 

6358422 

Appserver 7.1/8.1 EE:Web 服务器 LB 代理插件应正确支持保持活动的连接 

6382063 

com.sun.enterprise.iiop.IORToSocketInfoImpl 中内存泄漏 

其他 HADB 信息

本节介绍有关 Application Server 8.2 中所包含的 HADB 实现的其他重要信息。

HADB 增强功能

HADB 文件系统支持

如果您要将 HADB 配置为使用以下文件系统之一,则需考虑几个重要事项:

升级高可用性数据库

Procedure升级前任务/数据迁移

开始之前

用户应保留 HADB 历史文件、管理代理配置文件、日志文件、系统信息库以及安装路径以外的所有数据设备。如果尚未这样做,应在升级前完成此操作。要移动管理系统信息库和配置文件,请执行以下操作:

  1. 停止所有旧的管理代理,但继续运行 HADB 节点。

  2. 在每台主机上,将系统信息库目录移到新位置。

  3. 在每台主机上,将 dbconfig 目录复制到新位置。

  4. 在每台主机上,更新 mgt.cfg 文件,并为 dbconfig 和系统信息库目录设置正确的路径。

  5. 使用更新后的 mgt.cfg 文件启动管理代理。

Procedure升级过程

要从 HADB 4.4.x 版升级到 4.4.3 版,请执行以下步骤:

  1. 根据需要执行上述的升级前任务。

  2. 将 HADB 4.4.3 版安装到所有 HADB 主机上(安装到不同于 4.4.x 版路径的其他路径中,例如 /opt/SUNWhadb/4.4.3)。

  3. 将 HADB 4.4.3 版安装到 hadbm 客户机主机上(如果该客户机主机的路径与 HADB 主机的路径不同)。

  4. 停止所有 HADB 主机上运行的全部管理代理。

  5. 使用新版本的软件和旧的配置文件来启动管理代理进程。在余下的步骤中,请使用在新版本的 bin 目录中找到的 hadbm 命令。

  6. 在管理域中注册该软件包(由于默认的软件包名称为 V4.4,因此可能需要使用其他软件包名称,以免与现有的同名软件包冲突):


    hadbm registerpackage --packagepath=/opt/SUNWhadb/4.4.3 V4.4.3
  7. 运行 hadbm listpackages 命令并检查新软件包是否已在该域中注册。

  8. 使用新的 hadbm 4.4.3 版重新启动数据库。如果需要移动设备和历史文件,请运行联机升级,并在同一操作中为设备和历史文件设置新的路径:


    hadbm set packagename=V4.4.3,devicepath=new_devpath,
    historypath=new_histpath
    

    否则,如果设备和历史文件位于安装目录之外,则运行以下命令后,将仅滚动重新启动这些节点:


    hadbm set packagename=V4.4.3 database name
    
  9. 检查数据库是否处于“正在运行”状态(使用 hadbm status 命令)并且能够正常处理客户机事务。

  10. 如果结果有效,随后就可以删除旧安装。在取消注册旧软件包之前,先从 ma 系统信息库中删除对旧软件包的所有引用。否则,hadbm unregisterpackage 将失败,并显示消息“软件包正在使用”。伪重新配置操作(例如 hadbm set connectiontrace=same as previous value)将删除对旧软件包的所有引用。现在,取消注册旧软件包:


    hadbm unregisterpackage [--hosts=host-list] old pacakge name
    
  11. 从文件系统中删除旧安装。

Procedure测试升级

在 Solaris 上,要测试升级是否成功,请检查是否已正确执行升级:

  1. 确保运行的进程使用了新的二进制。在所有 HADB 节点上检查以下路径:


    new path/bin/ma -v
    new path/bin/hadbm -v
  2. 检查数据库是否处于运行状态。使用以下命令应该显示所有 HADB 节点都处于“正在运行”状态。


    new path/bin/hadbm status -n
  3. 确保使用 HADB 的产品已将其指针更改为指向新的 HADB 路径。

  4. 使用 HADB 的产品可以运行自己的升级测试,以检验 HADB 升级是否有效。

    联机升级后,如果新版本无法正常运行,请转回使用以前的 HADB 版本。但是,如果已对管理代理系统信息库进行了更改,则可降级 HADB 本身,但新的管理代理必须继续运行。

特殊的部署和升级信息

本节列出有关 HADB 部署和升级的其他信息。

部署

从 4.4.1 联机升级到 4.4.2

不可能从 4.2 或 4.3 联机升级到 4.4。但是,4.4 支持未来版本的联机升级。要从 4.4.1 升级到 4.4.2,请执行以下步骤:

  1. 将 4.4.2 安装到所有 HADB 主机上(安装到不同于 4.4.1 版路径的其他路径中,例如在 /opt/SUNWhadb/4.4.2-6 中)。

  2. 将新版本安装到 hadbm client 主机上。

  3. 停止 HADB 主机上运行的所有管理代理。

  4. 使用新版本的软件和旧的配置文件来启动管理代理进程。在余下的步骤中,请使用在新版本的 bin 目录中找到的 hadbm 命令。

  5. 在管理域中注册该软件包(由于默认的软件包名称为 V4.4,因此可能需要使用其他软件包名称,以免与现有的同名软件包冲突):


    hadbm registerpackage --packagepath=/opt/SUNWhadb/4.4.2-6 V4.4.2
  6. 使用新版本重新启动数据库(以下命令将滚动重新启动这些节点):


    hadbm set packagename=V4.4.2 database_name
    
  7. 检查数据库是否处于“正在运行”状态(使用 hadbm status 命令)并且能够正常处理客户机事务。

  8. 如果一切运行正常,随后就可以删除旧安装。

    在取消注册旧软件包之前,先从 ma 系统信息库中删除对旧软件包的所有引用。否则,hadbm unregisterpackage 将失败,并显示消息“软件包正在使用”。伪重新配置操作(例如 hadbm set connectiontrace=<same_as_previous_value>)将删除对旧软件包的所有引用。现在,取消注册旧软件包:


    hadbm unregisterpackage [--hosts=<host_list>] <old_package_name>
    

    如 HADB installation instructions 所述,从文件系统中删除旧安装。

已知 SQL 限制

高可用性负载平衡

Application Server 包括 HTTP、IIOP 和 JMS 客户机的负载平衡;HTTP 会话故障转移支持;EJB 群集和故障转移支持;具有高可用性的 EJB 计时器;分布式事务恢复;对持续式应用程序升级的支持;以及一个用于存储 J2EE 应用程序瞬间状态的高可用性数据库。

可用性允许对群集中的 Application Server 实例进行故障转移保护。一个 Application Server 实例出现故障时,其他 Application Server 实例将接管指定给该故障服务器的会话。会话信息存储在 HADB 中。HADB 支持 HTTP 会话的持久性、有状态会话 Bean 和单点登录证书。

兼容性问题

在 Sun Java System Application Server Enterprise Edition 的下一个主要发行版中,将引入以下不兼容问题:

Deploytool

Deploytool 将不再可用。NetBeans IDE 中提供相同的功能。有关更多信息,请参见用于 NetBeans 4.1 的 J2EE 1.4 教程,网址为 http://www.netbeans.org/kb/

验证器

类加载器更改

在当前发行版中,可以在 JVM 系统类路径中找到添加到 domain.xml(应用服务器配置文件)的 classpath-prefixserver-classpathclasspath-suffix 属性中的 JAR 和目录条目。依赖于这种行为的应用程序可能会使用类 java.lang.ClassLoader 中的以下方法,访问 JVM 系统类路径中的类或其他资源:

在下一个主要发行版中,添加到 classpath-prefixserver-classpathclasspath-suffix 中的 JAR 和目录条目在 JVM 系统类路径中将不再可用。如果应用程序使用上述方法之一,Sun 强烈建议使用无需假定资源包含在系统类路径中的等效方法。不依赖于 JVM 系统类路径的等效方法可在 java.lang.ClassLoader 中获得,并应尽量使用这些方法;例如:


示例 2–1 旧代码

java.net.URL url = ClassLoader.getSystemResource
("com/acme/tools/tools.properties");


示例 2–2 建议的更改

java.net.URL url = this.getClass().getClassLoader().getResource
("com/acme/tools/tools.properties");

如果不能更改此代码,可以选择使用下一个发行版中将添加的一个新配置选项,以便设置 JVM 系统类路径。

Web 服务安全性配置

使用 wss-client-config.xmlwss-server-config.xml 文件可以配置 Web 服务的安全性。请注意,这些配置文件的内容和名称不稳定,可能会更改。但等效的功能可以继续使用。

J2EE 支持

Sun Java System Application Server Enterprise Edition 8.2 支持 J2EE 1.4 平台。下表介绍了 J2EE 1.4 平台上可用的增强 API。

表 2–5 J2EE 1.4 平台上可用的 API

API 

说明 

组件 

应用程序和应用程序客户机 

通过 XML 模式实现标准部署描述符 

Enterprise JavaBeans (EJB) 2.1 

计时器服务和 EJB Web 服务端点 

Java Servlet 2.4 

Web 服务端点过滤器 

JavaServer Pages (JSP) 2.0 体系结构 

表达式语言和标记库 

J2EE Connector Architecture 1.5 

内嵌资源适配器和 Java 消息服务 (JMS) 插件化 

Web 服务 

Java Web Services Developer Pack 1.5 

用于构建、测试和部署 XML 应用程序、Web 服务和 Web 应用程序的集成工具包 

用于基于 XML 的远程过程调用的 Java API (JAX-RPC) 1.1 

用于 WSDL 和 Java 技术的映射以及对开发 Web 服务客户机和端点的支持 

WS-I 基本配置文件 1.0 

使用 WSDL 和 SOAP 启用互操作性的元素 

Java 的带附件的 SOAP API (SAAJ) 1.2 

用于基于 SOAP 的消息传送的 API;帮助创建带有附件的 SOAP 消息 

用于 XML 注册表 的 Java API (JAXR) 1.0 

统一且标准的 API,用于访问 XML 注册表,例如用于通用说明、发现和集成(UDDI 和 ebXML)的 XML 注册表 

其他 

J2EE Deployment 1.1 

启用部署 J2EE 组件和应用程序的标准 API 

J2EE Management 1.0 

管理 J2EE 平台的信息模型的定义 

Java Management Extensions (JMX) 1.2 

标准管理 API 

Java 容器授权合同 (JACC) 1.0 

J2EE Application Server 和授权策略提供器之间的安全性合同的定义 

用于 XML 处理的 Java API (JAXP) 1.2 

应用程序可以用来解析和变换 XML 文档的 API;还添加了对处理 XML 模式的支持 

JMS 1.1 

一种消息传送标准,使 J2EE 应用程序组件可以创建、发送、接收和读取消息;还添加了对用于队列和主题的统一 API 的支持 

JavaMail 1.3 

一组建立邮件系统模型的抽象类;还包括对 API 的细微更新 

切换到支持的另一 Java 版本

Sun Java System Application Server 8.2 要求使用 J2SE 5.0 或更高版本作为基础 JVM。如果要从一个 Java 版本切换到另一版本,请执行以下常规步骤。(Windows 和 Unix)

Procedure切换到支持的另一 Java 版本

  1. 下载 Java SDK(而非 JRE)并将其安装到系统中(如果尚未这样做)。

    可以从 http://java.sun.com/j2se 下载 Java SDK。

  2. 完全停止 Application Server。

    您可以使用以下命令行:


    as-install/bin/asadmin stop-domain

    或者,也可以使用管理控制台 GUI:

    1. 单击 "Application Server" 节点。

    2. 单击“停止实例”。

  3. 编辑 install_dir/config/asenv.conf 文件(在 Windows 上为 asenv.bat),将 AS_JAVA 的值更改为指向新的 J2SE 主目录。

  4. 编辑 as-install/samples/common.properties 文件,将以 com.sun.aas.javaRoot... 开头的行更改为引用新的 J2SE 主目录。

  5. 重新启动 Application Server。


    as-install/bin/asadmin start-domain

高性能

Application Server 包含高性能的 EJB 容器、Web 容器和服务,并支持使用 Sun Java System Message Queue 软件进行并发消息传送。

可伸缩性

Application Server 可以通过服务器实例的群集和请求负载平衡来支持水平可伸缩性。它也可以实现业内领先的支持大型多处理器计算机的垂直可伸缩性。可以对集成消息代理进行群集以获得更佳的可伸缩性和可用性。从 HTTP 客户机访问的客户机、基于 RMI/IIOP 的丰富客户机应用程序、Web 服务客户机和 JRM 客户机可被负载平衡到 Application Server 群集。

JavaServer Faces 1.1 支持

Sun Java System Application Server Enterprise Edition 8.2 支持 JavaServer Faces 1.1 技术。JavaServer Faces 技术由一组服务器端 API 组成,这些 API 表示用于管理其状态、事件、处理和输入验证的用户界面组件。这些 API 还定义了页面导航并支持国际化和辅助功能。您可以使用 JSP 自定义标记库添加自定义用户界面组件。

使用 JavaServer Faces 技术进行开发时,开发团队的每个成员可以集中开发整个进程的单个部分,然后由一个简单的编程模型将这些部分连接起来,从而使开发周期更为简单高效。