> Caused by: org.apache.ojb.broker.OJBRuntimeException: The type INTEGER > can not be handled by OJB. Please specify only types as defined by > java.sql.Types.
please specify the jdbc type in your field-descriptor e.g.
<field-descriptor
name="id"
column="OBJ_ID"
jdbc-type="INTEGER"
/>(OJB try to match right type by reflection, but seems not to work for non primitive number classes, will fix this)
to get more logging info enable debug mode for class org.apache.ojb.broker.metadata.RepositoryXmlHandler in OJB.properties file (or in properties file of used logging api)
regards, Armin
Bilge (Erkan) Yuceer wrote:
Hi,
I'm trying to use OJB with Struts and I get the following errors when I call PersistenceBrokerFactory.defaultPersistenceBroker() method.
If you check the below lines,you will see the following errors either:
"Can not read repository class descriptor data, using repository: repository.xml",
"Exception when reading metadata information, please check your repository.xml file", and lastly
"The type INTEGER can not be handled by OJB. Please specify only types as defined by java.sql.Types."
I have tried the same code with a standalone test application with the same repository files, and everything worked well.
What could be the reason of the following errors in a web application (Struts) environment?
Thanks in advance, Bilge
---
java.lang.ExceptionInInitializerError
at org.apache.ojb.broker.core.PersistenceBrokerFactoryBaseImpl.getDefaultKey(Unknown Source)
at org.apache.ojb.broker.core.PersistenceBrokerFactoryBaseImpl.defaultPersistenceBroker(Unknown Source)
at org.apache.ojb.broker.PersistenceBrokerFactory.defaultPersistenceBroker(Unknown Source)
at nomorex.storex.UserOJBBusinessRules.findByCriteria(UserOJBBusinessRules.java:84)
at nomorex.storex.UserGridAction.execute(UserGridAction.java:91)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
at javax.servlet.http.HttpServlet.service(HttpServlet.java)
at javax.servlet.http.HttpServlet.service(HttpServlet.java)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Unknown Source)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(Unknown Source)
at org.apache.catalina.core.StandardWrapperValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
at org.apache.catalina.core.StandardContextValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
at org.apache.catalina.core.StandardContext.invoke(Unknown Source)
at org.apache.catalina.core.StandardHostValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source)
at org.apache.catalina.valves.ErrorReportValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
at org.apache.catalina.core.StandardEngineValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:405)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:380)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:508)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:533)
at java.lang.Thread.run(Thread.java:536)
Caused by: org.apache.ojb.broker.metadata.MetadataException: Can not read repository class descriptor data, using repository: repository.xml
at org.apache.ojb.broker.metadata.MetadataManager.init(Unknown Source)
at org.apache.ojb.broker.metadata.MetadataManager.(Unknown Source)
at org.apache.ojb.broker.metadata.MetadataManager.(Unknown Source)
... 40 more
Caused by: org.apache.ojb.broker.metadata.MetadataException: Exception when reading metadata information, please check your repository.xml file
at org.apache.ojb.broker.metadata.RepositoryXmlHandler.startElement(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at org.apache.xerces.impl.XMLNamespaceBinder.emptyElement(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.ojb.broker.metadata.RepositoryPersistor.readMetadataFromXML(Unknown Source)
at org.apache.ojb.broker.metadata.RepositoryPersistor.buildRepository(Unknown Source)
at org.apache.ojb.broker.metadata.RepositoryPersistor.readDescriptorRepository(Unknown Source)
... 43 more
Caused by: org.apache.ojb.broker.OJBRuntimeException: The type INTEGER can not be handled by OJB. Please specify only types as defined by java.sql.Types.
at org.apache.ojb.broker.util.JdbcTypesHelper.getJdbcTypeByName(Unknown Source)
at org.apache.ojb.broker.metadata.FieldDescriptor.lookupJdbcType(Unknown Source)
at org.apache.ojb.broker.metadata.FieldDescriptor.setColumnType(Unknown Source)
... 58 more
------------------------------------------------------------------------
--------------------------------------------------------------------- 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]
