Sun Java System Communications Express 6.3 管理指南

第 5 章 错误诊断

本章列出了在安装和配置 Communications Express 时可能遇到的常见问题的解决方法和错误诊断提示。

本章包含以下部分:

确定并解决问题

Communications Express 提供了一个基于 Web 的集成通信客户端,它依赖于很多没有关联的产品。这可能会导致在使用过程中有时会出现问题,从而需要进行错误诊断。

要找出问题的原因,请在解决问题之前先使用以下常用的错误诊断方法:

Procedure对 Communications Express 进行错误诊断

  1. 确认在配置本产品时是否按照第 2 章,安装和配置 Communications Express中介绍的步骤进行操作。

  2. 启用 Communications Express 日志以查看详细的错误日志并确定故障原因。

    有关启用日志记录的步骤,请参阅日志文件一节。

  3. 在组件日志中检查报告的错误和异常。

    日志文件保存在安装、配置和运行 Communications Express 过程中出现的错误列表。

对常见问题进行错误诊断

本节概括介绍了在安装、配置、启动过程中或访问 Communications Express 用户界面客户端组件时可能遇到的问题。

下面列出了 Communications Express 组件中的一些常见问题及其可能的原因。

配置 Communications Express

即使在重新启动 Web 容器后,也不反映配置更改。

确保已将配置更改应用于相应配置路径中的文件。

完成 Communications Express 配置后,会创建以下目录:

要确保所做更改反映在应用程序中,请对 uwc-deployed-path/WEB-INF/config 进行配置更改。

其他两个目录(如 uwc-deployed-path/staging/WEB-INF/configuwc-basedir/SUNWuwc/WEB-INF/config)是配置过程中配置向导在内部创建和使用的临时存放位置。在应用程序中不会反映对它们所做的更改。

配置任务已失败。

要找出问题,请使用位于 uwc-basedir/SUNWuwc/install/uwc-config _TIME-STAMP.log 处的的日志文件。

其中 TIME-STAMP 是配置的时间戳,格式为 YYYYMMDDhhmmss

配置程序无法正常工作。

要找出问题,请在启用调试选项的情况下调用配置程序,并使用以下调试模式:

-debug:可使用此选项来生成常规调试信息

-debugMessage:可使用此选项来生成错误和警告的日志

-debugWarning:可使用此选项来生成警告消息和错误消息的日志

-debugError:可使用此选项来生成错误消息的日志。默认情况下启用此选项。

Communications Express 应用程序启动失败,并且 Web 容器日志显示异常。

此错误可能由不完整或不正确的配置引起。

解决方法

"chown" 命令在配置过程中已失败。

解决方法

运行配置程序,并在配置程序的“Web 容器用户和组”面板中输入正确的 Web 容器用户和组值。

经过验证后,在启用了 Access Manager 的情况下访问 Communications Express 时,出现消息“进行此操作时发生错误”。

解决方法

确保将 uwc-deployed-path/WEB_INF/config/uwcauth.properties 中的 uwcauth.identity.binddnuwcauth.identity.bindcred 属性设置为安装 Access Manager SDK 时提供的 amAdmin DN 值。请参阅uwcauth.properties 文件中配置 Access Manager 参数一节。

虽然可能会向 uwcauth.identity.binddnuwcauth.indentity.bindcred 提供 Directory Manager 证书以用于 Access Manager SSO,但 Directory Manager 没有获取某些特定于域的属性所必需的 ACL,而 Communications Express 必须依靠这些属性才能正常运行。

不支持修改 Web 容器配置以进行 Access Manager SDK 集成。

配置向导不支持修改 Web 容器配置以进行 Access Manager SDK 集成。

解决方法

手动调用 Access Manager 附带的工具,以修改 Access Manager 的 Web 容器配置。

访问日历

从 Communications Express 访问日历时,出现消息“进行此操作时发生错误”。

此错误由下列其中一个或多个原因引起。

Communications Express 访问日历时,出现消息“日历不可用。无法显示视图。选定的日历已被删除或不存在,或者您无权查看该日历。请选择其他日历”。

在非托管域设置方案中使用 commcli(用于 Schema 2)置备用户时,会出现此错误。显示该错误消息的原因是 commcli@domain 错误地附加到用户 LDAP 条目的 icsCalendar 属性值中。

解决方法

要在非托管域环境中使用 commcli 置备用户,请在 commadmin 命令中使用 -k legacy 选项。对于托管域环境,请使用 -k hosted 选项。如果未指定 -k 选项,则假定为托管域设置。

例如,


示例 5–1 Commcli 置备


./commadmin user create -D admin -w password -X 
siroe .varrius .com -n siroe.varrius.com -p 85 -d 
siroe.varrius.com-F test -L user2 -l user2 
-Wuser2 -S mail,cal -k legacy
ok

或者

如果不能删除已置备用户的对应条目,请手动从用户 LDAP 条目的 icsCalendar、icsSubscribedicsOwned 属性中删除 "@domain" 部分。

从 Communications Express 跨域搜索、邀请、订阅日历或查看其可用性时,出现消息“无法跨域搜索日历”、“无法跨域邀请日历”、“无法跨域订阅日历”或“无法跨域查看日历可用性”。

解决方法

要搜索、邀请、订阅日历或查看其可用性,需要启用跨域搜索。请参阅《Sun Java System Calendar Server 6.3 Administration Guide》中的“启用跨域搜索”一节。

有关默认事件状态过滤器的问题。

“选项日历”窗口中的“默认事件状态过滤器”指定了要在日、周和月日历视图中显示的事件。可用选项为:

如果选择“已接受”选项作为事件状态,则仅在日、周或月日历视图中显示您已接受的那些邀请。但是,将始终在日、周或月日历视图中显示您创建的所有事件。

在上载大于 2 MB 的文件时,Communications Express 显示“服务器错误”。

如果上载的文件大于 2 MB,则在将事件和任务导入日历或将联系人导入通讯录时,将会发生此错误。

默认情况下,Communications Express 允许导入的数据最多为 2 MB。但是,上载文件大小限制是可配置的。

解决方法

配置更大的上载文件大小限制。

要配置更大的上载文件大小限制,请在 web.xml 中配置过滤器 MultipartFormServletFilter 的以下 init 参数:

例如,要将上载文件大小增加到 10 MB,请执行下面的配置步骤:

Procedure增加上载文件大小

  1. uwc-deployed-path/WEB-INF/ 中的现有 web.xml 文件进行备份。

  2. 编辑 uwc-deployed-path/WEB-INF/web.xml 处的文件 web.xml

  3. 按照代码示例 5-2 中粗体显示的部分,配置 web.xml 中的 MultipartFormServletFilter


    <web-app\>
    ..
    ..
      <filter\>
        <filter-name\>MultipartFormServletFilter</filter-name\>
        <filter-class\>com.sun.uwc.calclient.MultipartFormServletFilter</filter-class\>
        ..
        ..
        <init-param\>
          <param-name\>fileSizeHardLimit</param-name\>
          <param-value\>10485760</param-value\>
          <description\>Ten mega bytes</description\>
        </init-param\>
        <init-param\>
          <param-name\>requestSizeLimit</param-name\>
          <param-value\>10485760</param-value\>
          <description\>Ten mega bytes</description\>
        </init-param\>
        <init-param\>
          <param-name\>fileSizeLimit</param-name\>
          <param-value\>10485760</param-value\>
          <description\>Ten mega bytes</description\>
        </init-param\>
        <init-param\>
          <param-name\>failureRedirectURL</param-name\>
          <param-value\>put your url here</param-value\>
          <description\>Request is redirected to this url when 
    uploaded file size crosses
    fileSizeHardLimit value</description\>
        </init-param\>
        ..
        ..
      </filter\>
    ..
    ..
    ..
    ..
    </web-app\>
  4. 重新启动 Web 容器以使更改生效。

访问通讯录

在访问通讯录时出现“服务器错误”。Web Server 日志记录了一个异常“org.apache.xml.utils.WrappedRuntimeException: 输出格式必须有 '{http://xml.apache.org/xslt}content-handler' 属性!”

JDK Web Server 指向的版本低于 JDK 1.4.2 时,Web Server 会抛出此异常。Communications Express 使用最新版本的 xalanxerces 进行 XML/XSL 解析。在以下情况下会出现此错误:

从 Communications Express 访问通讯录时,出现消息“进行此操作时发生错误”。

如果个人通讯录 (Personal Address Book, PAB) 的 LDAP 配置不正确,会发生此错误。访问“通讯录”选项卡时,Communications Express 将连接到个人通讯录存储(即为 PAB 配置的 LDAP)。如果个人通讯录存储无法建立连接,就会显示此错误。

解决方法

  1. 检查 WEB-INF/config/ldappstore/db_config.properties 中的 LDAP 配置。

    编辑此文件中的不正确配置设置。

  2. 重新启动部署 Communications Express 的 Web Server。

    有关更多信息,请参阅db_config.properties 文件中配置公司目录参数一节。

在执行搜索时,公司目录显示嵌入错误。

如果公司目录的 LDAP 配置不正确,可能会发生这种情况。

解决方法

检查 WEB-INF/config/corp-dir/db_config.properties 中的 LDAP 配置是否存在错误。如果有,请更正这些错误,然后重新启动在其中部署 Communications Express 的 Web 容器。

有关更多信息,请参阅db_config.properties 文件中配置公司目录参数一节。

查看公司目录的联系人时在“视图”窗口中显示错误

用于访问公司目录中的联系人条目的关键字不是 uid 时,会显示此错误。

uid 是 Communications Express 设置的默认值。

解决方法

  1. 要访问公司目录中的联系人,应该在 uwc-deployed-path/WEB-INF/config 中的 db_config.propertiesxlate-inetorgperson.xml 配置文件中将该关键字的值设置为所需值。

    在文件中进行以下更改:

    uwc-deployed-path/WEB-INF/config/WEB-INF/config/corp-dir/db_config.properties 中设置适当的关键字值。

    设置适当的关键字替代 uwc-deployed-path/WEB-INF/config/WEB-INF/config/corp-dir/xlate-inetorgperson.xmlentry entryID="db:uid" 中的 uid

  2. 重新启动部署 Communications Express 的 Web Server。

    有关更多信息,请参阅db_config.properties 文件中配置公司目录参数部分。

无法设置 psRoot 的值。

“用户首选项”中的 LDAP 属性 psRoot 用于 Address Book Server 水平可伸缩性。有关更多详细信息,请参见支持 Address Book Server 的水平可伸缩性一节。如果部署不需要 Address Book Server 水平可伸缩性,则可以忽略此错误。

用户首次登录到 Communications Express 时,系统会尝试自动设置 psRoot,但有时可能无法自动设置该值。没有安装 Java Enterprise System Directory Server,或者在安装 Java Enterprise System Directory Server 后没有运行 Java Enterprise System 的 comm_dssetup.pl,通常会出现这种情况。这会导致不更新 LDAP Schema。

由于模式未更新,因此无法手动设置 psRoot 属性,即使部署可水平伸缩的 Address Book Server 需要该属性。

解决方法

要启用 psRoot 属性的设置,请更新 Directory Server 以包括 psRoot 属性。要执行此操作,请将属性 psRoot 包括在 ipUser 对象类的定义中,该定义位于

Directory ServerInstance/config/schema/99user.ldif


注 –

仅在以下情况下才需要更新 Directory Server 以使其包括 psRoot 属性:在当前部署中没有安装 Java Enterprise System Directory Server,或者在安装 Java Enterprise System Directory Server 后没有运行 Java Enterprise System 的 comm_dssetup.pl


访问邮件

在单击“邮件”选项卡时出现登录页。

解决方法

没有正确完成 Communications Express 和 Messaging Server 之间的配置时,会出现此问题。要使 Messaging Server 和 Communications Express 能够无缝地运行,应该启用 Messaging 或 Access Manager 单点登录。在启动 Communications Express 之前,请按照第 1 章,Communications Express 概述中介绍的单点登录配置说明进行操作。

从 Communications Express 访问邮件时,出现消息“进行此操作时发生错误”。

如果没有部署或启用 Communications Express 的邮件组件,但登录到 Communications Express 的用户已将“邮件”设置为默认应用程序,则会出现此错误。

解决方法

管理员需要在用户的 LDAP 条目中将 sunUCDefaultApplication 属性值更改为 "calendar" 或 "addressbook"。

用户即使在注销 Communications Express 后也仍然保持登录状态。

Access Manager(以前称为 Identity Server)和 Communications Express 安装在不同的计算机上,且 Access Manager Remote SDK 与 Communications Express 安装在相同的计算机上时,会出现此问题。

解决方法

在安装了 Communications Express 的计算机上,在 AMConfig.properties 文件中指定以下配置参数:

com.iplanet.am.notification.url=url-to-access-web-container-of-CommunicationsExpress/servlet/com.iplanet.services.comm.server.PLLRequestServlet


注 –

AMConfig.properties 文件位于 IS-SDK-BASEDIR/SUNWam/lib 中。


从“邮件”访问通讯录功能时,可能会遇到以下问题:

从 JES4 升级到 Communications Suite 版本 5 后未显示“邮件”选项卡

检查 Messaging Server 配置实用程序参数 local.webmail.sso.uwcenabled 是否设置为 1。可以使用 Messaging Server 提供的 configutil 工具执行以下命令来检查此参数值:

 <msg-svr-base>/sbin/configutil | grep local.webmail.sso.uwcenabled

使用 Access Manager 进行验证

在输入有效的用户 ID 和密码后无法进行验证

验证可能会由于以下原因而失败:

日志文件

尝试隔离问题或诊断问题时,各种系统组件在运行时生成的日志信息非常有用。

表 5–1 Communications Express 中的各种模块维护的日志记录信息

模块/日志控制文件 

参数 

默认值 

描述 

配置 

   

在位于 /opt/SUNWuwc/install/uwc-config_TIME-STAMP.log 的带时间戳的文件中维护日志。

Communications Express 

uwc-deployed-path/ WEB-INF/config/ uwclogging. properties

uwc.logging.enable

no

启用或禁用日志。 

要启用日志记录,请将 uwc.logging.enable 的属性值更改为 "yes"。例如 uwc.logging.enable=yes

Communications Express 

uwc-deployed-path/WEB-INF/config/uwclogging.properties

uwc.log.file

uwc-deployed-path/logs/uwc.log

例如: 

/var/opt/SUNWuwc/logs/uwc.log

指定日志文件的位置。 

根据需要更改日志文件的位置。 

确保 Web Server 可以写入此文件。 

Communications Express 

uwc-deployed-path/WEB-INF/config/uwclogging.properties

uwc.log.level

INFO

指定应用程序的日志级别。 

将应用程序的日志级别更改为所需的级别。 

可用的日志级别值为: 

WARNING、INFO、FINE、SEVERE 和 FINEST。 

通讯录 

uwc-deployed-path/WEB-INF/config/uwcconfig.properties

log.file

/tmp/trace.log

指定日志文件的位置。 

根据需要更改日志文件的位置。 

确保 Web Server 可以写入此文件。 

通讯录 

uwc-deployed-path/WEB-INF/config/uwcconfig.properties

uwc.log.level

3

指定应用程序的日志级别。 

要对此模块禁用日志,请将该值设置为 0。 

邮件 

   

请参阅《Sun Java System Messaging Server 管理指南》的第 20 章“日志和日志分析”。 

日志轮转

Communications Express 会创建一个大小不受限制的日志文件。可以指定最大文件大小,超过该大小后,会创建新的日志文件。

Procedure启用日志轮转

  1. uwclogging.properties 文件中设置 uwc.log.maxsize (MB) 以指定最大日志文件大小。

    uwc.log.maxsize 的值为整数。Communications Express 会在当前日志文件达到此大小时创建新的日志文件。没有默认值,即表示日志文件大小没有限制。

  2. 指定要在文件系统中保留的最大文件数。

    可在 uwclogging.properties 文件中设置 uwc.log.maxfiles,以指定启用滚动时要保留的最大日志文件数。 默认值为 5。创建的日志文件名称将为 uwc.log.0uwc.log.1uwc.log.2 等。用完所有日志文件后,Communications Express 会从 uwc.log.0 开始覆写先前创建的日志文件。