Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java jdbc kerberos oracle身份验证问题_Java_Oracle_Jdbc_Kerberos_Ojdbc - Fatal编程技术网

Java jdbc kerberos oracle身份验证问题

Java jdbc kerberos oracle身份验证问题,java,oracle,jdbc,kerberos,ojdbc,Java,Oracle,Jdbc,Kerberos,Ojdbc,我在尝试使用kerberos身份验证连接到oracle时遇到了一个问题。 之前报告过类似的问题,但在我的案例中,异常跟踪不同- 代码参考以下oracle文档(connectWithDefaultUser()) 异常跟踪是- 线程“main”java.lang.NoSuchMethodError中出现异常:sun.security.krb5.EncryptedData.reset([BZ)[B] 位于oracle.net.ano.AuthenticationService.a(未知源) 在or

我在尝试使用kerberos身份验证连接到oracle时遇到了一个问题。 之前报告过类似的问题,但在我的案例中,异常跟踪不同-

代码参考以下oracle文档(connectWithDefaultUser())

异常跟踪是-

线程“main”java.lang.NoSuchMethodError中出现异常:sun.security.krb5.EncryptedData.reset([BZ)[B]
位于oracle.net.ano.AuthenticationService.a(未知源)
在oracle.net.ano.AuthenticationService.run上运行(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于javax.security.auth.Subject.doAs(Subject.java:422)
位于oracle.net.ano.AuthenticationService.h(未知源)
在oracle.net.ano.ano.negotiation上(未知来源)
位于oracle.net.ns.NSProtocol.connect(NSProtocol.java:439)
位于oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1102)
位于oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:320)
位于oracle.jdbc.driver.PhysicalConnection.(PhysicalConnection.java:546)
位于oracle.jdbc.driver.T4CConnection(T4CConnection.java:236)
位于oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
位于oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
位于java.sql.DriverManager.getConnection(DriverManager.java:664)
位于java.sql.DriverManager.getConnection(DriverManager.java:208)

我猜身份验证是成功的,但服务器端或kerberos设置中缺少某些内容。

我正在使用jdk1.8和ojdbc6


感谢您的帮助!

根据@Karthikeyan的评论,将ojdbc升级到版本8解决了这个问题,尽管我不清楚在没有升级的情况下它如何在windows环境下工作,如果有人能解释一下,那就太好了:)


目前,它还可以正常工作。

如果您使用的是Java 8,那么您应该使用ojdbc8。谢谢@KarthikeyanVaithilingam,我同意您的建议,但是相同的代码在windows环境中使用相同的配置很好,而不是在linux上,这是我无法理解的原因。