Hi,

When i use a datasource (connecting to a jdbc connection pool in Weblogic)
in the QueryFactory.newQuery(..), i get this error:

[org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl] ERROR:
Naming Exception while looking up DataSource (accsDbDS)
Need to specify class name in environment or system property, or as an
applet parameter, or in an application resource file:
java.naming.factory.initial
javax.naming.NoInitialContextException: Need to specify class name in
environment or system property, or as an applet parameter, or in an
application resource file:  java.naming.factory.initial
        at
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:640)
        at
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
        at
javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:280)
        at javax.naming.InitialContext.lookup(InitialContext.java:347)
        at
org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl.newConnectio
nFromDataSource(Unknown Source)
        at
org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl.lookupConnec
tion(Unknown Source)
        at
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.getConnection(Unknow
n Source)
        at
org.apache.ojb.broker.accesslayer.StatementManager.getPreparedStatement(Unkn
own Source)
        at
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeQuery(Unknown
Source)
        at org.apache.ojb.broker.accesslayer.RsIterator.<init>(Unknown
Source)
        at
org.apache.ojb.broker.singlevm.RsIteratorFactoryImpl.createRsIterator(Unknow
n Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getRsIteratorFromQuery(
Unknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getIteratorFromQuery(Un
known Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(Un
known Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(Un
known Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(Un
known Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(Un
known Source)
        at
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.getCollectionByQu
ery(Unknown Source)
        at TestClient.testStaticTable(TestClient.java:144)
        at TestClient.runApp(TestClient.java:123)
        at TestClient.main(TestClient.java:83)

I did some testing and there is no problem obtaining a lookup thru jndi to
the datasource. I am able to get a database connection through the jndi
lookup to the datasource and successfully execute query thru the Connection
class. I can successfully read the datasource from the repository.xml file
and create a PersistenceBroker as well.
e.g

      javax.sql.DataSource ds =
(javax.sql.DataSource)(getInitialContext().lookup("adbDS"));
      java.sql.Connection conn = ds.getConnection();

    where ...

    private Context getInitialContext() throws CommunicationException,
NamingException{
    if (ctx == null){
        Properties h = new Properties();
        h.put(Context.INITIAL_CONTEXT_FACTORY,
          "weblogic.jndi.WLInitialContextFactory");
        h.put(Context.PROVIDER_URL, "t3://localhost:7001");
        ctx = new InitialContext(h);
        return ctx;
    }
    return ctx;
  }
In my repository.xml

    <jdbc-connection-descriptor
        jcd-alias="repository.xml"
        default-connection="true"
        platform="Oracle"
        jdbc-level="2.0"
        jndi-datasource-name="accsDbDS"
    username="accs"
 password="accs"
        useAutoCommit="0"
        batch-mode="true"
    >
    <sequence-manager
className="org.apache.ojb.broker.util.sequence.SequenceManagerNextValImpl">
    </sequence-manager>
    </jdbc-connection-descriptor>


The error comes only when i do a Query with OJB.

Please advise. Thx!

regards.

Janet



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

Reply via email to