47.2. 在 IBM WebSphere Application Server 中配置 JDBC 数据源
数据源是一个对象,它允许 Java 数据库连接(DSL)客户端(如应用服务器)与数据库建立连接。应用程序在 Java 命名和目录接口(JNDI)树或本地应用程序上下文中查找数据源,并请求数据库连接来检索数据。您必须为 IBM WebSphere Application Server 配置数据源,以确保服务器和指定数据库之间的正确数据交换。
通常,使用 Red Hat Process Automation Manager 的解决方案在一个事务中管理多个资源。JMS,用于异步作业、事件和计时器,例如:Red Hat Process Automation Manager 需要数据源中的 XA 驱动程序,以确保数据原子性和一致的结果。如果监听器中存在不同模式的事务代码,或来自 jBPM 引擎提供的 hook,则还需要 XA 驱动程序。
除非还没有参与单个事务的多个资源,否则请不要使用非 XA 数据源。
先决条件
- 用于创建数据库连接的 JDBC 供应商是在您要在其上部署数据源的所有服务器上配置的。有关 JDBC 供应商的更多信息,请参阅 IBM 知识库中的 配置 JDBC 供应商。
流程
导航到红帽客户门户网站中的 Software Downloads 页面(需要登录),然后从下拉菜单中选择产品和版本:
- 产品 : 流程自动化管理器
- Version: 7.11
- 下载 Red Hat Process Automation Manager 7.11.0 附加组件。
完成以下步骤以准备您的数据库:
-
将
rhpam-7.11.0-add-ons.zip
提取到临时目录中,例如TEMP_DIR
。 -
Extract
TEMP_DIR/rhpam-7.11.0-migration-tool.zip
. -
将您的当前目录更改为
TEMP_DIR/rhpam-7.11.0-migration-tool/ddl-scripts
目录。此目录包含多个数据库类型的 DDL 脚本。 将数据库类型的 DDL 脚本导入到您要使用的数据库中,例如:
psql jbpm < /ddl-scripts/postgresql/postgresql-jbpm-schema.sql
psql jbpm < /ddl-scripts/postgresql/postgresql-jbpm-schema.sql
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意如果您将 PostgreSQL 或 Oracle 与 Spring Boot 结合使用,您必须导入相应的 Spring Boot DDL 脚本,例如
/ddl-scripts/oracle/oracle-springboot-jbpm-schema.sql
或/ddl-scripts/postgresql/postgresql-springboot-jbpm-schema.sql
。
-
将
-
在 WebSphere Integrated Solutions 控制台中,导航到 Resources
JDBC Data sources。 - 选择应用程序可以使用数据源的范围。您可以选择单元、节点、集群或服务器。
- 点 New 打开 Create a data source 向导。
在 Data source name 字段中输入唯一名称,并在 JNDI name 字段中输入 Java 命名和目录接口(JNDI)名称。应用服务器使用 JNDI 名称将应用的资源引用绑定到此数据源。
不要在不同的资源类型之间分配重复的 JNDI 名称,如数据源与 J2C 连接工厂或 JMS 连接工厂。
不要为同一范围内同一类型的多个资源分配重复的 JNDI 名称。
- 点 Next,然后选择 Select an existing JDBC provider (如果已创建提供程序),或者选择 Create new JDBC provider 来为新提供程序定义详细信息。(在使用这个点前创建 JDBC 提供程序,作为添加数据源的先决条件。)
- 在 Enter database specific properties for the data source 面板上,如果容器管理的持久性(CMP)企业 Bean 必须访问此数据源,点容器管理的持久性(CMP)企业 Bean 中的 Use this data source。然后填写任何其他特定于数据库的属性。
可选:为数据源配置安全别名。您可以为任何身份验证方法选择 None,或者选择以下类型之一:
-
组件管理的验证别名: 指定在组件资源引用 res-auth 值为
Application
时使用的身份验证别名。要定义新别名,请导航到 RelatedappliedJ2EE Connector Architecture (J2C)身份验证数据条目。组件管理的别名代表应用程序中指定的 ID 和密码组合,用于数据源身份验证。因此,您在数据源上设置的别名必须与应用程序代码中的别名相同。 -
映射配置别名: 仅在组件资源引用中没有登录配置时使用。当 res-auth 值设置为
Container
时,登录配置和组件资源引用的关联属性是定义身份验证策略的首选方法。如果您指定了DefaultPrincipalMapping
登录配置,则关联的属性是 JAAS - J2C 身份验证数据条目别名。 -
容器管理的身份验证别名: 仅在组件资源引用中没有登录配置时使用。当 res-auth 值设置为
Container
时,登录配置和组件资源引用的关联属性决定了容器管理的验证策略。
-
组件管理的验证别名: 指定在组件资源引用 res-auth 值为
点 Next,查看数据源的信息,然后点 Finish 保存配置并退出向导。
数据源 面板在表中显示您的新配置,以及为同一范围配置的任何其他数据源。
有关 IBM WebSphere Application Server 数据源的更多信息,请参阅 IBM 知识库中配置 JDBC 供应商和数据源。