以下步骤可应用于 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 (第三选项),然后单击 New。
- 完成 Create New JDBC Driver 屏幕,然后单击 Next:
- Database type: 选择 User-defined。
- Implementation class name: 指定可用的值之一(这取决于当前使用的数据库供应商 JDBC 驱动程序)。请查阅 JDBC Driver Implementation Classes 以获得更多详情。
- Name: 输入要分配此 Parasoft JDBC 驱动程序的任何名称。
- 在 Enter database class path information 屏幕上,输入放置 Parasoft JDBC 驱动程序 jar 文件的位置的路径。
- 通过单击 Finish,完成 Summary 屏幕。
修改原始数据源设置
本节解释如何调整您希望虚拟化其数据库连接的应用程序当前正在使用的 WebSphere 数据源配置。
您将修改数据源的 JNDI 名称,以便可以使用相同的 JNDI 名称定义一个单独的新数据源。这将防止与现有数据源的命名冲突。它还使您不必在 WebSphere 中更改应用程序本身(或其部署配置)。如果多个已部署的应用程序使用相同的数据源定义,并且您不想影响这些其他应用程序,请参阅 可选方法:Alternative Method修改应用程序设置,使用不同 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。
- 单击 Finish。
- 在创建的新 Parasoft 数据源中,添加您在应用程序的数据源配置中注意到的相同属性(如 Modifying the Original Data Source Settings中所述),以及 Parasoft JDBC 驱动程序数据源的其他属性。
- 需要定义的特定于 Parasoft JDBC 驱动程序的属性有:
- virtualizeServerUrl
- virtualizeGroupID
例如,对于 PlantsByWebSphere 示例应用程序,您可以使用以下设置:
相关资源
有关特定于正在虚拟化的数据库和 JDBC 驱动程序的属性的信息,请参阅 排除 JDBC 驱动程序问题。
如果属性是自动生成的…
则一些 WebSphere 版本可能会自动内省 Parasoft JDBC 驱动程序并生成可用的属性。如果发生这种情况,则删除出现的描述、日志编写器、loginTimeout 和用户属性。
- 需要定义的特定于 Parasoft JDBC 驱动程序的属性有:
- 将更改保存到 WebSphere 主配置。
- 重启 WebSphere。
- 返回到 Parasoft JDBC 数据源并单击 Test connection.
如果配置正确执行,应该没有错误。预计有 1 或 2 个警告:
之所以显示此警告,是因为 GenericDataStoreHelper 在 Parasoft JDBC 数据源中使用。
可选方法:修改应用程序设置,使用不同 JNDI 名称的 Parasoft JDBC 驱动程序
这些指令可以应用于您不想修改原始数据源的情况下,可能在多个应用程序使用同一个数据源,而您只想为特定的应用程序虚拟化数据库连接的情况下。这些指令适用于企业应用程序,这些应用程序可以通过管理控制台在 WebSphere 中修改其数据源 JNDI 绑定。
打开 Applications> Enterprise Applications (或 WebSphere 其他版本中的 Applications> Application Types> Web-Sphere enterprise applications )。
单击所需应用程序。这个应用程序将被重新配置为使用新的 Parasoft JDBC 驱动程序数据源。
适用于 WebSphere 6.1 及更早版本
如果应用程序使用 CMP 持久性(在 PlantsByWebSphere 示例中使用 CMP 持久性),则单击“为包含 2.x 条目 bean 的模块提供默认数据源映射”,并使用您在 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 名称被解释为子上下文。