親切な DB 管理者が助けに来て、これが実際には Oracle のバグであることを発見しました:
Problem Description:
--------------------
When trying to connect by using the JDBC THIN 11g driver to a database 11g
using Enterprise User Security (EUS) connections throw invalid username/
When usign the JDBC OCI driver the connection can be made.
そして今、あなたの帽子を握ってください:
Available Workarounds:
----------------------
Use OCI.
バグには 11.2.0.4 を使用したことに注意してください
Tested Versions:
----------------
JDBC THIN Driver 11.1.0.6.0 and 11.1.0.7.0
どうやらそれはしばらくの間存在していたようです。よくわかりませんが、データベースに適切に接続できないのに、なぜこのドライバの新しいバージョンを公開しているのですか?これは、シン ドライバーを使用するときに最初に遭遇する問題ではないでしょうか?
しかし、その後、ローカル DB 管理者のヒーローがこれを掘り起こしました:
Set the property oracle.jdbc.thinLogonCapability=o3 for the JDBC connection by passing the option oracle.jdbc.thinLogonCapability=o3 on the command line.
For example:
java -Doracle.jdbc.thinLogonCapability=o3 <Java Class>
There is no loss of security when following this workaround.
Eclipse では、この行を VM 引数に追加しました (実行 -> 実行構成 -> 引数 -> VM 引数 -> -Doracle.jdbc.thinLogonCapability=o3 を追加)。データベース。