java.sql.SQLException:ORA-28040:没有匹配的身份验证协议

时间:2017-09-07 21:55:09

标签: oracle jpa jdbc eclipselink

我的应用程序使用JSF Primefaces 5.0,JDK 7,Oracle Database 12,Tomcat 8。 当我在Eclipse的集成Tomcat 8服务器上部署我的webapp war时,它工作正常(所有这些都发生在Maven构建中)。但是当我在Eclipse IDE外部在Tomcat 8服务器上手动部署相同的战争(使用tomcat管理器部署UI)时,我收到以下错误。感谢您对此问题的任何提示。

  

异常[EclipseLink-4002](Eclipse Persistence Services - 2.5.0.v20130507-3faac2b):org.eclipse.persistence.exceptions.DatabaseException内部异常:java.sql.SQLException:ORA-28040:没有匹配的身份验证协议错误代码:28040

我的persistance.xml文件如下

<persistence-unit name="myPU" transaction-type="RESOURCE_LOCAL">       <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <class>com.myco.jpa.Agents</class>
    <exclude-unlisted-classes>false</exclude-unlisted-classes>
    <properties>
        <property name="javax.persistence.jdbc.driver" value="oracle.jdbc.OracleDriver"/>
        <property name="javax.persistence.jdbc.url" value="jdbc:oracle:thin:@DBNC-01.MYCO.COM:1521/SCD.MYCO.COM"/>
        <property name="javax.persistence.jdbc.user" value="myname"/>
        <property name="javax.persistence.jdbc.password" value="mypw"/>
    </properties>
</persistence-unit>

2 个答案:

答案 0 :(得分:2)

http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html下载的最新ojdbc驱动程序jar工作正常。无需其他更改。谢谢你的提示!

答案 1 :(得分:2)

这可能在oracle 12.1中发生

解决方法:在oracle / network / admin / sqlnet.ora文件中设置SQLNET.ALLOWED_LOGON_VERSION = 8。