java - 如何在 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”吗?
解决方案
经过多次令人沮丧的测试,我的一位同事发现了如何正确设置属性:
JDBC → 数据源 → my_datasource → 自定义属性 → 新建
Name: connectionProperties
Value: fixedString=true
Type: java.lang.String
推荐阅读
- java - 这在 android 回收器视图适配器 Intent 中不起作用
- c# - 在 C# 中与父子对象迭代地保存分层(树视图)对象
- c - 为什么经过几次迭代后输出中有 -nan
- javascript - 基于 JavaScript 中的另一个变量值动态访问变量
- javascript - 获取 url("") 中的值
- python - Python ipywidgets - 可以在函数内填充的空小部件
- azure - 我正在尝试在 azure synapse 中创建链接服务(休息),但我没有授权
- java - Android Deprecated Annotation 已弃用,替代品是什么?
- ios - 显示不在 UITabBarController 的 viewControllers 列表中的 ViewController
- redis - RedisJson rejson.so 文件未创建