Communications Express 提供了一个基于 Web 的集成通信客户端,它依赖于很多没有关联的产品。这可能会导致在使用过程中有时会出现问题,从而需要进行错误诊断。
要找出问题的原因,请在解决问题之前先使用以下常用的错误诊断方法:
确认在配置本产品时是否按照第 2 章,安装和配置 Communications Express中介绍的步骤进行操作。
启用 Communications Express 日志以查看详细的错误日志并确定故障原因。
有关启用日志记录的步骤,请参阅日志文件一节。
日志文件保存在安装、配置和运行 Communications Express 过程中出现的错误列表。
本节概括介绍了在安装、配置、启动过程中或访问 Communications Express 用户界面客户端组件时可能遇到的问题。
下面列出了 Communications Express 组件中的一些常见问题及其可能的原因。
即使在重新启动 Web 容器后,也不反映配置更改。
确保已将配置更改应用于相应配置路径中的文件。
完成 Communications Express 配置后,会创建以下目录:
uwc-deployed-path/staging/WEB-INF/config
uwc-basedir/SUNWuwc/WEB-INF/config
要确保所做更改反映在应用程序中,请对 uwc-deployed-path/WEB-INF/config 进行配置更改。
其他两个目录(如 uwc-deployed-path/staging/WEB-INF/config 和 uwc-basedir/SUNWuwc/WEB-INF/config)是配置过程中配置向导在内部创建和使用的临时存放位置。在应用程序中不会反映对它们所做的更改。
配置任务已失败。
要找出问题,请使用位于 uwc-basedir/SUNWuwc/install/uwc-config _TIME-STAMP.log 处的的日志文件。
其中 TIME-STAMP 是配置的时间戳,格式为 YYYYMMDDhhmmss。
配置程序无法正常工作。
要找出问题,请在启用调试选项的情况下调用配置程序,并使用以下调试模式:
-debug:可使用此选项来生成常规调试信息
-debugMessage:可使用此选项来生成错误和警告的日志
-debugWarning:可使用此选项来生成警告消息和错误消息的日志
-debugError:可使用此选项来生成错误消息的日志。默认情况下启用此选项。
Communications Express 应用程序启动失败,并且 Web 容器日志显示异常。
此错误可能由不完整或不正确的配置引起。
解决方法
确保您已完成了所有的后续配置步骤。有关后续配置步骤,请参阅第 1 章,Communications Express 概述中的后续配置说明。
"chown" 命令在配置过程中已失败。
解决方法
运行配置程序,并在配置程序的“Web 容器用户和组”面板中输入正确的 Web 容器用户和组值。
经过验证后,在启用了 Access Manager 的情况下访问 Communications Express 时,出现消息“进行此操作时发生错误”。
解决方法
确保将 uwc-deployed-path/WEB_INF/config/uwcauth.properties 中的 uwcauth.identity.binddn 和 uwcauth.identity.bindcred 属性设置为安装 Access Manager SDK 时提供的 amAdmin DN 值。请参阅在 uwcauth.properties 文件中配置 Access Manager 参数一节。
虽然可能会向 uwcauth.identity.binddn 和 uwcauth.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 访问日历时,出现消息“进行此操作时发生错误”。
此错误由下列其中一个或多个原因引起。
uwc-deployed-path/WEB_INF/config/uwcconfig.properties 中的 Calendar Server 配置不正确。
Communications Express 的 uwcconfig.properties 文件中的 Calendar Server calmaster 信息与 Calendar Server 的 cal deploy path/bin/config/ics.conf 文件中的值不同。
没有同时为托管域启用 Communications Express 和 Calendar Server。
确保为虚拟域同时启用或禁用 Communications Express 和 Calendar Server。有关为虚拟域启用 Communications Express 和 Calendar Server 的详细信息,请参阅在日历中启用托管域支持。
没有启动 Calendar Server。
没有为此用户启用日历服务。
从 Communications Express 访问日历时,出现消息“日历不可用。无法显示视图。选定的日历已被删除或不存在,或者您无权查看该日历。请选择其他日历”。
在非托管域设置方案中使用 commcli(用于 Schema 2)置备用户时,会出现此错误。显示该错误消息的原因是 commcli 将 @domain 错误地附加到用户 LDAP 条目的 icsCalendar 属性值中。
解决方法
要在非托管域环境中使用 commcli 置备用户,请在 commadmin 命令中使用 -k legacy 选项。对于托管域环境,请使用 -k hosted 选项。如果未指定 -k 选项,则假定为托管域设置。
例如,
./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、icsSubscribed 和 icsOwned 属性中删除 "@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 参数:
fileSizeHardLimit 指定上载文件内容的最大字节大小,超过此大小会出现错误并停止请求处理。例如,如果用户在一个请求中上载三个文件,其中一个或多个文件超过了 fileSizeHardLimit 限制,则将放弃所有文件,并且过滤器将发出有错误情况的信号。
requestSizeLimit 指定整个传入请求的最大字节大小。如果请求违反了此限制,则会停止请求处理,并放弃输入流。然后,过滤器将处理此违反问题,其方式与处理违反内容大小固定限制时一样。此限制的默认值为 4 MB。
fileSizeLimit 指定上载文件内容的最大字节大小。例如,如果用户在一个请求中上载三个文件,其中每个文件都不能大于此限制。请注意,此限制是软限制,这意味着如果上载内容超过此限制,将会放弃该内容,但请求仍将正常进行,从而让应用程序处理大小违规问题。软限制的默认值为 1 MB。
failureRedirectURL。(可选)。指定发生错误时用于转发请求的重定向 URL。可以使用 failureRedirectURL 的 init 参数配置重定向 URL。如果未指定重定向 URL,则过滤器将抛出异常以立即结束请求。此限制的默认值为 2 MB。
例如,要将上载文件大小增加到 10 MB,请执行下面的配置步骤:
对 uwc-deployed-path/WEB-INF/ 中的现有 web.xml 文件进行备份。
编辑 uwc-deployed-path/WEB-INF/web.xml 处的文件 web.xml。
按照代码示例 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\> |
重新启动 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 使用最新版本的 xalan 和 xerces 进行 XML/XSL 解析。在以下情况下会出现此错误:
您正在使用未通过 JES 安装程序部署的 Web Server 6.1。JDK 1.4.1 通常与 Web Server 6.1 捆绑在一起。
Java Enterprise System 附带的 xalan 和 xerces 共享组件的版本不是最新的。
解决方法
如果出现此错误的原因是没有通过 JES 安装程序安装 Web Server,请手动升级 Web 容器的 JDK 版本,它在 server.xml Web Server 配置文件中定义为 java 标记的 java_home 属性。
或者
从 Java Enterprise System 重新安装 Web Server,并让安装过程自动升级 JDK。
如果执行了此步骤,则必须重新部署所有其他的 Web 应用程序。为了防止出现意外,应备份 server.xml 文件。
如果出现此错误的原因是 xalan 和 xerces 共享组件不是最新版本,请从 uwc-deployed-path/WEB-INF/lib 中删除 xalan.jar 和 xerces.jar 文件的符号链接。
例如:
# cd /var/opt/SUNWuwc/WEB-INF/lib
# rm xalan.jar xercesImpl.jar
然后重新启动 Web Server。
从 Communications Express 访问通讯录时,出现消息“进行此操作时发生错误”。
如果个人通讯录 (Personal Address Book, PAB) 的 LDAP 配置不正确,会发生此错误。访问“通讯录”选项卡时,Communications Express 将连接到个人通讯录存储(即为 PAB 配置的 LDAP)。如果个人通讯录存储无法建立连接,就会显示此错误。
解决方法
检查 WEB-INF/config/ldappstore/db_config.properties 中的 LDAP 配置。
编辑此文件中的不正确配置设置。
重新启动部署 Communications Express 的 Web Server。
有关更多信息,请参阅在 db_config.properties 文件中配置公司目录参数一节。
在执行搜索时,公司目录显示嵌入错误。
解决方法
检查 WEB-INF/config/corp-dir/db_config.properties 中的 LDAP 配置是否存在错误。如果有,请更正这些错误,然后重新启动在其中部署 Communications Express 的 Web 容器。
有关更多信息,请参阅在 db_config.properties 文件中配置公司目录参数一节。
查看公司目录的联系人时在“视图”窗口中显示错误
用于访问公司目录中的联系人条目的关键字不是 uid 时,会显示此错误。
uid 是 Communications Express 设置的默认值。
解决方法
要访问公司目录中的联系人,应该在 uwc-deployed-path/WEB-INF/config 中的 db_config.properties 和 xlate-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.xml 的 entry entryID="db:uid" 中的 uid。
重新启动部署 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 中。
从“邮件”访问通讯录功能时,可能会遇到以下问题:
不能从“邮件”选项卡页来访问“日历”、“通讯录”和“选项”页。
在撰写窗口中单击“收件人”或从通讯录中单击“发送邮件”时,会显示 JavaScript 错误。
没有保存邮件选项。
从 JES4 升级到 Communications Suite 版本 5 后未显示“邮件”选项卡
检查 Messaging Server 配置实用程序参数 local.webmail.sso.uwcenabled 是否设置为 1。可以使用 Messaging Server 提供的 configutil 工具执行以下命令来检查此参数值:
<msg-svr-base>/sbin/configutil | grep local.webmail.sso.uwcenabled
在输入有效的用户 ID 和密码后无法进行验证。
验证可能会由于以下原因而失败:
没有使用 commcli 或 Access Manager(以前称为 Identity Server)置备用户,而使用了 Sun Java System LDAP Schema v.2。
解决方法
如果使用 Sun Java System LDAP Schema v.2,应确保已使用 commcli 实用程序或通过 Access Manager UI 控制台添加了用户。
试图登录的用户在组织中不存在。
系统在没有格式为 user@domain 的域信息的情况下使用 uwc-deployed-path/WEB_INF/config/uwcauth.properties 中定义的 defaultdomain 属性验证用户 ID。如果用户在相应域的组织树中不存在,验证就会失败。
uwc-deployed-path/WEB_INF/config/uwcauth.properties 中的管理员证书不正确。
有关详细信息,请参阅在 uwcauth.properties 文件中配置 Access Manager 参数。