以下步骤可应用于 6.0 或更高版本的应用服务器。这些说明适用于利用 WebSphere 数据源数据库连接框架的应用程序,这是最常见的推荐方法。但是,如果应用程序代码绕过 WebSphere 框架并直接连接到数据库(即,它自己实例化和管理 JDBC 驱动程序和连接),使用 用于独立或其他应用程序服务器平台的 JDBC 配置中提供的指令。
前提条件
若要准备配置,请将 Parasoft JDBC 驱动程序 jar 复制到应用服务器上的一个位置。您将需要通过管理控制台向 WebSphere 提供驱动程序的路径。
配置包括:
- Creating a New JDBC Provider for the Parasoft JDBC Driver
- Modifying the Original Data Source Settings
- Creating a New JDBC Data Source with the Parasoft JDBC Driver 或可选方法:修改应用程序设置以使用不同 JNDI 名称的 Parasoft JDBC 驱动程序
为 Parasoft JDBC 驱动程序创建一个新的 JDBC 提供程序
这些步骤的目的是在配置了 Parasoft JDBC 驱动程序的 WebSphere 中创建 JDBC 提供程序定义:
- 登录到 WebSphere 应用程序服务器的集成解决方案控制台。
- 打开 Resources> JDBC,然后点击 JDBC Providers。
- 选择 Node> Server scope(第 3 个选项)并点击 New。
- 完成 Create New JDBC Driver 界面并点击 Next:
- Database type: 选择 User-defined。
- Implementation class name: 指定可用的值之一(这取决于当前使用的数据库供应商 JDBC 驱动程序)。详情请参阅 JDBC 驱动器实现类。
- 名称:输入要分配此 Parasoft JDBC 驱动程序的任何名称。
- 在 Enter database class path information 界面,输入放置 Parasoft JDBC 驱动程序 jar 文件的位置的路径。
- 通过点击 Finish,完成 Summary 界面。
修改原始数据源设置
本节介绍如何调整您希望虚拟化其数据库连接的应用程序当前使用的 WebSphere 数据源配置。
您将修改数据源的 JNDI 名称,以便可以使用相同的 JNDI 名称定义一个单独的新数据源。这将防止与现有数据源的命名冲突。它还使您不必在 WebSphere 中更改应用程序本身(或其部署配置)。如果多个已部署的应用程序使用相同的数据源定义,并且您不想影响这些其他应用程序,请参阅可选方法:修改应用程序设置,使用不同 JNDI 名称的 Parasoft JDBC 驱动程序,解释如何使用不同的/新的数据源配置更改应用程序设置(而不是更改现有的数据源配置)。
若要准备设置调整,请:
- 访问应用程序当前使用的数据源,并留意主配置页面中的设置和配置。稍后在为 Parasoft JDBC 驱动程序配置新数据源时,您将需要属性名和值。
- 点击 Custom Properties。
- 注意其中的任何属性名称和值。稍后在为 Parasoft JDBC 驱动程序配置新数据源时会有需要。
- 注意数据源的 JNDI 名称。JNDI 名称是应用程序用来查找要使用的 JDBC 数据源的名称。您将在新的数据源中为 Parasoft JDBC 驱动程序使用相同的值。
若要执行调整(以 PlantsByWebSphere 示例应用程序 [随 WebSphere 提供] 为例):
将 JNDI 名称更改为不同的值,然后点击 Apply。例如,如果原始值是
jndi/PlantsByWebSphereDataSource
,那么它可能会更改为jndi/PlantsByWebSphereDataSourceOriginal
。JNDI 命名技巧
JNDI 名称通常采用类似于目录的层次结构形式来表示子上下文。例如,如果原始数据源 JNDI 名为
jdbc/zOS_DB2DataSource
,则您应该避免将其重命名为jdbc/zOS_DB2DataSource/Original
(使用 / divider),因为这会导致应用程序中的 JNDI 绑定冲突。相反,使用类似jdbc/zOS_DB2DataSourceOriginal
这样的名称,并且避免您的 JNDI 名称被解释为子上下文。- 注意数据源定义的任何特殊/自定义属性。当为 Parasoft JDBC 驱动程序创建一个新的数据源时,您将需要这些。
使用 Parasoft JDBC 驱动程序创建一个新的 JDBC 数据源
接下来,您将使用 WebSphere 的 New Data Source 向导创建一个新的数据源配置,该配置使用您创建的 JDBC 提供程序。
- 打开 Resources> JDBC> Data Sources。
- 完成 Enter basic data source information 界面:
- Data source name: 输入要分配给此数据源的任何名称。
- JNDI name: 输入为应用程序数据源收集的 JNDI 名称(请参阅Modifying the Original Data Source Settings)。例如,对于 PlantsByWebSphere 示例应用程序,您将使用
jndi/PlantsByWebSphereDataSource
。
- 如下完成 Select JDBC provider 屏幕:
- 选择 Select an existing JDBC provider。
- 选择在Creating a New JDBC Provider for the Parasoft JDBC Driver中创建的提供者。
- 在 Enter database specific properties for the data source 界面,保留默认的数据存储助手类名称。如果使用数据源的应用程序使用 CMP,则还应启用 Use this data source in container managed persistence (CMP)。
- 在 Specify security aliases 界面,保留默认值,然后点击 Next。
- 点击完成。
- 在创建的新 Parasoft 数据源中,添加您在应用程序的数据源配置中注意到的相同属性(如Modifying the Original Data Source Settings中所述),以及 Parasoft JDBC 驱动程序数据源的其他属性。
- 需要定义的特定于 Parasoft JDBC 驱动程序的属性有:
- virtualizeServerUrl
- virtualizeGroupID
例如,对于 PlantsByWebSphere 示例应用程序,您可以使用以下设置:
相关资源
有关特定于正在虚拟化的数据库和 JDBC 驱动程序的属性的信息,请参阅排除 JDBC 驱动程序问题。
如果属性是自动生成的…
一些 WebSphere 版本可能会自动检查 Parasoft JDBC 驱动程序并生成可用的属性。如果发生这种情况,则删除出现的描述、logWriter、loginTimeout 和用户属性。
- 需要定义的特定于 Parasoft JDBC 驱动程序的属性有:
- 将更改保存到 WebSphere 主配置。
- 重启 WebSphere。
- 返回到 Parasoft JDBC 数据源并点击 Test connection。
如果配置正确执行,则不会有错误。会显示一到两个警告:
显示此警告是因为在 Parasoft JDBC 数据源中使用了 GenericDataStoreHelper。
可选方法:修改应用程序设置以使用不同 JNDI 名称的 Parasoft JDBC 驱动程序
该方法可用于不想修改原始数据源的情况,例如多个应用程序使用同一数据源,而您只想为特定应用程序虚拟化数据库连接。该方法适用于可通过管理控制台在 WebSphere 中修改其数据源 JNDI 绑定的企业应用程序。
打开 Applications> Enterprise Applications (或 WebSphere 其他版本中的 Applications> Application Types> Web-Sphere enterprise applications )。
点击所需应用程序。这个应用程序将被重新配置为使用新的 Parasoft JDBC 驱动程序数据源。
适用于 WebSphere 6.1 及更早版本
如果应用程序使用 CMP 持久性(PlantsByWebSphere 示例就是这种情况),请点击 Provide default data source mapping for modules containing 2.x entity beans,然后使用Creating a New JDBC Data Source with the Parasoft JDBC Driver(第 2 步)中提供的 JNDI 名称修改当前目标资源 JNDI 名称,但以
eis/
作为前缀,并以_CMP
作为后缀。例如,如果您使用jdbc/ParasoftJDBCDataSource
配置了 Parasoft JDBC 驱动程序数据源,则将在这里提供eis/jdbc/ParasoftJDBCDataSource_CMP
然后,点击 Map data sources for all 2.x CMP beans,用上一节Creating a New JDBC Data Source with the Parasoft JDBC Driver(步骤 2)中提供的 JNDI 名称修改当前目标资源的 JNDI 名称,但以
eis/
作为前缀并以_CMP
作为后缀。JNDI 命名技巧
JNDI 名称通常采用类似于目录的层次结构形式来表示子上下文。例如,如果原始数据源 JNDI 名为
jdbc/zOS_DB2DataSource
,则您应该避免将其重命名为jdbc/zOS_DB2DataSource/Original
(使用 / divider),因为这会导致应用程序中的 JNDI 绑定冲突。相反,使用类似jdbc/zOS_DB2DataSourceOriginal
这样的名称,并且避免您的 JNDI 名称被解释为子上下文。