oracle11g - ORA-28040 : No matching authentication protocol : Oracle 12c Upgrade

标签 oracle11g struts-1 oracle12c ojdbc java-5

我们已将 Oracle 数据库从 11g 迁移到 12c。
我们有一个在 Java 1.5 中运行并使用 ojdbc14.jar 的遗留应用程序。

我们的应用程序无法创建到数据库的连接错误说:

java.sql.SQLException: ORA-28040: No matching authentication protocol

我建议回答 ORA-28040: No matching authentication protocol exception ,并尝试将我的 ojdbc14.jar 升级到 ojdbc6.jar。

我现在有一条不同的错误消息说:
  error: OracleCallableStatement is not public in oracle.jdbc.driver; cannot be accessed from outside package
import oracle.jdbc.driver.OracleCallableStatement;
                          ^
error: OracleTypes is not public in oracle.jdbc.driver; cannot be accessed from outside package
            cstmt.registerOutParameter(3,oracle.jdbc.driver.OracleTypes.CURSOR);
                                           ^

Ant 构建文件:
<javac srcdir="${src}" destdir="${classes}" source="1.5" target="1.5">
            <classpath refid="cpath" />
</javac>

不确定我们应该做什么才能使应用程序正常工作。

最佳答案

我最近在 2 个不同的应用程序中遇到了同样的错误:

  • Tomcat 7 上的 Java 7 应用程序,使用 odbc6.jar 和 Oracle 12 c 数据库。
  • 带有 Oracle 12 c 数据库的旧式 ASP 应用程序。

  • 中提到的第二种解决方案
    same post you referred to - 对我们来说效果很好。

    Workaround: Set SQLNET.ALLOWED_LOGON_VERSION=8 in the oracle/network/admin/sqlnet.ora file.



    我们与 DBA 一起在数据库服务器上的 sqlnet.ora 上设置了上述选项。这解决了我们的问题。我希望它可以帮助某人。

    关于oracle11g - ORA-28040 : No matching authentication protocol : Oracle 12c Upgrade,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31141392/

    相关文章:

    sql - 列出Oracle中给定用户的所有表

    java - 将 Oracle 身份验证迁移到表

    java - 需要有关在网络上显示(和/或转换)pdf 文件的建议

    java - html 标签未在 XML 中定义或没有任何 JAR 文件错误消息

    单选按钮输入字段的 JavaScript 函数

    sql - ORA-01779 无法修改映射到非键保留表的列

    sql - 如何在Oracle中调整范围/间隔查询?

    sql - Oracle 12c 解析函数

    oracle - Jmeter 与 Oracle 12c : the ";" is unusable

    database - 将 xml 嵌套到表中