Sun Java System Communications Express 6 2005Q4 管理指南

Procedure访问通讯录

在访问通讯录时出现“服务器错误”。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 解析。在以下情况下会出现此错误:

步骤
  1. 您正在使用未通过 JES 安装程序部署的 Web Server 6.1。JDK 1.4.1 通常与 Web Server 6.1 捆绑在一起。

  2. Java Enterprise System 附带的 xalanxerces 共享组件的版本不是最新的。

    解决方法

    • 如果出现此错误的原因是尚未通过 JES 安装程序安装 Web Server,请手动升级 Web 容器的 JDK 版本,它在 server.xml Web Server 配置文件中定义为 java 标记的 java_home 属性。

      或者

      从 Java Enterprise System 重新安装 Web Server,并使安装过程自动升级 JDK。


    注 –

    如果执行了此步骤,则必须重新部署所有其他的 Web 应用程序。作为预防措施,请创建 server.xml 文件的备份。


    • 如果出现此错误的原因是 xalanxerces 共享组件不是最新版本,请从 uwc-deployed-path/WEB-INF/lib 中删除 xalan.jarxerces.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)。如果个人通讯录存储无法建立连接,就会显示此错误。

    解决方法

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

  4. 编辑不正确的配置设置。

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

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

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

    如果没有为公司目录正确配置 LDAP 配置,则可能会发生这种情况。

    解决方法

    检查 WEB-INF/config/corp-dir/db_config.properties 中的 LDAP 配置是否有任何配置错误,纠正它们,然后重新启动 Communications Express。

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

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

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

    uid 是 Communications Express 设置的默认值。

    解决方法

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

    在文件中进行以下更改:

  6. uwc-deployed-path/WEB-INF/config/WEB-INF/config/corp-dir/ db_config.properties 中设置相应的键值。

  7. 在以下位置中设置相应的键,以替换 entry entryID="db:uid" 中的 "uid":

    uwc-deployed-path/WEB-INF/config/WEB-INF/config/corp-dir/ xlate-inetorgperson.xml

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

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

    无法设置 psRoot 的值。

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

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

    由于模式未得到更新,因此无法手动设置 psRoot 属性,即使该属性是部署可水平伸缩的 Addressbook 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