适用于 Microsoft Windows 的 Sun Java System Message Queue 3.7 UR1 发行说明

第 1 章 适用于 Microsoft Windows 的 Sun Java System Message Queue 3.7 UR1 发行说明

本发行说明包含了发行 Sun Java™ System Message Queue 3.7 UR1 ("Message Queue") 时可用的重要信息。本说明主要介绍新增功能和增强功能、已知问题和限制以及其他信息。在使用 Message Queue 之前,请先阅读本文档。

本发行说明的最新版本位于 Sun 文档 Web 站点:http://docs.sun.com。请在安装和设置软件前仔细查阅此 Web 站点,完成安装和设置后也要定期查看最新的发行说明和产品文档。

本发行说明包含以下部分:

本文档引用了第三方 URL,并提供了其他相关信息。

Sun 对本文档中提到的第三方 Web 站点的可用性不承担任何责任。对于此类站点或资源中的(或通过它们获得的)任何内容、广告、产品或其他材料,Sun 并不表示认可,也不承担任何责任。对于因使用或依靠此类站点或资源中的(或通过它们获得的)任何内容、产品或服务而造成的或连带产生的实际或名义损坏或损失,Sun 概不负责,也不承担任何责任。

关于 Message Queue 3.7 UR1

Sun Java System Message Queue 是一种功能全面的消息服务,它可以提供符合 Java Messaging Specification (JMS) 1.1 的可靠、异步的消息传送功能。此外,Message Queue 还提供了 JMS 规范之外的许多功能,以满足大型企业部署的需要。

Message Queue 3.7 UR1 是 Message Queue 3.6 的维护版本,它包含了一些错误修复和少量的增强功能。本部分包含以下信息:

此发行版的新增功能

以下各部分将介绍 Message Queue 3.7 UR1 的新增功能:

将 Platform 功能和 Enterprise 功能合并在一个版本中

为了有效地简化产品的交付过程,我们已经将 Sun Java Message Queue 的 Platform Edition 和 Enterprise Edition 进行了合并。从 Message Queue 3.7 UR1 开始,只提供一个版本。该策略可有效排除独立发行版本的功能限制。希望此举能简化您对本产品的体验。

合并版本还可以让 Message Queue 更好地与 Solaris Enterprise System 配合使用,它提供了一种持久而广泛的权限,您无需支持、维护或进行任何功能补充,即可使用 Enterprise Edition 的功能。与早期发行版相同,我们提供了用于支持和维护服务的多种授权选项。Message Queue 仍将与 Java Enterprise System 和 Application Platform Suite 打包在一起。请查看在线商店(网址为 http://www.sun.com)或与销售代表联系,以找到最适合您的选项。下表描述了新单一版本的 Message Queue 的升级途径。

表 1–1 Message Queue 3.7 UR1 的升级途径

先前发行的版本 

升级途径 

注释 

Platform Edition 

Sun Java System Message Queue 3.7 UR1 

现在这些用户可以使用所有功能。如果未购买许可证,则不提供任何支持选项。 

Enterprise Edition 

Sun Java System Message Queue 3.7 UR1 

功能未发生任何更改。提供了一定范围的授权和支持选项。 

Platform Edition 支持合同 

升级到 Enterprise Edition 支持合同 

将继续续订先前发行的 Platform Edition 的现有支持合同。不会为先前发行的 Platform Edition 发布新的 Platform Edition 合同。 

Enterprise Edition 支持合同 

无更改。 

继续续订现有合同。将会发布新的合同。 

下表描述了各种 Message Queue 产品交付来源的更改。

表 1–2 Message Queue 产品交付来源的更改

产品 

以前的交付来源 

新的交付来源 

注释 

Message Queue 

不适用 

Sun 下载中心产品页面 

独立下载。仅支持社区。不提供支持合同。 

Message Queue Platform Edition 

Sun 下载中心(通过 Message Queue 产品页面) 

不再提供 

页面将全部指向单一版本的 Message Queue 

Message Queue Enterprise Edition 试用版(通过 Platform Edition) 

Sun 下载中心(通过 Message Queue 产品页面) 

不再需要试用版许可证 

不再需要 

Message Queue Enterprise Edition 90 天试用版(通过 Java Enterprise System 下载或 DVD) 

Java Enterprise System 下载中心,早于版本 3 GA(2006 年 3 月) 

Solaris Enterprise System 下载中心 

Solaris Enterprise System 许可证。如果没有产品许可证,则不提供任何支持选项。 

Message Queue Enterprise Edition(通过 SunStore、DVD、单个许可证、Java Enterprise System 许可证、Suite 许可证以及通过 Java Enterprise System 提供) 

Java Enterprise System 或 Suite 下载中心、介质 

Solaris Enterprise System 或 Suite 下载中心、介质提供 

无更改。 

对 C-API 和 C 客户端运行时环境的接口更改

持久性存储库格式更改

为了提高性能,对 Message Queue 的持久性存储库格式进行了两处更改。一处是对文件存储库的更改,另一处是对 JDBC 存储库的更改。

由于这些更改会影响存储库的兼容性,因此存储库版本已由 350 更改为 370。Message Queue 3.7 UR1 支持将持久性存储库从早期的 200 和 350 版本自动转换为 370 版本(同时适用于 JDBC 存储库和基于文件的存储库)。imqbrokerd 首次启动时,如果实用程序检测到早期版本的存储库,则会将其迁移为新的格式,并保留早期的存储库。

如果需要回滚此升级,请首先卸载 Message Queue 3.7 UR1,然后重新安装以前运行的版本。由于未对存储库的早期副本进行任何更改,因此代理可以运行存储库的早期副本。

硬件和软件要求

Sun Java Enterprise System 安装指南中提供了 Message Queue 的硬件和软件要求。

此发行版中修复的错误

本部分介绍 Message Queue 3.7 UR1 中修复的错误。

表 1–3 在 Message Queue 3.7 UR1 中修复的错误

错误号 

描述 

6193884 

Message Queue 在非 C 语言环境下向系统日志输出垃圾消息。 

6251450 

在群集关闭过程中,connectList 抛出 ConcurrentModificationException

6252763 

java.nio.HeapByteBuffer.putLong/Int 中抛出 java.nio.BufferOverflowException

6260076 

使用 Oracle 存储库,在代理启动后的第一条消息发布完后,消息发布速度变得很慢。 

6264003 

队列浏览器显示未提交的消息。 

6260814 

JMSXUserID 进行处理的选择器始终得到 false 值。

6271876 

关闭具有未使用消息的使用方时,连接流控制无法正常工作。 

6284769 

QueueBrowser 泄漏内存,即使为每个枚举创建一个新浏览器然后关闭该浏览器也是如此。 

6294767 

Message Queue 代理需要在其打开的网络套接字上设置 SO_REUSEADDR

6304043 

对于共享的非长期订阅,代理并不验证 clientID 是否为非 Null。

6307056 

Txn 日志成为性能瓶颈。 

6320138 

Message Queue C API 无法通过回复标头确定队列的名称。 

6320325 

即使在 Solaris OS 上同时安装了 JDK 1.4 和 JDK 1.5,代理有时也会选取前者。 

6321117 

多代理群集初始化时抛出 java.lang.NullPointerException

6330053 

通过订户提交事务时,JMS 客户端抛出 java.lang.NoClassDefFoundError

6340250 

支持 C-API 中的 MESSAGE 类型。

6351293 

添加对 Derby 数据库的支持。 

6381693 

对于重新传送到远程使用方(在该使用方的代理重新启动后)的消息,JMSRedelivered 标志被设置为 false。

6388049 

无法清除不完整的 XA 事务。 

6403968 

添加基于使用方的流控制协议,以实现多个接收者的负载平衡。 

6403958 

当停用消息队列尝试删除最早的非持久性消息时引发代理异常。 

6406862 

代理错误“监视目的地错误 mq.metrics.destination.queue.Name”。

6415068 

在 AS 8.1 UR2(JMS Message Queue 的通用资源适配器)中执行事务恢复时失败。 

6421781 

支持使用以下语法连接到代理 

—b mqtcp://hostName:portNumber/serviceName

6423696 

Session.rollback 实际上不会在出现 COMMIT REPLY 错误之后回滚已使用的消息。

6314103 

如果目录名称中包含空格,则无法安装 Message Queue。. 

6314088 

6392963 

如果目录名称的长度超过 6 个字符,则无法安装 Message Queue。例如,C:\Software\Sun

重要信息

本部分介绍核心产品文档中未包括的最新信息。本部分包含以下主题:

安装说明

有关在 Solaris、Linux 和 Windows 平台上将 Message Queue 作为独立产品进行安装的预安装说明、升级步骤以及其他所有信息,请参阅《Sun Java System Message Queue 3.7 UR1 Installation Guide》。

有关在 Solaris、Linux、HPUX 和 Windows 操作系统上安装 Message Queue 产品(与 Java Enterprise System 捆绑在一起)的预安装说明和其他所有信息,请参阅 Sun Java Enterprise System 安装指南

有关在 Solaris、Linux、HPUX 和 Windows 操作系统上升级到 Message Queue(作为 Java Enterprise System 的一部分)的升级和迁移说明的信息,请参阅 Sun Java Enterprise System 升级和迁移指南

兼容性问题

本部分包含 Message Queue 3.7 UR1 中的兼容性问题。

接口稳定性

Message Queue 使用的许多接口可能会随着时间的变化而发生更改。《Sun Java System Message Queue 3.7 UR1 Administration Guide》中的附录 B “Stability of Message Queue Interfaces”针对接口的稳定性对其进行了分类。接口越稳定,在产品的后续版本中对其进行更改的可能性就越小。

与 Message Queue 的下一个主要发行版相关的问题

在 Message Queue 下一个主要发行版中进行的某些更改可能会导致您的客户端与该发行版不兼容。现在提供此信息是为了让您针对这些更改做好准备。

Message Queue 3.7 UR1 的文档更新

以下部分介绍对 Message Queue 文档的更新和更改(而非较小的更正和增补)。

安装指南

Sun Java System Message Queue 3.7 UR1 Installation Guide》(Message Queue 独立版本的安装信息文档)已更新,以反映特定于平台的信息。

适用于 C 客户端的开发者指南

Sun Java System Message Queue 3.7 UR1 Developer’s Guide for C Clients》已更新,以反映新增的 MQGetDestinationName 函数、MQ_Message 消息类型和 MQ_UPDATE_RELEASE_PROPERTYY 连接属性。

适用于 Java 客户端的开发者指南

Sun Java System Message Queue 3.7 UR1 Developer’s Guide for Java Clients》已更新,包含了有关设置安全客户端、以及客户端应如何处理自动重新连接期间所发生异常的信息。

管理指南

《Sun Java System Message Queue 3.7 UR1 Administration Guide》已更新,提供了有关代理数据库表以及将代理配置为使用固定端口的信息。

已知问题和限制

本部分包含了 Message Queue 3.7 UR1 中已知问题的列表。涵盖以下产品领域:

有关当前错误、错误的状态和解决方法的列表,Java Developer ConnectionnSM 成员应参见 Java Developer Connection Web 站点上的 "Bug Parade" 页,其网址为 http://bugs.sun.com/bugdatabase/index.jsp。在报告新的错误之前请先查看该页。虽然未列出所有的 Message Queue 错误,但如果您想了解是否已报告了某个问题,可以将该页作为一个很好的起点。


注 –

可以免费获得 Java Developer Connection 成员资格,但需要进行注册。有关如何成为 Java Developer Connection 成员的详细信息,请访问 Sun 的 "For Developers" Web 页。


要报告新错误或提交功能请求,请向 imq-feedback@sun.com 发送电子邮件。

一般问题

LDAP 用户系统信息库属性

在 Message Queue 3.7 UR1 中,config.properties 文件的注释部分提供了将 LDAP 服务器作为用户系统信息库的示例代理配置。而 default.properties 文件中的 LDAP 用户系统信息库示例已被注释掉。

如果您以前使用示例 LDAP 用户系统信息库属性(在 default.properties 文件中指定)中的任何属性值,则当您升级到 Message Queue 3.7 UR1 时,如果 JMS 应用程序客户端尝试创建 JMS 连接,则会收到一个安全异常。

当 JMS 客户端尝试连接到 Message Queue 3.7 UR1 代理时,代理日志中会记录一个错误,且 JMS 客户端会收到以下异常:

SecurityException.
20/Aug/2004:11:16:41 PDT] ERROR [B4064]: Ldap repository ldap property
.uidattr not defined for authentication type 
basic:com.sun.messaging.jmq.auth.LoginException: 
[B4064]: Ldap repository ldap property .uidattr not defined 
for authentication type basic

解决方法:请按照《Sun Java System Message Queue 3.7 UR1 Administration Guide》中的第 7  章 “Managing Security”中的说明来设置代理属性 imq.user_repository.ldap.uidattr

代理群集

以下各项内容与代理群集的使用相关。

管理/配置

以下是有关管理和配置 Message Queue 的问题。

代理问题

以下问题将影响 Message Queue 代理。

文档

Message Queue 3.7 UR1 不包含独立产品。对于此发行版,必须使用 Java Enterprise System 安装程序来安装 Message Queue。请参阅 Sun Java System 安装指南以获取说明信息。

安装问题

可再分发的文件

Sun Java System Message Queue 3.7 UR1 包含下面一组文件,您可以使用这些文件,并以二进制格式分发它们:

jms.jar

libmqcrt.so (UNIX)

imq.jar

libmqcrt.so (HPUX)

imqxm.jar

mqcrt1.dll (Windows)

fscontext.jar

 

此外,还可以再分发 LICENSECOPYRIGHT 文件。

为残疾人士提供的辅助功能

欲获得自本介质发行以来所发布的辅助功能,请联系 Sun 以获取有关 "Section 508" 法规符合性的产品评估文档,以便确定哪些版本最适合部署辅助功能解决方案。可通过以下网址获取应用程序的更新版本:

http://sun.com/software/javaenterprisesystem/get.html

有关 Sun 在辅助功能方面所做出的努力,请访问 http://sun.com/access

如何报告问题和提供反馈

如果您在使用 Sun Java System Message Queue 期间遇到问题,请通过以下方式与 Sun 客户支持部门联系:

为了更好地帮助您解决问题,请在联系支持部门时提供以下信息:

Message Queue 软件论坛

以下位置提供了一个 Sun Java System Message Queue 论坛:

http://swforum.sun.com/jive/forum.jspa?forumID=24

我们欢迎您的参与。

Java 技术论坛

Java 技术论坛中有一个您可能会感兴趣的 JMS 论坛:

http://forum.java.sun.com

Sun 欢迎您提出意见

Sun 致力于提高其文档的质量,并十分乐意收到您的意见和建议。

要共享您的意见,请访问 http://docs.sun.com,然后单击“发送意见”(Send Comments)。在联机表单中,请提供文档标题和文件号码。文件号码包含七位或九位数字,您可以在书的标题页或在文档顶部找到该号码。例如,本书的标题为《适用于 Microsoft Windows 的 Sun Java System Message Queue 3.7 UR1 发行说明》,文件号码为 820-1811。

提出意见时,您还需要在表格中输入文档的英文文件号码和标题。本文档的英文文件号码是 819-5693,文档标题为《Sun Java System Message Queue 3.7 UR1 Release Notes for Microsoft Windows》。

其他 Sun 资源

从以下 Internet 位置可以找到有用的 Message Queue 信息: