我的应用程序使用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>
答案 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。