编辑 Java 设置

本节介绍为选定配置编辑与 Java 相关的设置所包含的步骤。请参见以下链接:

编辑常规设置

本节介绍如何为选定的配置启用 Java 并设置 Java 主目录变量。

编辑常规 Java 设置

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取可用配置的列表。

  2. 单击 "Java" >“常规”选项卡。

常规 Java 设置的参数

下表介绍了配置常规 Java 设置时的可用参数。

表 23 字段说明 > 常规 Java 设置

字段

描述

启用 Java

为配置启用/禁用 Java 支持。启用 Java 可使服务器生成必需的 JVM。

Java 主目录

Java SE 的位置。指定绝对路径或相对于服务器的 config 目录的路径。此目录必须归服务器运行时所使用的帐户所有。

粘性附加

服务器是否将每个 HTTP 请求处理线程仅附加至 JVM 一次(否则,服务器会在每个请求上附加/拆离 HTTP 请求处理线程)。

编辑路径设置

本节介绍如何为选定的配置添加 JVM 类路径。

编辑路径设置

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取可用配置的列表。

  2. 单击 "Java" >“常规”选项卡。转至“路径设置”部分。

路径设置的参数

下表介绍了修改配置的 JVM 路径设置时的可用参数。

表 24 字段说明 > 路径设置

字段

描述

忽略环境类路径

默认情况下,启用该字段。

类路径前缀

系统类路径的前缀。仅当要覆盖系统类(例如,XML 解析器类),才能在系统类路径前添加前缀。使用该属性时请慎重

服务器类路径

包含服务器类的类路径。只读字段。

类路径后缀

系统类路径的后缀。

本地库路径的前缀

操作系统本地库路径的前缀。

字节码预处理程序类

指定字节码预处理程序类。

运行时类程序设备通常会通过预处理机制来执行,方法是在 JVM 加载分析和监视工具之前,使用类预处理程序在 Java 类中所需的位置插入程序设备代码。为此,应将类预处理程序与类加载器配合使用。

编辑 JVM 设置

要在管理界面中设置 JVM 命令行选项,请执行以下任务:

编辑 JVM 设置

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取列表。

  2. 单击 "Java" >“JVM 设置”选项卡。

编辑 JVM 选项

通过指定此处相应的值可以添加/删除命令行 JVM 选项。单击“添加 JVM 选项”按钮以添加 JVM 选项。

JVM 选项的一些示例如下: -Djava.security.auth.login.config=login.conf, -Djava.util.logging.manager=com.iplanet.ias.server.logging. ServerLogManager and -Xms128m -Xmx256m

添加 JVM 事件探查器

JVM 事件探查器可帮助您诊断和解决 Java 应用程序中的性能问题、内存泄漏、多线程问题和系统资源使用问题,以确保您的应用程序获得最高级别的稳定性和可伸缩性。

您可以使用事件探查器在 Sun Java System Web Server 上执行远程事件探查,以查找服务器端性能方面的瓶颈。

添加新 JVM 事件探查器

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取可用配置的列表。

  2. 单击 "Java" >“JVM 设置”选项卡。

  3. 单击“事件探查器”部分下的“新建”按钮。

  4. 提供以下参数的值:

调试 Java 设置

JVM 可以在调试模式下启动,并可以附加 JPDA(Java Platform Debugger Architecture,Java 平台调试器体系结构)调试器。启用调试时,您可同时启用本地调试和远程调试。

Sun Java System Web Server 的调试功能以 JPDA 软件为基础。要启用调试,请执行以下步骤。

启用 JVM 调试

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取可用配置的列表。

  2. 单击 "Java" >“JVM 设置”选项卡。

  3. 选中“调试 Java 设置”下的“启用调试”复选框。

  4. 如有必要,可通过单击“新建”按钮来提供 JVM 选项。

    默认 JPDA 选项如下:

    -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7.0896

    如果您替换 suspend=y,则 JVM 将以暂停模式启动,并在调试器附加到其之前一直处于暂停状态。如果您希望 JVM 启动后立即启动调试,则该操作非常有用。要指定将 JVM 附加到调试器时要使用的端口,请指定 address=port_number。请查阅 JPDA 文档,以获得调试选项的列表。

编辑资源设置

使用此页面可以配置和管理 JDBC、邮件、JNDI 和其他基于 Java 的资源。

Web 应用程序可以访问多种资源,例如资源管理器、数据源(如 SQL 数据源)、邮件会话和 URL 连接工厂。J2EE 平台通过 Java 命名和目录接口 (Java Naming and Directory Interface, JNDI) 服务将这些资源提供给应用程序。

Sun Java System Web Server 允许您创建和管理以下 Java EE 资源:

JDBC 资源

JDBC 数据源是一种 Java EE 资源,可以通过 Sun Java System Web Server 进行创建和管理。

JDBC API 是用于连接关系数据库系统的 API。JDBC API 包含两部分:

JDBC 数据源对象是用 Java 编程语言实现的数据源。从本质上讲,数据源是一种存储数据的工具。数据源可能像大型公司的综合数据库一样复杂,也可能像仅包含行和列的文件一样简单。JDBC 数据源是一种 Java EE 资源,可以使用 Sun Java System Web Server 进行创建和管理。

JDBC API 使用标准的 SQL 数据库访问接口为 Java 提供了一组类,可以确保对多种关系数据库的统一访问。

事实上,使用 JDBC 可以将 SQL 语句发送到任何数据库管理系统 (database management system, DBMS)。它可以用作关系 DBMS 和对象 DBMS 的接口。

常用 JDBC 驱动程序

下表提供了常用 JDBC 驱动程序及其在添加新 JDBC 资源时需要配置的属性。请参见添加 JDBC 资源


注 – 以下列表仅是所有受支持的 JDBC 驱动程序的一个子集。


表 25 常用和受支持的 JDBC 驱动程序列表

驱动程序

类名

属性

Oracle 驱动程序

oracle.jdbc.pool.OracleDataSource

  • url

  • user

  • password

Oracle SJS JDBC 驱动程序

com.sun.sql.jdbcx.oracle. OracleDataSource

  • serverName

  • portNumber

  • user

  • password

  • SID

DB2 IBM 驱动程序

com.ibm.db2.jdbc.DB2DataSource

  • serverName

  • databaseName

  • portNumber

  • user

  • password

  • driverType

DB2 SJS JDBC 驱动程序

com.sun.sql.jdbcx.db2. DB2DataSource

  • databaseName

  • locationName

  • packageName

  • password

  • portNumber

  • serverName

  • user

MS SQLServer 驱动程序

com.ddtek.jdbcx.sqlserver. SQLServerDataSource

  • databaseName

  • password

  • user

  • serverName

  • portNumber

MS SJS JDBC 驱动程序

com.sun.sql.jdbcx.sqlserver. SQLServerDataSource

  • databaseName

  • password

  • user

  • serverName

  • portNumber

Sybase 驱动程序

com.sybase.jdbcx.SybDataSource

  • databaseName

  • password

  • portNumber

  • serverName

  • user

Sybase SJS JDBC 驱动程序

com.sun.sql.jdbcx.sybase. SybaseDataSource

  • databaseName

  • password

  • user

  • portNumber

  • serverName

MySQL MM 驱动程序

org.gjt.mm.mysql.jdbc2.optional. MysqlDataSource

  • serverName

  • port

  • databaseName

  • user

  • password

Informix 驱动程序

com.informix.jdbcx.IfxDataSource

  • portNumber

  • databaseName

  • IfxIFXHOST(运行 Informix 数据库的计算机的 IP 地址或主机名)

  • serverName

  • user

  • password

Informix SJS JDBC 驱动程序

com.sun.sql.jdbcx.informix. InformixDataSource

  • databaseName

  • informixServer(要连接的 Informix 数据库服务器的名称)

  • password

  • portNumber

  • severName

PostgreSQL 驱动程序

org.postgresql.ds. PGSimpleDataSource

  • serverName

  • databaseName

  • portNumber

  • user

  • password

Apache Derby 驱动程序

org.apache.derby.jdbc. EmbeddedDataSource

  • databaseName

  • user

  • password

   

添加 JDBC 资源

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取列表。

  2. 单击 "Java" >“资源”选项卡。

  3. 在“JDBC 资源”部分下,单击“新建”按钮。

  4. 选择驱动程序提供商。

    为 JNDI 名称指定一个唯一的值并从可用列表中选择 JDBC 驱动程序供应商。

  5. 提供 JDBC 资源属性。

    根据上一步中选择的 JDBC 驱动程序供应商,系统将会自动填充驱动程序的类名称和 JDBC 资源属性。有关建议的某些常用 JDBC 驱动程序的属性列表,请参见常用 JDBC 驱动程序

  6. 查看摘要。

    查看摘要并单击“完成”以创建新的 JDBC 资源。

自定义资源

您可以使用此选项向配置实例注册自定义资源。

添加自定义资源

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取列表。

  2. 单击 "Java" >“资源”选项卡。

  3. 在“自定义资源”部分下,单击“新建”按钮。

自定义资源的属性

下表介绍了用于创建自定义资源的可用属性。

表 26 字段说明 > 自定义资源

字段

描述

JNDI 名称

为自定义资源提供一个唯一的 JNDI 名称。

自定义资源

确定是否在运行时启用 JDBC 资源。

资源类型

该资源的全限定类型。

工厂类

实例化此类资源的类。用户编写的工厂类(用于实现 javax.naming.spi.ObjectFactory)的全限定名称。

描述

提供自定义资源的简短说明。

属性

通过单击“添加属性”按钮可以有选择地提供 CLI 属性。

外部 JNDI 资源

使用该选项可以创建外部 Java 命名和目录接口 (Java Naming and Directory Interface, JNDI) 资源。您需要一个外部 JNDI 资源以访问存储在内部 JNDI 系统信息库中的资源。

添加外部 JNDI 资源

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取列表。

  2. 单击 "Java" >“资源”选项卡。

  3. 在“外部 JNDI 资源”部分下,单击“新建”按钮。

外部 JNDI 资源的属性

下表介绍了添加新外部 JNDI 资源时的可用属性。

表 27 字段说明 > 外部 JNDI 资源

字段

描述

JNDI 名称

提供新的外部 JNDI 资源的唯一名称。

外部 JNDI 资源

确定是否在运行时启用外部 JNDI 资源。

外部 JNDI 名称

外部 JNDI 资源的名称。

资源类型

该资源的全限定类型。

工厂类

实例化此类资源的类。

描述

提供自定义资源的简短说明。

属性

通过单击“添加属性”按钮可以有选择地提供 CLI 属性。

邮件资源

JMS 目标是 Java EE 资源,可以通过 Sun Java System Web Server 进行创建和管理。

许多 Internet 应用程序都需要具有发送电子邮件通知的能力,因此,Java EE 平台提供了 JavaMail API 以及一个使应用程序组件可以发送 Internet 邮件的 JavaMail 服务提供商。

添加新邮件资源

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取列表。

  2. 单击 "Java" >“资源”选项卡。

  3. 在“邮件资源”部分下,单击“新建”按钮。

邮件资源的属性

下表介绍了添加新邮件资源时的可用属性。

表 28 字段说明 > 邮件资源属性

字段

描述

JNDI 名称

为新的邮件资源提供一个唯一的名称。

邮件资源

确定是否在运行时启用该邮件资源。

属性

为所有必需属性(如 mail.hostmail.frommail.user)提供值。

描述

提供新建邮件资源的简短说明。

服务器生命周期

添加新生命周期模块

  1. 选择配置。

    从配置列表中选择相应的配置。要查看配置列表,请单击“配置”选项卡。

  2. 单击 "Java" >“生命周期模块”选项卡。

  3. 单击“新建”按钮。

    提供以下参数的值:


    注意 注意 – 服务器生命周期侦听器类是从主服务器线程同步调用的,因此必须采取额外的预防措施以避免这些侦听器类阻塞服务器。如果合适,这些侦听器类可创建线程,但是必须在关闭/终止阶段时停止这些线程。


删除生命周期模块

  1. 选择配置。

    从配置列表中选择相应的配置。要查看配置列表,请单击“配置”选项卡。

  2. 单击 "Java" >“生命周期模块”选项卡。

  3. 选择生命周期模块,然后单击“删除生命周期模块”按钮。

编辑生命周期模块

Java Server 生命周期模块是用于侦听服务器生命周期事件的 Java 类,以便在发生服务器事件(如启动或停止)时执行特定任务。

服务器支持在 Web 服务器环境中运行短时间或长时间的基于 Java 的任务。这些任务在服务器启动时自动启动,并在服务器关闭时收到通知。因此,现在您可以立即得知诸如实例化 singleton、RMI 服务器等任务。

服务器生命周期的简短说明如下:

编辑验证设置

您可以在此页中添加和删除验证领域。基于 Java EE 的安全模型提供了可识别和验证用户的安全领域。

验证进程通过 Java 领域验证用户。领域包括一组用户、可选的组映射以及可用来对验证请求进行验证的验证逻辑。验证请求通过已配置的领域验证并建立安全性上下文后,便可将该身份应用于所有后续的授权决策。

Java 领域与 auth-db(验证数据库)类似,不同的是, auth-db 由 ACL 引擎(基于您的 ACL 文件的规则)使用,而 Java 领域由 Java Servlet 访问控制规则(在每个 Web 应用程序的 web.xml 中指定的)使用。

服务器实例可能具有多种配置领域。server.xml 文件的 auth-realm 元素中提供了配置信息。

下表定义了 Sun Java System Web Server 7.0 支持的不同领域类型。

表 29 领域类型

领域

描述

File

file 领域是首次安装 Sun Java System Web Server 时的默认领域。该领域的设置非常简便,为开发者提供了很大方便。

file 领域使用存储在文本文件中的用户数据来验证用户。

注意,与文件 auth-db 不同,Java 领域仅支持 keyfile 一种文件格式。此领域支持的 keyfile 格式与文件 auth-db keyfile 兼容(并且两种格式可能涉及相同的磁盘文件)。

LDAP

ldap 领域使您可以使用 LDAP 数据库获取用户安全性信息。LDAP 目录服务是带有唯一标识符的属性的集合。ldap 领域非常适合部署到生产系统中。

要使用 ldap 领域验证用户,必须在 LDAP 目录中创建所需的用户。您可以通过 Administration Server 的“用户和组”选项卡来执行此操作。请参见编辑用户和组。您还可以通过 LDAP 目录产品的用户管理控制台来执行此操作。

PAM

PAM(也称为 Solaris)领域将验证委派给 Solaris PAM 堆栈。与 PAM auth-db 一样,该领域仅在 Solaris 9 和 Solaris 10 上受支持,并且必须以超级用户身份运行服务器实例。

Certificate

certificate 领域支持 SSL 验证。Certificate 领域在 Sun Java System Web Server 的安全性上下文中设置用户身份,并将客户机证书的用户数据填入其中。然后,Java EE 容器将基于证书中每个用户的 DN 处理授权进程。此领域会通过 X.509 证书,以 SSL 或 TLS 客户机验证来验证用户。

Native

native 领域是一个特殊的领域,它为基于 ACL 的核心验证模型和 Java EE/Servlet 验证模型提供了联系桥梁。通过将 Native 领域用于 Java Web 应用程序,可以让 ACL 子系统执行验证(而不是让 Java Web 容器执行),并且使此身份可以用于 Java Web 应用程序。

调用验证操作时,Native 领域会将此验证委派给核心验证子系统。从用户的角度来看,这实际上相当于 LDAP 领域将验证委派给已配置的 LDAP 服务器。当 Native 领域处理组成员关系查询时,它们同时也被委派给核心验证子系统。对于 Java Web 模块和开发者而言,Native 领域与其他任何可用于 Web 模块的 Java 领域没有任何区别。

自定义

定义您自己的验证领域。提供用于实现可插接式 servlet 容器验证领域的类。

下节介绍添加新验证领域所包含的步骤。

添加验证领域

  1. 选择配置。

    选择需要添加新验证领域的配置。单击“配置”选项卡并选择相应的配置。

  2. 单击 "Java" >“验证”选项卡。

  3. 在“Servlet 验证”下单击“新建”。

  4. 提供领域详细信息。

验证领域必需的属性

每个验证领域均需要添加必需的属性。下表中列出了某些必需的属性:

表 30 验证领域必需的属性

验证领域

属性

File

  1. file — 用户数据文件名。(必需)

LDAP

  1. directory — 服务器的 LDAP URL。(必需)。

  2. base-dn — 用户数据位置的基本 DN。(必需)。

  3. search-filter — 用于查找用户的搜索过滤器(可选)。

  4. group-base-dn — 组数据位置的基本 DN(可选)。

  5. group-search-filter — 用于查找用户组成员资格的搜索过滤器(可选)。

  6. group-target-attr — 包含组名称条目的 LDAP 属性名称(可选)。

  7. search-bind-dn — 用于向目录验证以执行搜索过滤器查找的可选 DN(可选)。

  8. search-bind-password — 提供给 search-bind-dn 的 DN 的 LDAP 密码(可选)。

  9. timeout(超时)

PAM

NA

Certificate

  1. assign-groups — 组名称的逗号分隔列表(可选)。

Native

  1. auth-db — 验证数据库的名称(必填)。

编辑 Servlet 容器设置

本节介绍配置 servlet 容器的过程。

编辑 Servlet 容器设置

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取列表。

  2. 单击 "Java" >“Servlet 容器”。

Servlet 容器参数

下表介绍 servlet 容器页面中的可用参数。

表 31 字段说明 > Servlet 容器

字段

描述

日志级别

servlet 容器的日志详尽程度。值可以为 finest(最详尽)、finer、fine、info、warning、failure、config、security 或 catastrophe(最不详尽)。

动态重新加载时间间隔

此参数定义了一个时间段,经过此时间段后,服务器就会检查已部署的 Web 应用程序是否发生了修改。值的范围从 1 至 60,或者如果禁用动态重新加载,则为 -1。

匿名角色

分配给所有主体的默认角色或匿名角色的名称。默认角色为 ANYONE。

Servlet 池大小

实例化每个 SingleThreadedServlet 的 servlet 实例数。值的范围从 1 至 4096。

分发程序最大深度

允许嵌套请求分发的 Servlet 容器的最大深度。值的范围可介于 0 至 214704836470 之间。默认值为 20。

允许交叉上下文

是否允许请求分发程序向其他上下文分发。默认值为 false。

编码 Cookie

servlet 容器是否对 cookie 值进行编码。默认值为 true。

显示异常

在浏览器中显示异常。此选项仅用于开发环境。确保在生产环境中禁用此选项。

解码 Cookie 值中的 '+'。

将 Cookie 值中的加号字符解码为空格。

重复使用会话 ID

为该客户机创建新会话时是否重复使用任何现有会话 ID 编号。默认值为 false。

安全会话 Cookie

此参数控制在什么条件下将 JSESSIONID cookie 标记为安全。仅当使用安全连接 (HTTPS) 收到请求时,才使用 "dynamic"(默认设置)将 Cookie 标记为安全。使用 true 可始终将其标记为安全,使用 false 可从不将其标记为安全。

编辑会话复制设置

本节介绍为选定的配置设置会话复制属性的步骤。

编辑会话复制设置

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取列表。

  2. 单击 "Java" >“会话复制”。

会话复制参数

下表介绍会话复制页面中的可用参数。

表 32 字段说明 > 会话复制

字段

描述

端口

Administration Server 侦听的端口号。默认端口为 8888。

已启用

为选定配置启用会话复制。

加密

复制之前是否加密会话数据。默认值为 false。

密码

群集成员用于相互验证的共享密码。

异步

是否允许会话复制与 HTTP 请求/响应处理异步进行。默认值为 true。

Getatrribute 触发复制

HttpSession.getAttribute 方法的调用是否应导致对会话进行备份。默认值为 true。

副本搜索最大转发数

尝试查找会话备份时应联系的最大实例数。值的范围介于 1 至 214704836470 之间,或为 -1 表示无限制。

启动搜索超时

实例尝试联系其指定的备份实例所花费的最长时间(以秒为单位)。值的范围从 0.001 至 3600。

Cookie 名称

输入跟踪哪个实例拥有会话的 cookie 名称。

编辑 SOAP 验证设置

容器规范的 Java 验证服务提供商接口定义了一种标准的服务提供商接口,通过该接口可将验证机制提供商与容器进行集成。您可以使用管理控制台添加新的 SOAP 验证提供商。

添加 SOAP 验证提供者

  1. 选择配置。

    从配置列表中选择相应的配置。单击“配置”选项卡以获取列表。

  2. 单击 "Java" >“验证”选项卡。

  3. 在“SOAP 验证”部分下面,单击“新建”按钮。

SOAP 验证提供商参数

下表介绍了新建 SOAP 验证提供者页面中的可用参数。

表 33 字段说明 > SOAP 验证提供者

字段

描述

名称

输入新的 SOAP 验证提供商的简短名称。

类名

实现此提供商的类。实现 javax.security.auth.XXX 的类的全限定类名。

请求验证源

该属性定义邮件层的发件人验证(例如用户名/密码)或内容验证(例如应用于请求邮件的数字签名)要求。该值(验证策略)可为 sender 或 content。如果没有指定此参数,则不需要对请求进行源验证。

请求验证收件人

该属性定义在邮件层向邮件发件人验证邮件收件人的要求,例如,通过 XML 加密。值可以为 before-content 或 after-content。

响应验证源

该属性定义邮件层的发件人验证(例如用户名/密码)或内容验证(例如应用于响应邮件的数字签名)要求。该值(验证策略)可为 sender 或 content。如果没有指定此参数,则不需要对响应进行源验证。

响应验证收件人

该属性定义在邮件层向邮件发件人验证响应邮件收件人的要求,例如,通过 XML 加密。

属性

通过单击“添加属性”按钮可以提供其他 CLI 属性。