Hello All,
I am trying the use ojb with jdo in a servlet container. I am using
org.apache.ojb.jdori.sql.OjbStorePMF to get the PersistanceManager
instance. Then I am using the getting the Query from the manager. I am
trying to get the list of all products from Northwind database. The code
snippet is below:
try{
PersistenceBrokerFactory.defaultPersistenceBroker().clearCache();
// 2. start tx and form query
manager.currentTransaction().begin();
Query query = manager.newQuery(Products.class);
// 3. perform query
Collection allProducts = (Collection)query.execute();
// 4. now iterate over the result to print each
// product and finish tx
java.util.Iterator iter = allProducts.iterator();
if (! iter.hasNext())
{
System.out.println("No Product entries found!");
}
while (iter.hasNext())
{
System.out.println(iter.next());
}
manager.currentTransaction().commit();
}
catch (Throwable t)
{
t.printStackTrace();
}
finally
{
manager.close();
}
I am instanciating this class from a jsp page and calling this method.
But I get a lenthy error in the stdout which I am providing at the end.
Other informations are:
1. have repository.xml and ojb.properties in WEB-INF/classes
2. put the j2ee.jar, jdo.jar, jdori.jar in lib directory
3. Tomcat version 5.02
4. ojb 1.0rc4
5. jdori 1.0
6. jdk1.4.1
The ojb.properties file is same from the ojb tutorial4. I tried making
some changes but with no success.
Here is the stack trace:
java.lang.ExceptionInInitializerError
at
org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl.buildDefa
ultKey(PersistenceBrokerFactoryDefaultImpl.java:150)
at
org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl.<init>(Pe
rsistenceBrokerFactoryDefaultImpl.java:121)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorA
ccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingCons
tructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
at java.lang.Class.newInstance0(Class.java:306)
at java.lang.Class.newInstance(Class.java:259)
at
org.apache.ojb.broker.core.PersistenceBrokerFactoryFactory.init(Persiste
nceBrokerFactoryFactory.java:94)
at
org.apache.ojb.broker.core.PersistenceBrokerFactoryFactory.<clinit>(Pers
istenceBrokerFactoryFactory.java:71)
at
org.apache.ojb.broker.PersistenceBrokerFactory.defaultPersistenceBroker(
PersistenceBrokerFactory.java:103)
at com.icicle.test.TestOjb.selectProd(TestOjb.java:48)
at org.apache.jsp.test_jsp._jspService(test_jsp.java:44)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:320)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:293)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:288)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:263)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:151)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
61)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1018)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:196)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:151)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
61)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1018)
at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:274
8)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:186)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:151)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVa
lve.java:171)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:149)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:172)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:149)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
61)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1018)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:163)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:151)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
61)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1018)
at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:199)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:63
0)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:463)
at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:56
8)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:631)
at java.lang.Thread.run(Thread.java:536)
Caused by: org.apache.ojb.broker.metadata.MetadataException: Could not
read repository class descriptor data, using repository: repository.xml
at
org.apache.ojb.broker.metadata.MetadataManager.init(MetadataManager.java
:133)
at
org.apache.ojb.broker.metadata.MetadataManager.<init>(MetadataManager.ja
va:119)
at
org.apache.ojb.broker.metadata.MetadataManager.<clinit>(MetadataManager.
java:109)
... 48 more
Caused by: org.apache.ojb.broker.metadata.MetadataException: Class
org.apache.ojb.broker.util.sequence.SequenceEntry could not be found in
the classpath. This could cause unexpected behaviour of OJB, please
remove or comment out this class descriptor in the repository.xml file.
at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:524)
at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
at
org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
at
org.apache.ojb.broker.metadata.RepositoryPersistor.readMetadataFromXML(R
epositoryPersistor.java:343)
at
org.apache.ojb.broker.metadata.RepositoryPersistor.buildRepository(Repos
itoryPersistor.java:300)
at
org.apache.ojb.broker.metadata.RepositoryPersistor.readDescriptorReposit
ory(RepositoryPersistor.java:215)
at
org.apache.ojb.broker.metadata.MetadataManager.init(MetadataManager.java
:129)
... 50 more
2003-10-15 16:29:09,124 DEBUG test.TestOjb [Thread-4] (TestOjb.java:39)
- Instantiating ojb factory and PersistManager
2003-10-15 16:29:14,582 DEBUG test.TestOjb [Thread-4] (TestOjb.java:42)
- New instance created
java.lang.NoClassDefFoundError
at
org.apache.ojb.broker.PersistenceBrokerFactory.defaultPersistenceBroker(
PersistenceBrokerFactory.java:103)
at com.icicle.test.TestOjb.selectProd(TestOjb.java:48)
at org.apache.jsp.test_jsp._jspService(test_jsp.java:44)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:320)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:293)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:288)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:263)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:151)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
61)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1018)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:196)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:151)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
61)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1018)
at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:274
8)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:186)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:151)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVa
lve.java:171)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:149)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:172)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:149)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
61)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1018)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:163)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo
ntext.java:151)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5
61)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1018)
at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:199)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:63
0)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:463)
at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:56
8)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:631)
at java.lang.Thread.run(Thread.java:536)
Sorry for making the mail very length and shabby. Any help will be
highly appreciated. Thanks you.
With regards,
Vijay Sargunam
Icicle Consultancy,
Web: www.icicleconsultancy.com <http://www.icicleconsultancy.com/>