java.lang.NoClassDefFoundError:oracle 11g数据库连接osgi中的javax/crypto/Cipher
我正在与Oracle数据库合作进行CQ5-OSGI捆绑包管理。首先,我已经在system bundle org.apache.felix.framework中导入了javax.crypt.Cipher类java.lang.NoClassDefFoundError:oracle 11g数据库连接osgi中的javax/crypto/Cipher,java,eclipse,oracle11g,osgi,aem,Java,Eclipse,Oracle11g,Osgi,Aem,我正在与Oracle数据库合作进行CQ5-OSGI捆绑包管理。首先,我已经在system bundle org.apache.felix.framework中导入了javax.crypt.Cipher类 ... javax.crypto,version=0.0.0.1_007_JavaSE javax.crypto.interfaces,version=0.0.0.1_007_JavaSE javax.crypto.spec,version=0.0.0.1_007_JavaSE ... 从那
...
javax.crypto,version=0.0.0.1_007_JavaSE
javax.crypto.interfaces,version=0.0.0.1_007_JavaSE
javax.crypto.spec,version=0.0.0.1_007_JavaSE
...
从那时起,我遵循这一点创建了Oracle osgi连接器捆绑包,并导入了包含javax.crypt.Cipher的pakcage:
调用数据库的sql连接时,出现了一个错误:
Caused by: java.lang.NoClassDefFoundError: javax/crypto/Cipher
at oracle.security.o5logon.O5LoginClientHelper.decryptAES(Unknown Source)
at oracle.security.o5logon.O5LoginClientHelper.generateOAuthResponse(Unknown Source)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:655)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:366)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:536)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:228)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
at java.sql.DriverManager.getConnection(DriverManager.java:579)
at java.sql.DriverManager.getConnection(DriverManager.java:221)
at org.apache.commons.dbcp.DriverManagerConnectionFactory.createConnection(DriverManagerConnectionFactory.java:65)
at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294)
at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:974)
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96)
at org.apache.jsp.apps.dbtest.components.dbconnectiontest.body_jsp._jspService(body_jsp.java:179)
at org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:502)
... 129 more
据我所知,javax.crypto.Cipher已编译,但在运行时不存在,您是否有任何想法来解决此问题?通常此类来自Oracle JDK包含的jce.jar。 但是您的软件不能与不同类型的JDK一起工作,比如OpenJDK 使此依赖项在运行时可用,包括。的可能副本
Caused by: java.lang.NoClassDefFoundError: javax/crypto/Cipher
at oracle.security.o5logon.O5LoginClientHelper.decryptAES(Unknown Source)
at oracle.security.o5logon.O5LoginClientHelper.generateOAuthResponse(Unknown Source)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:655)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:366)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:536)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:228)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
at java.sql.DriverManager.getConnection(DriverManager.java:579)
at java.sql.DriverManager.getConnection(DriverManager.java:221)
at org.apache.commons.dbcp.DriverManagerConnectionFactory.createConnection(DriverManagerConnectionFactory.java:65)
at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294)
at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:974)
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96)
at org.apache.jsp.apps.dbtest.components.dbconnectiontest.body_jsp._jspService(body_jsp.java:179)
at org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:502)
... 129 more