« Return to Thread: Not able to create encrypted database

Re: Not able to create encrypted database

by Supal J Patel :: Rate this Message:

Reply to Author | View in Thread

Rajesh Kartha <kartha02@...> writes:

>
> Hi Supal,
>
>  > JVMJ9VM011W Unable to load j9jit23: The specified module could not be
> found.
>
> The above error seems to stem from the JVM.  From the file name  j9jit23, it
seems you are using IBM15 sdk,
> is that true?
>
> I tried your test case and did not see the JVMJ9VM011W exception, but my
create db still failed.
> I checked the ibm15 version that I have and did not find any J9 related JCE
extensions, which makes sense why
> the
> db creation fails with the following errors:
>
> <snip>
> SQL Exception: Failed to create database 'SupalDB', see the next exception
for d
> etails.
>
> ERROR XBM0G: Failed to start encryption engine. Please make sure you are
running
>  Java 2 and have downloaded an encryption provider such as jce and put it in
you
> r class path.
>
> ERROR XBCXF: The class 'com.ibm.j9.jce.provider.J9JCEProvider' representing
the
> encryption provider cannot be found.
> </snip>
>
> My IBM15 version:
>
> Java(TM) 2 Runtime Environment, Standard Edition (build pwi32dev-20060511
(SR2))
>
> IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Windows 2000 x86-32 j9vmwi3223-
20060
> 504 (JIT enabled)
> J9VM - 20060501_06428_lHdSMR
> JIT  - 20060428_1800_r8
> GC   - 20060501_AA)
> JCL  - 20060511a
>
> Also, the db creation works fine with com.ibm.crypto.provider.IBMJCE (the
one available with IBM15)
>
> Are you using the default installation of the IBM15 sdk (with the JRE) ? Can
you verify if there

> is any J9 specific JCE provider in your jre/lib/ext directory ?
>
> Regards,
> Rajesh
>
> Supal J Patel wrote:
>
> >
> > Hi,
> >
> > I am using Derby 10.1.1 release. I am trying to create a encrypted
> > database with J9 JRE. With J9 I am getting one JCE provider which is
> > called J9JCEProvider. When I try to run the attached JDBCTest.java
> > class I am getting the error "ERROR XBCXG: The encryption provider
> > 'J9JCEProvider' does not exist.". For complete error message please
> > refer to the attached ErrrorLog.txt file.
> >
> > Can anyone help me with this problem?
> >
> > Thanks and Regards,
> >
> > Supal Patel
> >
> >
> >------------------------------------------------------------------------
> >
> >JVMJ9VM011W Unable to load j9jit23: The specified module could not be
found.
> >SQL Exception: Failed to create database 'c:\SupalDB', see the next
exception for details.
> > at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
> > at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
> > at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown
Source)
> > at org.apache.derby.impl.jdbc.EmbedConnection.newSQLException(Unknown
Source)
> > at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown
Source)
> > at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source)
> > at org.apache.derby.jdbc.Driver30.getNewEmbedConnection(Unknown Source)
> > at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
> > at java.sql.DriverManager.getConnection(DriverManager.java:181)
> > at java.sql.DriverManager.getConnection(DriverManager.java:148)
> > at myapp.JDBCTest.createConnection(JDBCTest.java:27)
> > at myapp.JDBCTest.main(JDBCTest.java:20)
> >ERROR XBM01: Startup failed due to an exception. See next exception for
details.
> > at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
> > at
org.apache.derby.iapi.services.monitor.Monitor.exceptionStartingModule(Unknown
Source)
> > at org.apache.derby.impl.services.monitor.BaseMonitor.bootService
(Unknown Source)
> > at
org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService
(Unknown Source)
> > at
org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown
Source)
> > at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown
Source)
> > at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source)
> > at org.apache.derby.jdbc.Driver30.getNewEmbedConnection(Unknown Source)
> > at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
> > at java.sql.DriverManager.getConnection(DriverManager.java:181)
> > at java.sql.DriverManager.getConnection(DriverManager.java:148)
> > at myapp.JDBCTest.createConnection(JDBCTest.java:27)
> > at myapp.JDBCTest.main(JDBCTest.java:20)
> >ERROR XBCXG: The encryption provider 'J9JCEProvider' does not exist.
> > at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
> > at
org.apache.derby.impl.services.jce.JCECipherFactory.generateUniqueBytes
(Unknown Source)
> > at
org.apache.derby.impl.services.jce.JCECipherFactory.handleBootPassword(Unknown
Source)
> > at org.apache.derby.impl.services.jce.JCECipherFactory.boot(Unknown
Source)
> > at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
Source)
> > at org.apache.derby.impl.services.monitor.TopService.bootModule
(Unknown Source)
> > at org.apache.derby.impl.services.monitor.BaseMonitor.startModule
(Unknown Source)
> > at org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule
(Unknown Source)
> > at org.apache.derby.impl.store.raw.RawStore.boot(Unknown Source)
> > at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
Source)
> > at org.apache.derby.impl.services.monitor.TopService.bootModule
(Unknown Source)
> > at org.apache.derby.impl.services.monitor.BaseMonitor.startModule
(Unknown Source)
> > at org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule
(Unknown Source)
> > at org.apache.derby.impl.store.access.RAMAccessManager.boot(Unknown
Source)
> > at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
Source)
> > at org.apache.derby.impl.services.monitor.TopService.bootModule
(Unknown Source)
> > at org.apache.derby.impl.services.monitor.BaseMonitor.startModule
(Unknown Source)
> > at org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule
(Unknown Source)
> > at org.apache.derby.impl.db.BasicDatabase.bootStore(Unknown Source)
> > at org.apache.derby.impl.db.BasicDatabase.boot(Unknown Source)
> > at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
Source)
> > at org.apache.derby.impl.services.monitor.TopService.bootModule
(Unknown Source)
> > at org.apache.derby.impl.services.monitor.BaseMonitor.bootService
(Unknown Source)
> > at
org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService
(Unknown Source)
> > at
org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown
Source)
> > at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown
Source)

> > at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source)
> > at org.apache.derby.jdbc.Driver30.getNewEmbedConnection(Unknown Source)
> > at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
> > at java.sql.DriverManager.getConnection(DriverManager.java:181)
> > at java.sql.DriverManager.getConnection(DriverManager.java:148)
> > at myapp.JDBCTest.createConnection(JDBCTest.java:27)
> > at myapp.JDBCTest.main(JDBCTest.java:20)
> >
>
>

Hi Rajesh,

Thanks for the help.

In your case when you try to use 'com.ibm.j9.jce.provider.J9JCEProvider' as a
Encryption provider you are getting error as mentioned below :

<snip>
SQL Exception: Failed to create database 'SupalDB', see the next exception for
details.
ERROR XBM0G: Failed to start encryption engine. Please make sure you are
running Java 2 and have downloaded an encryption provider such as jce and put
it in your class path.

ERROR XBCXF: The class 'com.ibm.j9.jce.provider.J9JCEProvider' representing the
encryption provider cannot be found.
</snip>

This makes sense because you dont have 'com.ibm.j9.jce.provider.J9JCEProvider'
in your classpath.

But in my case I do have j9jceprov.jar in my classpath. And that is why I am
getting error as mentioned below :

ERROR XBM01: Startup failed due to an exception. See next exception for
details.
ERROR XBCXG: The encryption provider 'J9JCEProvider' does not exist.

So now what I want to understand is what causes this error message  :
"ERROR XBCXG"

I am using J9 (JCL:MAX) JRE and Derby 10.1.2 database.

Can anyone please help me ?

Thanks and Regards,

Supal Patel



 « Return to Thread: Not able to create encrypted database