首页 > 解决方案 > 如何在 Websphere 9 中设置连接属性“fixedString=true”

问题描述

我正在使用 Websphere Applicationserver 9.0.0.8 和 Oracle 12.1.0.2.0 数据库。

在 Websphere Admin GUI 中,我成功地创建了一个 Oracle JDBC 提供程序和一个从该提供程序连接到 Oracle 数据库的数据源(GUI 中的“测试连接”返回“数据源的测试连接操作......成功”。

由于我的数据库和 Web 应用程序的某些特性,我需要在连接上设置 Oracle 特定属性“fixedString=true”。

在 Tomcat 中,我将在 context.xml 中配置它,其工作方式如下(即在 Tomcat 上访问我的应用程序时,我没有收到任何错误):

<Resource
  auth="Container"
  name="jdbc/ORACLE"
  type="javax.sql.DataSource"
  username="..."
  driverClassName="oracle.jdbc.driver.OracleDriver"
  password="..."
  connectionProperties="fixedString=true"
  url="jdbc:oracle:thin:@..."
/>

在 Websphere Admin GUI 中,我尝试通过以下方式设置连接属性:

JDBC -> 数据源 → my_datasource → 自定义属性 → 新建

Name: fixedString
Value: true
Type: java.lang.String

→ 确定 → 保存

但是,如果我通过“测试连接”测试我的连接,我会收到一条警告,并且在日志文件 SystemOut.log 中我可以看到以下几行:

[8/27/19 16:04:10:079 CEST] 0000009a DSConfigHelpe W DSRA8200W:数据源配置:DSRA8020E:警告:数据源类 oracle.jdbc.pool.OracleConnectionPoolDataSource 上不存在属性“fixedString”。

此外,当我在 Websphere 应用程序服务器上启动我的 Web 应用程序时,我会收到典型的错误,这表明我没有正确设置该属性。

有人可以指导我如何在 Websphere 9 / Oracle 环境中正确设置连接属性“fixedString=true”吗?

标签: javaoracleojdbcwebsphere-9

解决方案


经过多次令人沮丧的测试,我的一位同事发现了如何正确设置属性:

JDBC → 数据源 → my_datasource → 自定义属性 → 新建

Name: connectionProperties
Value: fixedString=true
Type: java.lang.String

推荐阅读