I got mine working by opening database with 'jcd-alias' instead of
databaseName:

  db.open(<jcd-alias>, Database.OPEN_READ_WRITE)

where <jcd-alias> is defined in repository_database.xml. 

Zhangling Ren

-----Original Message-----
From: Thomas B. Holdren [mailto:[EMAIL PROTECTED]
Sent: Tuesday, February 25, 2003 11:51 AM
To: [EMAIL PROTECTED]
Subject: OJB-0.9.9 + MySQL ODMG Startup Problem


Greetings,

I'm trying to do my first OJB project, and I'm not getting very far.  I 
was able to get tutorial1 to work, and I was able to use the Persistence 
Broker functionality in my own test app just fine by basically copying 
tutorial1 code into a test app and modifying it a bit.  So PB API works 
good.

Now I'm trying to use the tutorial2, ODMG API, and I get the same error 
trying to run the tutorial2 program as I do when I copy its code into my 
test application.  I have heard no changes need to be made to the 
repository.xml files to switch API's, correct me if I'm wrong.

As I said, the PB API works fine for me, but using the same xml files 
and when I try to db.open(databaseName, Database.OPEN_READ_WRITE) I get 
the following stack trace:

===============================
[org.apache.ojb.broker.metadata.ConnectionRepository] INFO: Could not 
found org.apache.ojb.broker.metadata.JdbcConnectionDescriptor for PBKey 
org.apache.ojb.broker.PBKey: repository=repository.xml, user=null, 
password=null
java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
[org.apache.ojb.broker.accesslayer.ConnectionManagerFactory] ERROR: 
ConfigurableFactory instantiation failed for class class 
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl
* Factory types:
1 - Type: org.apache.ojb.broker.PersistenceBroker
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
* Factory arguments:
1 - Argument: [EMAIL PROTECTED]
null
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
[org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl] ERROR: 
Creation of a new PB instance failed
null
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerFactory.createConnectionM
anager(Unknown 
Source)
[org.apache.ojb.odmg.DatabaseImpl] ERROR: Open database failed: Borrow 
broker from pool failed: Creation of a new PB instance failed
Borrow broker from pool failed: Creation of a new PB instance failed
     at 
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.<init>(Unknown Source)
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createNewBroker
Instance(Unknown 
Source)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl$PBKeyedPoolable
ObjectFactory.makeObject(Unknown 
Source)
     at 
org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeye
dObjectPool.java:748)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createPersisten
ceBroker(Unknown 
Source)
     at 
org.apache.ojb.broker.PersistenceBrokerFactory.createPersistenceBroker(Unkno
wn 
Source)
     at org.apache.ojb.odmg.DatabaseImpl.open(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.<init>(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.main(Unknown Source)
Caused by: java.lang.NullPointerException
     at 
org.apache.ojb.broker.platforms.PlatformFactory.getPlatformFor(Unknown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.<init>(Unknown 
Source)
     ... 22 more
java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createNewBroker
Instance(Unknown 
Source)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl$PBKeyedPoolable
ObjectFactory.makeObject(Unknown 
Source)
     at 
org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeye
dObjectPool.java:748)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createPersisten
ceBroker(Unknown 
Source)
     at 
org.apache.ojb.broker.PersistenceBrokerFactory.createPersistenceBroker(Unkno
wn 
Source)
     at org.apache.ojb.odmg.DatabaseImpl.open(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.<init>(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.main(Unknown Source)
Caused by: org.apache.ojb.broker.PersistenceBrokerException
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerFactory.createConnectionM
anager(Unknown 
Source)
     at 
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.<init>(Unknown Source)
     ... 13 more
Caused by: java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     ... 17 more
Caused by: java.lang.NullPointerException
     at 
org.apache.ojb.broker.platforms.PlatformFactory.getPlatformFor(Unknown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.<init>(Unknown 
Source)
     ... 22 more
java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createNewBroker
Instance(Unknown 
Source)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl$PBKeyedPoolable
ObjectFactory.makeObject(Unknown 
Source)
     at 
org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeye
dObjectPool.java:748)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createPersisten
ceBroker(Unknown 
Source)
     at 
org.apache.ojb.broker.PersistenceBrokerFactory.createPersistenceBroker(Unkno
wn 
Source)
     at org.apache.ojb.odmg.DatabaseImpl.open(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.<init>(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.main(Unknown Source)
Caused by: org.apache.ojb.broker.PersistenceBrokerException
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerFactory.createConnectionM
anager(Unknown 
Source)
     at 
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.<init>(Unknown Source)
     ... 13 more
Caused by: java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     ... 17 more
Caused by: java.lang.NullPointerException
     at 
org.apache.ojb.broker.platforms.PlatformFactory.getPlatformFor(Unknown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.<init>(Unknown 
Source)
     ... 22 more
rethrown as org.apache.ojb.broker.PBFactoryException: Creation of a new 
PB instance failed
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createNewBroker
Instance(Unknown 
Source)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl$PBKeyedPoolable
ObjectFactory.makeObject(Unknown 
Source)
     at 
org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeye
dObjectPool.java:748)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createPersisten
ceBroker(Unknown 
Source)
     at 
org.apache.ojb.broker.PersistenceBrokerFactory.createPersistenceBroker(Unkno
wn 
Source)
     at org.apache.ojb.odmg.DatabaseImpl.open(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.<init>(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.main(Unknown Source)
Caused by: java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     ... 8 more
Caused by: org.apache.ojb.broker.PersistenceBrokerException
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerFactory.createConnectionM
anager(Unknown 
Source)
     at 
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.<init>(Unknown Source)
     ... 13 more
Caused by: java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     ... 17 more
Caused by: java.lang.NullPointerException
     at 
org.apache.ojb.broker.platforms.PlatformFactory.getPlatformFor(Unknown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.<init>(Unknown 
Source)
     ... 22 more
rethrown as org.apache.ojb.broker.PBFactoryException: Borrow broker from 
pool failed: Creation of a new PB instance failed
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createPersisten
ceBroker(Unknown 
Source)
     at 
org.apache.ojb.broker.PersistenceBrokerFactory.createPersistenceBroker(Unkno
wn 
Source)
     at org.apache.ojb.odmg.DatabaseImpl.open(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.<init>(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.main(Unknown Source)
Caused by: org.apache.ojb.broker.PBFactoryException: Creation of a new 
PB instance failed
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createNewBroker
Instance(Unknown 
Source)
     at 
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl$PBKeyedPoolable
ObjectFactory.makeObject(Unknown 
Source)
     at 
org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeye
dObjectPool.java:748)
     ... 5 more
Caused by: java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     ... 8 more
Caused by: org.apache.ojb.broker.PersistenceBrokerException
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.util.factory.ConfigurableFactory.createNewInstance(Unk
nown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerFactory.createConnectionM
anager(Unknown 
Source)
     at 
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.<init>(Unknown Source)
     ... 13 more
Caused by: java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcces
sorImpl.java:39)
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstruc
torAccessorImpl.java:27)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
     at org.apache.ojb.broker.util.ClassHelper.newInstance(Unknown Source)
     ... 17 more
Caused by: java.lang.NullPointerException
     at 
org.apache.ojb.broker.platforms.PlatformFactory.getPlatformFor(Unknown 
Source)
     at 
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.<init>(Unknown 
Source)
     ... 22 more
org.odmg.DatabaseNotFoundException: OJB can't open database repository.xml
Borrow broker from pool failed: Creation of a new PB instance failed
     at org.apache.ojb.odmg.DatabaseImpl.open(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.<init>(Unknown Source)
     at org.bswt.gabriel.test.UserTest2.main(Unknown Source)
===========================================================

UserTest2.java:
===========================================================
package org.bswt.gabriel.test;

import org.apache.ojb.broker.PersistenceBrokerFactory;
import org.apache.ojb.broker.singlevm.PersistenceBrokerConfiguration;
import org.apache.ojb.broker.util.configuration.ConfigurationException;
import org.apache.ojb.broker.util.ui.AsciiSplash;
import org.apache.ojb.odmg.OJB;
import org.odmg.Database;
import org.odmg.Implementation;
import org.odmg.ODMGException;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Vector;

/**
  * The tutorial application.
  * @author: thma
  */
public class UserTest2
{
     private Vector useCases;
     private static String databaseName;
     /**
      * Application constructor comment.
      */

     static
     {
         try
         {
             databaseName =
                 ((PersistenceBrokerConfiguration) PersistenceBrokerFactory
                     .getConfigurator()
                     .getConfigurationFor(null))
                     .getRepositoryFilename();
         }
         catch (ConfigurationException e)
         {
             databaseName = "repository.xml";
         }

     }

     public UserTest2()
     {
         // get facade instance
         Implementation odmg = OJB.getInstance();
         Database db = odmg.newDatabase();

         System.err.println(db);

         //open database
         try
         {
             db.open(databaseName, Database.OPEN_READ_WRITE);
         }
         catch (ODMGException ex)
         {
             ex.printStackTrace();
         }
     }

     public void run() {

     }

     public static void main(String[] args) {
         UserTest2 ut = new UserTest2();
         ut.run();
     }
}
==================================================================

As I said, the PersistenceBroker works fine for me, so I don't think 
it's my repository.xml config, but here it is just in case (at least the 
relevant database part):

repository_database.xml
===================================================================
     <jdbc-connection-descriptor
       jcd-alias="gabriel"
       default-connection="true"
       platform="MySQL"
       jdbc-level="3.0"
       driver="org.gjt.mm.mysql.Driver"
       protocol="jdbc"
       subprotocol="mysql"
       dbalias="//sql/gabriel"
       username="gabriel"
       password="********"
     >
       <connection-pool
         maxActive="10"
         whenExhaustedAction="1"
         validationQuery="SELECT COUNT(*) FROM user"
       />
     </jdbc-connection-descriptor>
===================================================================

I haven't changed any of the other configs.

Any help at ALL would be very much appreciated.
-- 
Thomas Brian Holdren, Systems Programmer
Health Design Plus

"It's not what you know that is important,  it's knowing how to find 
what you
don't know.'

-- 
Thomas Brian Holdren, Systems Programmer
Health Design Plus

"It's not what you know that is important,  it's knowing how to find 
what you
don't know.'


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to