You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by Josef Wagner <jo...@on-ergy.de> on 2007/02/07 16:44:16 UTC
Oracle Blob Clob Lob Problem
Hello List,
I have a problem width loading large data from tables width clob-culumns.
db: oracle 9.2.0.8
ojb: 1.0.4
driver: thin
When i load 15000 rows, my applikation gets an OutOfMemoryError. I have
ensure, that Oracle width clobs is the problem, width HSQLDB, all works
fine.
The data in the clob-culumns are texts width AKTUALLY no more then 100
charakters.
I have checked out the trunk of ojb and I see, that in the platform
package are some wrapper-classes for clob und blob?
Unforunatelly, I can't test if this is the solution of my problem,
because I get lots of errors when starting my application width a jar
from the trunk version.
Can anybody tell me, if the source in the trunk is the solution for such
problems I have?
Or is the solution to switch to oralce 10g?
Or should I use OCI instead of THIN driver?
Thanks a lot for your answers.
regrads
Josef Wagner
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Josef Wagner <jo...@on-ergy.de>.
Hello Armin,
thanks for your spend time. I have found the failure, it was in the
repository.xml, there I configured varchar instead of clob :o/
Next time, the first thing I will do is mailing the repository infos. So
a simply failure :o/
Thanks
Josef
Armin Waibel schrieb:
> Josef Wagner wrote:
>> Hello Armin,
>> The problem width my outOfMemory apears also width 1.0.5
>> I have written a small test code an now I know, why I'm getting the
>> outOfMemory width OJB. I think it is a "bug" in OJB, because you read
>> the data from ResultSet width getString() instead of getClob(). Width
>> getString(), i get the outOfMemory
>
> can you post more details. I checked the code ResultSet.getString(...)
> is only called for Varchar and Char columns.
>
> If the log_data_export field in class Log is of type String, OJB
> materialize the Clob and transforms the Clob value to a
> string-representation.
> If you use Clob as type in Log class, OJB only wraps the Clob object -
> the Clob value will not be materialized (if your jdbc-driver implement
> LOB's as pointer objects to the real data).
> See LOB test case:
> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>
>
> regards,
> Armin
>
>>
>> Here my test
>> -----------
>> public void clobTest() {
>> PersistenceBroker pb = getBroker();
>> JdbcAccess jdbcAccess = pb.serviceJdbcAccess();
>> ClassDescriptor logClassDesc =
>> pb.getClassDescriptor(de.on_ergy.lakon.data.model.Log.class);
>> ResultSetAndStatement rs = jdbcAccess.executeSQL("Select *
>> from Log", logClassDesc, false);
>> ResultSet r = rs.m_rs;
>> Vector logDataExpVec = new Vector();
>> Vector logDataDefaultVec = new Vector();
>> try {
>> while(r.next()) {
>> logDataExpVec.addElement(r.getClob("log_data_export"));
>>
>> logDataDefaultVec.addElement(r.getClob("log_data_default"));
>> }
>> } catch(SQLException ex) {
>> _log.error(ex);
>> }
>> _log.info("Fertig!!!");
>> }
>>
>> -----
>>
>> How can we get a quick solution?
>> Thanks a lot for your spend time!
>>
>> regards, josef
>>
>>
>>
>> Armin Waibel schrieb:
>>>
>>> by the way, do your test pass if you set the
>>> 'proxy-prefetching-limit' of the relevant class-descriptor or
>>> reference/collection-descriptor's to '0'? Then OJB shouldn't
>>> prefetch the references.
>>>
>>> regards,
>>> Armin
>>>
>>>
>>>
>>> Armin Waibel wrote:
>>>> Hi Josef,
>>>>
>>>> Josef Wagner wrote:
>>>>> Hello Armin,
>>>>>
>>>>> no, I have allready replaced all CGLib classes width JDK classes. My
>>>>> problem is, that i can't debug the following issue: -------- Caused
>>>>> by: java.lang.NullPointerException at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>>>
>>>>>
>>>>
>>>> I think this is the access from the inner class
>>>> PBMaterializationListener to the private field 'pb' in class
>>>> QueryReferenceBroker.
>>>> Decompiled code for QueryReferenceBroker:
>>>> ...
>>>> static org.apache.ojb.broker.core.PersistenceBrokerImpl
>>>> access$000(org.apache.ojb.broker.core.QueryReferenceBroker);
>>>> Code:
>>>> 0: aload_0
>>>> 1: getfield #4; //Field
>>>> pb:Lorg/apache/ojb/broker/core/PersistenceBrokerImpl;
>>>> 4: areturn
>>>>
>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>>>
>>>>>
>>>>>
>>>>> -------- <code> Line 990: _listenedHandler =
>>>>> pb.getProxyFactory().getIndirectionHandler(owner); </code>
>>>>>
>>>>> pb is != null
>>>>>
>>>>> I have no idea :o/. Are there any no features, that I have to keep in
>>>>> mind?
>>>>>
>>>>
>>>> I remember that I got a similar ".access$000" error some weeks ago.
>>>> But I can't remember the reason. I thought it was a proxy issue (do
>>>> you get the same error when using CGLIB-proxy classes?) - but seems
>>>> this isn't the reason.
>>>>
>>>> Could you describe or post the test source code to reproduce the
>>>> issue?
>>>>
>>>> regards,
>>>> Armin
>>>>
>>>>
>>>>> regards, Josef
>>>>>
>>>>>
>>>>>
>>>>> Armin Waibel schrieb:
>>>>>> Hi Josef,
>>>>>>
>>>>>> could this be a proxy issue? Please check the settings in
>>>>>> OJB.properties file - do you need CGLib based proxies?
>>>>>>
>>>>>> regards, Armin
>>>>>>
>>>>>> Josef Wagner wrote:
>>>>>>> Hi Armin, i tried to starting my application width 1.0.5, but no
>>>>>>> success. I can`t get any informations when looking into the log.
>>>>>>> I think, it`s an Java Reflection Problem: Hier is the log output,
>>>>>>> have you any idee ?
>>>>>>>
>>>>>>> java.lang.reflect.InvocationTargetException at
>>>>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:357)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
>>>>>>> at
>>>>>>> org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog.buttonPressed(LoginDialog.java:114)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
>>>>>>> at
>>>>>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
>>>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at
>>>>>>> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3125)
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2758)
>>>>>>> at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
>>>>>>> at org.eclipse.jface.window.Window.open(Window.java:787) at
>>>>>>> de.on_ergy.base.ui.OnErgyDialog.open(OnErgyDialog.java:132) at
>>>>>>> de.on_ergy.lakon.rcp.LakonWorkbenchWindowAdviser.postWindowOpen(LakonWorkbenchWindowAdviser.java:209)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.ui.internal.WorkbenchWindow.fireWindowOpened(WorkbenchWindow.java:1070)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:701)
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:677)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034) at
>>>>>>> org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636) at
>>>>>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
>>>>>>>
>>>>>>> at
>>>>>>> de.on_ergy.lakon.rcp.RcpApplication.run(RcpApplication.java:44)
>>>>>>> at
>>>>>>> org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at
>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>>>>>>> at java.lang.reflect.Method.invoke(Unknown Source) at
>>>>>>> org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at
>>>>>>> org.eclipse.core.launcher.Main.basicRun(Main.java:278) at
>>>>>>> org.eclipse.core.launcher.Main.run(Main.java:973) at
>>>>>>> org.eclipse.core.launcher.Main.main(Main.java:948) Caused by:
>>>>>>> org.apache.ojb.broker.PersistenceBrokerException:
>>>>>>> java.lang.NullPointerException at
>>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:290)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1597)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:518)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1486)
>>>>>>>
>>>>>>> at
>>>>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1473)
>>>>>>>
>>>>>>> at
>>>>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:480)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> de.on_ergy.lakon.data.DataProvider.select(DataProvider.java:248) at
>>>>>>> de.on_ergy.lakon.bp.stammdaten.LakonBP.select(LakonBP.java:131) at
>>>>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog$1.run(LoginDialog.java:97)
>>>>>>> at
>>>>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ... 36 more Caused by: java.lang.NullPointerException at
>>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.<init>(QueryReferenceBroker.java:1048)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.<init>(QueryReferenceBroker.java:985)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReference(QueryReferenceBroker.java:413)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReferences(QueryReferenceBroker.java:495)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:490)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:280)
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:143)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:277)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ... 47 more
>>>>>>>
>>>>>>>
>>>>>>> thanks for your help! regrads Josef
>>>>>>>
>>>>>>> Armin Waibel schrieb:
>>>>>>>> Hi Josef,
>>>>>>>>
>>>>>>>> Josef Wagner wrote:
>>>>>>>>> Hello List,
>>>>>>>>>
>>>>>>>>> I have a problem width loading large data from tables width
>>>>>>>>> clob-culumns. db: oracle 9.2.0.8 ojb: 1.0.4 driver: thin
>>>>>>>>>
>>>>>>>>> When i load 15000 rows, my applikation gets an
>>>>>>>>> OutOfMemoryError. I have ensure, that Oracle width clobs is
>>>>>>>>> the problem, width HSQLDB, all works fine. The data in the
>>>>>>>>> clob-culumns are texts width AKTUALLY no more then 100
>>>>>>>>> charakters.
>>>>>>>>>
>>>>>>>>> I have checked out the trunk of ojb and I see, that in the
>>>>>>>>> platform package are some wrapper-classes for clob und blob?
>>>>>>>>
>>>>>>>> yep, I reworked the LOB-support a bit and add Blob/Clob
>>>>>>>> java-types support (before OJB converts all LOB's to byte[]).
>>>>>>>>
>>>>>>>>
>>>>>>>>> Unforunatelly, I can't test if this is the solution of my
>>>>>>>>> problem, because I get lots of errors when starting my
>>>>>>>>> application width a jar from the trunk version.
>>>>>>>>>
>>>>>>>>
>>>>>>>> Don't use the trunk it's the alpha OJB 2.x. Please check out
>>>>>>>> the OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5
>>>>>>>> version.
>>>>>>>>
>>>>>>>>
>>>>>>>>> Can anybody tell me, if the source in the trunk is the
>>>>>>>>> solution for such problems I have?
>>>>>>>>
>>>>>>>> Don't know - give it a try.
>>>>>>>>
>>>>>>>>
>>>>>>>>> Or is the solution to switch to oralce 10g?
>>>>>>>>
>>>>>>>> I run the LOB-test against OracleXE 10.2.0.1 and
>>>>>>>> classes12_g_10.2.0.2.jar driver.
>>>>>>>> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> The tests handle CLOB's up to 5000 characters.
>>>>>>>>
>>>>>>>>> Or should I use OCI instead of THIN driver?
>>>>>>>>>
>>>>>>>> Sorry I don't know (not a Oracle expert).
>>>>>>>>
>>>>>>>> regards, Armin
>>>>>>>>
>>>>>>>>> Thanks a lot for your answers.
>>>>>>>>>
>>>>>>>>> regrads Josef Wagner
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>
>>>>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>>>>>>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>>
>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Armin Waibel <ar...@apache.org>.
Josef Wagner wrote:
> Hello Armin,
> The problem width my outOfMemory apears also width 1.0.5
> I have written a small test code an now I know, why I'm getting the
> outOfMemory width OJB. I think it is a "bug" in OJB, because you read
> the data from ResultSet width getString() instead of getClob(). Width
> getString(), i get the outOfMemory
can you post more details. I checked the code ResultSet.getString(...)
is only called for Varchar and Char columns.
If the log_data_export field in class Log is of type String, OJB
materialize the Clob and transforms the Clob value to a
string-representation.
If you use Clob as type in Log class, OJB only wraps the Clob object -
the Clob value will not be materialized (if your jdbc-driver implement
LOB's as pointer objects to the real data).
See LOB test case:
http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
regards,
Armin
>
> Here my test
> -----------
> public void clobTest() {
> PersistenceBroker pb = getBroker();
> JdbcAccess jdbcAccess = pb.serviceJdbcAccess();
> ClassDescriptor logClassDesc =
> pb.getClassDescriptor(de.on_ergy.lakon.data.model.Log.class);
> ResultSetAndStatement rs = jdbcAccess.executeSQL("Select * from
> Log", logClassDesc, false);
> ResultSet r = rs.m_rs;
> Vector logDataExpVec = new Vector();
> Vector logDataDefaultVec = new Vector();
> try {
> while(r.next()) {
> logDataExpVec.addElement(r.getClob("log_data_export"));
> logDataDefaultVec.addElement(r.getClob("log_data_default"));
> }
> } catch(SQLException ex) {
> _log.error(ex);
> }
> _log.info("Fertig!!!");
> }
>
> -----
>
> How can we get a quick solution?
> Thanks a lot for your spend time!
>
> regards, josef
>
>
>
> Armin Waibel schrieb:
>>
>> by the way, do your test pass if you set the 'proxy-prefetching-limit'
>> of the relevant class-descriptor or reference/collection-descriptor's
>> to '0'? Then OJB shouldn't prefetch the references.
>>
>> regards,
>> Armin
>>
>>
>>
>> Armin Waibel wrote:
>>> Hi Josef,
>>>
>>> Josef Wagner wrote:
>>>> Hello Armin,
>>>>
>>>> no, I have allready replaced all CGLib classes width JDK classes. My
>>>> problem is, that i can't debug the following issue: -------- Caused
>>>> by: java.lang.NullPointerException at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>>
>>>>
>>>
>>> I think this is the access from the inner class
>>> PBMaterializationListener to the private field 'pb' in class
>>> QueryReferenceBroker.
>>> Decompiled code for QueryReferenceBroker:
>>> ...
>>> static org.apache.ojb.broker.core.PersistenceBrokerImpl
>>> access$000(org.apache.ojb.broker.core.QueryReferenceBroker);
>>> Code:
>>> 0: aload_0
>>> 1: getfield #4; //Field
>>> pb:Lorg/apache/ojb/broker/core/PersistenceBrokerImpl;
>>> 4: areturn
>>>
>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>>
>>>>
>>>>
>>>> -------- <code> Line 990: _listenedHandler =
>>>> pb.getProxyFactory().getIndirectionHandler(owner); </code>
>>>>
>>>> pb is != null
>>>>
>>>> I have no idea :o/. Are there any no features, that I have to keep in
>>>> mind?
>>>>
>>>
>>> I remember that I got a similar ".access$000" error some weeks ago.
>>> But I can't remember the reason. I thought it was a proxy issue (do
>>> you get the same error when using CGLIB-proxy classes?) - but seems
>>> this isn't the reason.
>>>
>>> Could you describe or post the test source code to reproduce the issue?
>>>
>>> regards,
>>> Armin
>>>
>>>
>>>> regards, Josef
>>>>
>>>>
>>>>
>>>> Armin Waibel schrieb:
>>>>> Hi Josef,
>>>>>
>>>>> could this be a proxy issue? Please check the settings in
>>>>> OJB.properties file - do you need CGLib based proxies?
>>>>>
>>>>> regards, Armin
>>>>>
>>>>> Josef Wagner wrote:
>>>>>> Hi Armin, i tried to starting my application width 1.0.5, but no
>>>>>> success. I can`t get any informations when looking into the log. I
>>>>>> think, it`s an Java Reflection Problem: Hier is the log output,
>>>>>> have you any idee ?
>>>>>>
>>>>>> java.lang.reflect.InvocationTargetException at
>>>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:357)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
>>>>>> at
>>>>>> org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog.buttonPressed(LoginDialog.java:114)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
>>>>>> at
>>>>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
>>>>>>
>>>>>> at
>>>>>> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
>>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at
>>>>>> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3125)
>>>>>> at
>>>>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2758)
>>>>>> at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
>>>>>> at org.eclipse.jface.window.Window.open(Window.java:787) at
>>>>>> de.on_ergy.base.ui.OnErgyDialog.open(OnErgyDialog.java:132) at
>>>>>> de.on_ergy.lakon.rcp.LakonWorkbenchWindowAdviser.postWindowOpen(LakonWorkbenchWindowAdviser.java:209)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.WorkbenchWindow.fireWindowOpened(WorkbenchWindow.java:1070)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:701)
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:677)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034) at
>>>>>> org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636) at
>>>>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
>>>>>> at
>>>>>> de.on_ergy.lakon.rcp.RcpApplication.run(RcpApplication.java:44) at
>>>>>> org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at
>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at
>>>>>> java.lang.reflect.Method.invoke(Unknown Source) at
>>>>>> org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at
>>>>>> org.eclipse.core.launcher.Main.basicRun(Main.java:278) at
>>>>>> org.eclipse.core.launcher.Main.run(Main.java:973) at
>>>>>> org.eclipse.core.launcher.Main.main(Main.java:948) Caused by:
>>>>>> org.apache.ojb.broker.PersistenceBrokerException:
>>>>>> java.lang.NullPointerException at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:290)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1597)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:518)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1486)
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1473)
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:480)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.lakon.data.DataProvider.select(DataProvider.java:248) at
>>>>>> de.on_ergy.lakon.bp.stammdaten.LakonBP.select(LakonBP.java:131) at
>>>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog$1.run(LoginDialog.java:97)
>>>>>> at
>>>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
>>>>>>
>>>>>>
>>>>>>
>>>>>> ... 36 more Caused by: java.lang.NullPointerException at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.<init>(QueryReferenceBroker.java:1048)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.<init>(QueryReferenceBroker.java:985)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReference(QueryReferenceBroker.java:413)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReferences(QueryReferenceBroker.java:495)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:490)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:280)
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:143)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:277)
>>>>>>
>>>>>>
>>>>>>
>>>>>> ... 47 more
>>>>>>
>>>>>>
>>>>>> thanks for your help! regrads Josef
>>>>>>
>>>>>> Armin Waibel schrieb:
>>>>>>> Hi Josef,
>>>>>>>
>>>>>>> Josef Wagner wrote:
>>>>>>>> Hello List,
>>>>>>>>
>>>>>>>> I have a problem width loading large data from tables width
>>>>>>>> clob-culumns. db: oracle 9.2.0.8 ojb: 1.0.4 driver: thin
>>>>>>>>
>>>>>>>> When i load 15000 rows, my applikation gets an
>>>>>>>> OutOfMemoryError. I have ensure, that Oracle width clobs is
>>>>>>>> the problem, width HSQLDB, all works fine. The data in the
>>>>>>>> clob-culumns are texts width AKTUALLY no more then 100
>>>>>>>> charakters.
>>>>>>>>
>>>>>>>> I have checked out the trunk of ojb and I see, that in the
>>>>>>>> platform package are some wrapper-classes for clob und blob?
>>>>>>>
>>>>>>> yep, I reworked the LOB-support a bit and add Blob/Clob
>>>>>>> java-types support (before OJB converts all LOB's to byte[]).
>>>>>>>
>>>>>>>
>>>>>>>> Unforunatelly, I can't test if this is the solution of my
>>>>>>>> problem, because I get lots of errors when starting my
>>>>>>>> application width a jar from the trunk version.
>>>>>>>>
>>>>>>>
>>>>>>> Don't use the trunk it's the alpha OJB 2.x. Please check out
>>>>>>> the OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5
>>>>>>> version.
>>>>>>>
>>>>>>>
>>>>>>>> Can anybody tell me, if the source in the trunk is the
>>>>>>>> solution for such problems I have?
>>>>>>>
>>>>>>> Don't know - give it a try.
>>>>>>>
>>>>>>>
>>>>>>>> Or is the solution to switch to oralce 10g?
>>>>>>>
>>>>>>> I run the LOB-test against OracleXE 10.2.0.1 and
>>>>>>> classes12_g_10.2.0.2.jar driver.
>>>>>>> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> The tests handle CLOB's up to 5000 characters.
>>>>>>>
>>>>>>>> Or should I use OCI instead of THIN driver?
>>>>>>>>
>>>>>>> Sorry I don't know (not a Oracle expert).
>>>>>>>
>>>>>>> regards, Armin
>>>>>>>
>>>>>>>> Thanks a lot for your answers.
>>>>>>>>
>>>>>>>> regrads Josef Wagner
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Armin Waibel <ar...@apache.org>.
could you post the mapping and source code of class
de.on_ergy.lakon.data.model.Log (it's sufficient to post fields/columns
log_data_export, og_data_default).
regards,
Armin
Josef Wagner wrote:
> Hello Armin,
> The problem width my outOfMemory apears also width 1.0.5
> I have written a small test code an now I know, why I'm getting the
> outOfMemory width OJB. I think it is a "bug" in OJB, because you read
> the data from ResultSet width getString() instead of getClob(). Width
> getString(), i get the outOfMemory
>
> Here my test
> -----------
> public void clobTest() {
> PersistenceBroker pb = getBroker();
> JdbcAccess jdbcAccess = pb.serviceJdbcAccess();
> ClassDescriptor logClassDesc =
> pb.getClassDescriptor(de.on_ergy.lakon.data.model.Log.class);
> ResultSetAndStatement rs = jdbcAccess.executeSQL("Select * from
> Log", logClassDesc, false);
> ResultSet r = rs.m_rs;
> Vector logDataExpVec = new Vector();
> Vector logDataDefaultVec = new Vector();
> try {
> while(r.next()) {
> logDataExpVec.addElement(r.getClob("log_data_export"));
> logDataDefaultVec.addElement(r.getClob("log_data_default"));
> }
> } catch(SQLException ex) {
> _log.error(ex);
> }
> _log.info("Fertig!!!");
> }
>
> -----
>
> How can we get a quick solution?
> Thanks a lot for your spend time!
>
> regards, josef
>
>
>
> Armin Waibel schrieb:
>>
>> by the way, do your test pass if you set the 'proxy-prefetching-limit'
>> of the relevant class-descriptor or reference/collection-descriptor's
>> to '0'? Then OJB shouldn't prefetch the references.
>>
>> regards,
>> Armin
>>
>>
>>
>> Armin Waibel wrote:
>>> Hi Josef,
>>>
>>> Josef Wagner wrote:
>>>> Hello Armin,
>>>>
>>>> no, I have allready replaced all CGLib classes width JDK classes. My
>>>> problem is, that i can't debug the following issue: -------- Caused
>>>> by: java.lang.NullPointerException at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>>
>>>>
>>>
>>> I think this is the access from the inner class
>>> PBMaterializationListener to the private field 'pb' in class
>>> QueryReferenceBroker.
>>> Decompiled code for QueryReferenceBroker:
>>> ...
>>> static org.apache.ojb.broker.core.PersistenceBrokerImpl
>>> access$000(org.apache.ojb.broker.core.QueryReferenceBroker);
>>> Code:
>>> 0: aload_0
>>> 1: getfield #4; //Field
>>> pb:Lorg/apache/ojb/broker/core/PersistenceBrokerImpl;
>>> 4: areturn
>>>
>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>>
>>>>
>>>>
>>>> -------- <code> Line 990: _listenedHandler =
>>>> pb.getProxyFactory().getIndirectionHandler(owner); </code>
>>>>
>>>> pb is != null
>>>>
>>>> I have no idea :o/. Are there any no features, that I have to keep in
>>>> mind?
>>>>
>>>
>>> I remember that I got a similar ".access$000" error some weeks ago.
>>> But I can't remember the reason. I thought it was a proxy issue (do
>>> you get the same error when using CGLIB-proxy classes?) - but seems
>>> this isn't the reason.
>>>
>>> Could you describe or post the test source code to reproduce the issue?
>>>
>>> regards,
>>> Armin
>>>
>>>
>>>> regards, Josef
>>>>
>>>>
>>>>
>>>> Armin Waibel schrieb:
>>>>> Hi Josef,
>>>>>
>>>>> could this be a proxy issue? Please check the settings in
>>>>> OJB.properties file - do you need CGLib based proxies?
>>>>>
>>>>> regards, Armin
>>>>>
>>>>> Josef Wagner wrote:
>>>>>> Hi Armin, i tried to starting my application width 1.0.5, but no
>>>>>> success. I can`t get any informations when looking into the log. I
>>>>>> think, it`s an Java Reflection Problem: Hier is the log output,
>>>>>> have you any idee ?
>>>>>>
>>>>>> java.lang.reflect.InvocationTargetException at
>>>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:357)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
>>>>>> at
>>>>>> org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog.buttonPressed(LoginDialog.java:114)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
>>>>>> at
>>>>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
>>>>>>
>>>>>> at
>>>>>> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
>>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at
>>>>>> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3125)
>>>>>> at
>>>>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2758)
>>>>>> at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
>>>>>> at org.eclipse.jface.window.Window.open(Window.java:787) at
>>>>>> de.on_ergy.base.ui.OnErgyDialog.open(OnErgyDialog.java:132) at
>>>>>> de.on_ergy.lakon.rcp.LakonWorkbenchWindowAdviser.postWindowOpen(LakonWorkbenchWindowAdviser.java:209)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.WorkbenchWindow.fireWindowOpened(WorkbenchWindow.java:1070)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:701)
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:677)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034) at
>>>>>> org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636) at
>>>>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
>>>>>> at
>>>>>> de.on_ergy.lakon.rcp.RcpApplication.run(RcpApplication.java:44) at
>>>>>> org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at
>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at
>>>>>> java.lang.reflect.Method.invoke(Unknown Source) at
>>>>>> org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at
>>>>>> org.eclipse.core.launcher.Main.basicRun(Main.java:278) at
>>>>>> org.eclipse.core.launcher.Main.run(Main.java:973) at
>>>>>> org.eclipse.core.launcher.Main.main(Main.java:948) Caused by:
>>>>>> org.apache.ojb.broker.PersistenceBrokerException:
>>>>>> java.lang.NullPointerException at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:290)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1597)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:518)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1486)
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1473)
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:480)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> de.on_ergy.lakon.data.DataProvider.select(DataProvider.java:248) at
>>>>>> de.on_ergy.lakon.bp.stammdaten.LakonBP.select(LakonBP.java:131) at
>>>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog$1.run(LoginDialog.java:97)
>>>>>> at
>>>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
>>>>>>
>>>>>>
>>>>>>
>>>>>> ... 36 more Caused by: java.lang.NullPointerException at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.<init>(QueryReferenceBroker.java:1048)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.<init>(QueryReferenceBroker.java:985)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReference(QueryReferenceBroker.java:413)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReferences(QueryReferenceBroker.java:495)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:490)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:280)
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:143)
>>>>>>
>>>>>>
>>>>>>
>>>>>> at
>>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:277)
>>>>>>
>>>>>>
>>>>>>
>>>>>> ... 47 more
>>>>>>
>>>>>>
>>>>>> thanks for your help! regrads Josef
>>>>>>
>>>>>> Armin Waibel schrieb:
>>>>>>> Hi Josef,
>>>>>>>
>>>>>>> Josef Wagner wrote:
>>>>>>>> Hello List,
>>>>>>>>
>>>>>>>> I have a problem width loading large data from tables width
>>>>>>>> clob-culumns. db: oracle 9.2.0.8 ojb: 1.0.4 driver: thin
>>>>>>>>
>>>>>>>> When i load 15000 rows, my applikation gets an
>>>>>>>> OutOfMemoryError. I have ensure, that Oracle width clobs is
>>>>>>>> the problem, width HSQLDB, all works fine. The data in the
>>>>>>>> clob-culumns are texts width AKTUALLY no more then 100
>>>>>>>> charakters.
>>>>>>>>
>>>>>>>> I have checked out the trunk of ojb and I see, that in the
>>>>>>>> platform package are some wrapper-classes for clob und blob?
>>>>>>>
>>>>>>> yep, I reworked the LOB-support a bit and add Blob/Clob
>>>>>>> java-types support (before OJB converts all LOB's to byte[]).
>>>>>>>
>>>>>>>
>>>>>>>> Unforunatelly, I can't test if this is the solution of my
>>>>>>>> problem, because I get lots of errors when starting my
>>>>>>>> application width a jar from the trunk version.
>>>>>>>>
>>>>>>>
>>>>>>> Don't use the trunk it's the alpha OJB 2.x. Please check out
>>>>>>> the OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5
>>>>>>> version.
>>>>>>>
>>>>>>>
>>>>>>>> Can anybody tell me, if the source in the trunk is the
>>>>>>>> solution for such problems I have?
>>>>>>>
>>>>>>> Don't know - give it a try.
>>>>>>>
>>>>>>>
>>>>>>>> Or is the solution to switch to oralce 10g?
>>>>>>>
>>>>>>> I run the LOB-test against OracleXE 10.2.0.1 and
>>>>>>> classes12_g_10.2.0.2.jar driver.
>>>>>>> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> The tests handle CLOB's up to 5000 characters.
>>>>>>>
>>>>>>>> Or should I use OCI instead of THIN driver?
>>>>>>>>
>>>>>>> Sorry I don't know (not a Oracle expert).
>>>>>>>
>>>>>>> regards, Armin
>>>>>>>
>>>>>>>> Thanks a lot for your answers.
>>>>>>>>
>>>>>>>> regrads Josef Wagner
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Josef Wagner <jo...@on-ergy.de>.
Hello Armin,
The problem width my outOfMemory apears also width 1.0.5
I have written a small test code an now I know, why I'm getting the
outOfMemory width OJB. I think it is a "bug" in OJB, because you read
the data from ResultSet width getString() instead of getClob(). Width
getString(), i get the outOfMemory
Here my test
-----------
public void clobTest() {
PersistenceBroker pb = getBroker();
JdbcAccess jdbcAccess = pb.serviceJdbcAccess();
ClassDescriptor logClassDesc =
pb.getClassDescriptor(de.on_ergy.lakon.data.model.Log.class);
ResultSetAndStatement rs = jdbcAccess.executeSQL("Select * from
Log", logClassDesc, false);
ResultSet r = rs.m_rs;
Vector logDataExpVec = new Vector();
Vector logDataDefaultVec = new Vector();
try {
while(r.next()) {
logDataExpVec.addElement(r.getClob("log_data_export"));
logDataDefaultVec.addElement(r.getClob("log_data_default"));
}
} catch(SQLException ex) {
_log.error(ex);
}
_log.info("Fertig!!!");
}
-----
How can we get a quick solution?
Thanks a lot for your spend time!
regards, josef
Armin Waibel schrieb:
>
> by the way, do your test pass if you set the 'proxy-prefetching-limit'
> of the relevant class-descriptor or reference/collection-descriptor's
> to '0'? Then OJB shouldn't prefetch the references.
>
> regards,
> Armin
>
>
>
> Armin Waibel wrote:
>> Hi Josef,
>>
>> Josef Wagner wrote:
>>> Hello Armin,
>>>
>>> no, I have allready replaced all CGLib classes width JDK classes. My
>>> problem is, that i can't debug the following issue: -------- Caused
>>> by: java.lang.NullPointerException at
>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>
>>>
>>
>> I think this is the access from the inner class
>> PBMaterializationListener to the private field 'pb' in class
>> QueryReferenceBroker.
>> Decompiled code for QueryReferenceBroker:
>> ...
>> static org.apache.ojb.broker.core.PersistenceBrokerImpl
>> access$000(org.apache.ojb.broker.core.QueryReferenceBroker);
>> Code:
>> 0: aload_0
>> 1: getfield #4; //Field
>> pb:Lorg/apache/ojb/broker/core/PersistenceBrokerImpl;
>> 4: areturn
>>
>>
>>>
>>> at
>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>
>>>
>>>
>>> -------- <code> Line 990: _listenedHandler =
>>> pb.getProxyFactory().getIndirectionHandler(owner); </code>
>>>
>>> pb is != null
>>>
>>> I have no idea :o/. Are there any no features, that I have to keep in
>>> mind?
>>>
>>
>> I remember that I got a similar ".access$000" error some weeks ago.
>> But I can't remember the reason. I thought it was a proxy issue (do
>> you get the same error when using CGLIB-proxy classes?) - but seems
>> this isn't the reason.
>>
>> Could you describe or post the test source code to reproduce the issue?
>>
>> regards,
>> Armin
>>
>>
>>> regards, Josef
>>>
>>>
>>>
>>> Armin Waibel schrieb:
>>>> Hi Josef,
>>>>
>>>> could this be a proxy issue? Please check the settings in
>>>> OJB.properties file - do you need CGLib based proxies?
>>>>
>>>> regards, Armin
>>>>
>>>> Josef Wagner wrote:
>>>>> Hi Armin, i tried to starting my application width 1.0.5, but no
>>>>> success. I can`t get any informations when looking into the log. I
>>>>> think, it`s an Java Reflection Problem: Hier is the log output,
>>>>> have you any idee ?
>>>>>
>>>>> java.lang.reflect.InvocationTargetException at
>>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:357)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
>>>>> at
>>>>> org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog.buttonPressed(LoginDialog.java:114)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
>>>>> at
>>>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
>>>>>
>>>>> at
>>>>> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
>>>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at
>>>>> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3125)
>>>>> at
>>>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2758)
>>>>> at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
>>>>> at org.eclipse.jface.window.Window.open(Window.java:787) at
>>>>> de.on_ergy.base.ui.OnErgyDialog.open(OnErgyDialog.java:132) at
>>>>> de.on_ergy.lakon.rcp.LakonWorkbenchWindowAdviser.postWindowOpen(LakonWorkbenchWindowAdviser.java:209)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.ui.internal.WorkbenchWindow.fireWindowOpened(WorkbenchWindow.java:1070)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:701)
>>>>>
>>>>> at
>>>>> org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:677)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706)
>>>>>
>>>>>
>>>>>
>>>>> at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034) at
>>>>> org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636) at
>>>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
>>>>> at
>>>>> de.on_ergy.lakon.rcp.RcpApplication.run(RcpApplication.java:44) at
>>>>> org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
>>>>>
>>>>>
>>>>>
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at
>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at
>>>>> java.lang.reflect.Method.invoke(Unknown Source) at
>>>>> org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at
>>>>> org.eclipse.core.launcher.Main.basicRun(Main.java:278) at
>>>>> org.eclipse.core.launcher.Main.run(Main.java:973) at
>>>>> org.eclipse.core.launcher.Main.main(Main.java:948) Caused by:
>>>>> org.apache.ojb.broker.PersistenceBrokerException:
>>>>> java.lang.NullPointerException at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:290)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1597)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:518)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1486)
>>>>>
>>>>> at
>>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1473)
>>>>>
>>>>> at
>>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:480)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> de.on_ergy.lakon.data.DataProvider.select(DataProvider.java:248) at
>>>>> de.on_ergy.lakon.bp.stammdaten.LakonBP.select(LakonBP.java:131) at
>>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog$1.run(LoginDialog.java:97)
>>>>> at
>>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
>>>>>
>>>>>
>>>>>
>>>>> ... 36 more Caused by: java.lang.NullPointerException at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.<init>(QueryReferenceBroker.java:1048)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.<init>(QueryReferenceBroker.java:985)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReference(QueryReferenceBroker.java:413)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReferences(QueryReferenceBroker.java:495)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:490)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:280)
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:143)
>>>>>
>>>>>
>>>>>
>>>>> at
>>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:277)
>>>>>
>>>>>
>>>>>
>>>>> ... 47 more
>>>>>
>>>>>
>>>>> thanks for your help! regrads Josef
>>>>>
>>>>> Armin Waibel schrieb:
>>>>>> Hi Josef,
>>>>>>
>>>>>> Josef Wagner wrote:
>>>>>>> Hello List,
>>>>>>>
>>>>>>> I have a problem width loading large data from tables width
>>>>>>> clob-culumns. db: oracle 9.2.0.8 ojb: 1.0.4 driver: thin
>>>>>>>
>>>>>>> When i load 15000 rows, my applikation gets an
>>>>>>> OutOfMemoryError. I have ensure, that Oracle width clobs is
>>>>>>> the problem, width HSQLDB, all works fine. The data in the
>>>>>>> clob-culumns are texts width AKTUALLY no more then 100
>>>>>>> charakters.
>>>>>>>
>>>>>>> I have checked out the trunk of ojb and I see, that in the
>>>>>>> platform package are some wrapper-classes for clob und blob?
>>>>>>
>>>>>> yep, I reworked the LOB-support a bit and add Blob/Clob
>>>>>> java-types support (before OJB converts all LOB's to byte[]).
>>>>>>
>>>>>>
>>>>>>> Unforunatelly, I can't test if this is the solution of my
>>>>>>> problem, because I get lots of errors when starting my
>>>>>>> application width a jar from the trunk version.
>>>>>>>
>>>>>>
>>>>>> Don't use the trunk it's the alpha OJB 2.x. Please check out
>>>>>> the OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5
>>>>>> version.
>>>>>>
>>>>>>
>>>>>>> Can anybody tell me, if the source in the trunk is the
>>>>>>> solution for such problems I have?
>>>>>>
>>>>>> Don't know - give it a try.
>>>>>>
>>>>>>
>>>>>>> Or is the solution to switch to oralce 10g?
>>>>>>
>>>>>> I run the LOB-test against OracleXE 10.2.0.1 and
>>>>>> classes12_g_10.2.0.2.jar driver.
>>>>>> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>>>>>>
>>>>>>
>>>>>>
>>>>>> The tests handle CLOB's up to 5000 characters.
>>>>>>
>>>>>>> Or should I use OCI instead of THIN driver?
>>>>>>>
>>>>>> Sorry I don't know (not a Oracle expert).
>>>>>>
>>>>>> regards, Armin
>>>>>>
>>>>>>> Thanks a lot for your answers.
>>>>>>>
>>>>>>> regrads Josef Wagner
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>>
>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Armin Waibel <ar...@apache.org>.
by the way, do your test pass if you set the 'proxy-prefetching-limit'
of the relevant class-descriptor or reference/collection-descriptor's to
'0'? Then OJB shouldn't prefetch the references.
regards,
Armin
Armin Waibel wrote:
> Hi Josef,
>
> Josef Wagner wrote:
>> Hello Armin,
>>
>> no, I have allready replaced all CGLib classes width JDK classes. My
>> problem is, that i can't debug the following issue: -------- Caused
>> by: java.lang.NullPointerException at
>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>
>>
>
> I think this is the access from the inner class
> PBMaterializationListener to the private field 'pb' in class
> QueryReferenceBroker.
> Decompiled code for QueryReferenceBroker:
> ...
> static org.apache.ojb.broker.core.PersistenceBrokerImpl
> access$000(org.apache.ojb.broker.core.QueryReferenceBroker);
> Code:
> 0: aload_0
> 1: getfield #4; //Field
> pb:Lorg/apache/ojb/broker/core/PersistenceBrokerImpl;
> 4: areturn
>
>
>>
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>
>>
>>
>> -------- <code> Line 990: _listenedHandler =
>> pb.getProxyFactory().getIndirectionHandler(owner); </code>
>>
>> pb is != null
>>
>> I have no idea :o/. Are there any no features, that I have to keep in
>> mind?
>>
>
> I remember that I got a similar ".access$000" error some weeks ago. But
> I can't remember the reason. I thought it was a proxy issue (do you get
> the same error when using CGLIB-proxy classes?) - but seems this isn't
> the reason.
>
> Could you describe or post the test source code to reproduce the issue?
>
> regards,
> Armin
>
>
>> regards, Josef
>>
>>
>>
>> Armin Waibel schrieb:
>>> Hi Josef,
>>>
>>> could this be a proxy issue? Please check the settings in
>>> OJB.properties file - do you need CGLib based proxies?
>>>
>>> regards, Armin
>>>
>>> Josef Wagner wrote:
>>>> Hi Armin, i tried to starting my application width 1.0.5, but no
>>>> success. I can`t get any informations when looking into the log. I
>>>> think, it`s an Java Reflection Problem: Hier is the log output,
>>>> have you any idee ?
>>>>
>>>> java.lang.reflect.InvocationTargetException at
>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:357)
>>>>
>>>>
>>>>
>>>> at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
>>>> at
>>>> org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
>>>>
>>>>
>>>>
>>>> at
>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog.buttonPressed(LoginDialog.java:114)
>>>>
>>>>
>>>>
>>>> at
>>>> org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
>>>> at
>>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
>>>>
>>>> at
>>>> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at
>>>> org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at
>>>> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3125)
>>>> at
>>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2758)
>>>> at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
>>>> at org.eclipse.jface.window.Window.open(Window.java:787) at
>>>> de.on_ergy.base.ui.OnErgyDialog.open(OnErgyDialog.java:132) at
>>>> de.on_ergy.lakon.rcp.LakonWorkbenchWindowAdviser.postWindowOpen(LakonWorkbenchWindowAdviser.java:209)
>>>>
>>>>
>>>>
>>>> at
>>>> org.eclipse.ui.internal.WorkbenchWindow.fireWindowOpened(WorkbenchWindow.java:1070)
>>>>
>>>>
>>>>
>>>> at
>>>> org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:701)
>>>> at
>>>> org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:677)
>>>>
>>>>
>>>>
>>>> at
>>>> org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282)
>>>>
>>>>
>>>>
>>>> at
>>>> org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223)
>>>>
>>>>
>>>>
>>>> at
>>>> org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
>>>>
>>>>
>>>>
>>>> at
>>>> org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706)
>>>>
>>>>
>>>>
>>>> at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034) at
>>>> org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636) at
>>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
>>>>
>>>>
>>>>
>>>> at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
>>>> at
>>>> de.on_ergy.lakon.rcp.RcpApplication.run(RcpApplication.java:44) at
>>>> org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
>>>>
>>>>
>>>>
>>>> at
>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
>>>>
>>>>
>>>>
>>>> at
>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
>>>>
>>>>
>>>>
>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at
>>>> java.lang.reflect.Method.invoke(Unknown Source) at
>>>> org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at
>>>> org.eclipse.core.launcher.Main.basicRun(Main.java:278) at
>>>> org.eclipse.core.launcher.Main.run(Main.java:973) at
>>>> org.eclipse.core.launcher.Main.main(Main.java:948) Caused by:
>>>> org.apache.ojb.broker.PersistenceBrokerException:
>>>> java.lang.NullPointerException at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:290)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1597)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>>
>>>>
>>>>
>>>> at
>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:518)
>>>>
>>>>
>>>>
>>>> at
>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1486)
>>>> at
>>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1473)
>>>> at
>>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:480)
>>>>
>>>>
>>>>
>>>> at
>>>> de.on_ergy.lakon.data.DataProvider.select(DataProvider.java:248) at
>>>> de.on_ergy.lakon.bp.stammdaten.LakonBP.select(LakonBP.java:131) at
>>>> de.on_ergy.lakon.rcp.dialog.LoginDialog$1.run(LoginDialog.java:97)
>>>> at
>>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
>>>>
>>>>
>>>>
>>>> ... 36 more Caused by: java.lang.NullPointerException at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.<init>(QueryReferenceBroker.java:1048)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.<init>(QueryReferenceBroker.java:985)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReference(QueryReferenceBroker.java:413)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReferences(QueryReferenceBroker.java:495)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:490)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:280)
>>>> at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:143)
>>>>
>>>>
>>>>
>>>> at
>>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:277)
>>>>
>>>>
>>>>
>>>> ... 47 more
>>>>
>>>>
>>>> thanks for your help! regrads Josef
>>>>
>>>> Armin Waibel schrieb:
>>>>> Hi Josef,
>>>>>
>>>>> Josef Wagner wrote:
>>>>>> Hello List,
>>>>>>
>>>>>> I have a problem width loading large data from tables width
>>>>>> clob-culumns. db: oracle 9.2.0.8 ojb: 1.0.4 driver: thin
>>>>>>
>>>>>> When i load 15000 rows, my applikation gets an
>>>>>> OutOfMemoryError. I have ensure, that Oracle width clobs is
>>>>>> the problem, width HSQLDB, all works fine. The data in the
>>>>>> clob-culumns are texts width AKTUALLY no more then 100
>>>>>> charakters.
>>>>>>
>>>>>> I have checked out the trunk of ojb and I see, that in the
>>>>>> platform package are some wrapper-classes for clob und blob?
>>>>>
>>>>> yep, I reworked the LOB-support a bit and add Blob/Clob
>>>>> java-types support (before OJB converts all LOB's to byte[]).
>>>>>
>>>>>
>>>>>> Unforunatelly, I can't test if this is the solution of my
>>>>>> problem, because I get lots of errors when starting my
>>>>>> application width a jar from the trunk version.
>>>>>>
>>>>>
>>>>> Don't use the trunk it's the alpha OJB 2.x. Please check out
>>>>> the OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5
>>>>> version.
>>>>>
>>>>>
>>>>>> Can anybody tell me, if the source in the trunk is the
>>>>>> solution for such problems I have?
>>>>>
>>>>> Don't know - give it a try.
>>>>>
>>>>>
>>>>>> Or is the solution to switch to oralce 10g?
>>>>>
>>>>> I run the LOB-test against OracleXE 10.2.0.1 and
>>>>> classes12_g_10.2.0.2.jar driver.
>>>>> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>>>>>
>>>>>
>>>>>
>>>>> The tests handle CLOB's up to 5000 characters.
>>>>>
>>>>>> Or should I use OCI instead of THIN driver?
>>>>>>
>>>>> Sorry I don't know (not a Oracle expert).
>>>>>
>>>>> regards, Armin
>>>>>
>>>>>> Thanks a lot for your answers.
>>>>>>
>>>>>> regrads Josef Wagner
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>>
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>> additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Armin Waibel <ar...@apache.org>.
Hi Josef,
Josef Wagner wrote:
> Hello Armin,
>
> no, I have allready replaced all CGLib classes width JDK classes. My
> problem is, that i can't debug the following issue: -------- Caused
> by: java.lang.NullPointerException at
> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>
I think this is the access from the inner class
PBMaterializationListener to the private field 'pb' in class
QueryReferenceBroker.
Decompiled code for QueryReferenceBroker:
...
static org.apache.ojb.broker.core.PersistenceBrokerImpl
access$000(org.apache.ojb.broker.core.QueryReferenceBroker);
Code:
0: aload_0
1: getfield #4; //Field
pb:Lorg/apache/ojb/broker/core/PersistenceBrokerImpl;
4: areturn
>
> at
> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>
>
> -------- <code> Line 990: _listenedHandler =
> pb.getProxyFactory().getIndirectionHandler(owner); </code>
>
> pb is != null
>
> I have no idea :o/. Are there any no features, that I have to keep in
> mind?
>
I remember that I got a similar ".access$000" error some weeks ago. But
I can't remember the reason. I thought it was a proxy issue (do you get
the same error when using CGLIB-proxy classes?) - but seems this isn't
the reason.
Could you describe or post the test source code to reproduce the issue?
regards,
Armin
> regards, Josef
>
>
>
> Armin Waibel schrieb:
>> Hi Josef,
>>
>> could this be a proxy issue? Please check the settings in
>> OJB.properties file - do you need CGLib based proxies?
>>
>> regards, Armin
>>
>> Josef Wagner wrote:
>>> Hi Armin, i tried to starting my application width 1.0.5, but no
>>> success. I can`t get any informations when looking into the log.
>>> I think, it`s an Java Reflection Problem: Hier is the log output,
>>> have you any idee ?
>>>
>>> java.lang.reflect.InvocationTargetException at
>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:357)
>>>
>>>
>>> at
>>> org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
>>> at
>>> org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
>>>
>>>
>>> at
>>> de.on_ergy.lakon.rcp.dialog.LoginDialog.buttonPressed(LoginDialog.java:114)
>>>
>>>
>>> at
>>> org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
>>> at
>>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
>>> at
>>> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
>>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at
>>> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3125)
>>> at
>>> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2758)
>>> at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
>>> at org.eclipse.jface.window.Window.open(Window.java:787) at
>>> de.on_ergy.base.ui.OnErgyDialog.open(OnErgyDialog.java:132) at
>>> de.on_ergy.lakon.rcp.LakonWorkbenchWindowAdviser.postWindowOpen(LakonWorkbenchWindowAdviser.java:209)
>>>
>>>
>>> at
>>> org.eclipse.ui.internal.WorkbenchWindow.fireWindowOpened(WorkbenchWindow.java:1070)
>>>
>>>
>>> at
>>> org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:701)
>>> at
>>> org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:677)
>>>
>>>
>>> at
>>> org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282)
>>>
>>>
>>> at
>>> org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223)
>>>
>>>
>>> at
>>> org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
>>>
>>>
>>> at
>>> org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706)
>>>
>>>
>>> at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034) at
>>> org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636) at
>>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
>>>
>>>
>>> at
>>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
>>> at
>>> de.on_ergy.lakon.rcp.RcpApplication.run(RcpApplication.java:44)
>>> at
>>> org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
>>>
>>>
>>> at
>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
>>>
>>>
>>> at
>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
>>>
>>>
>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>>> at java.lang.reflect.Method.invoke(Unknown Source) at
>>> org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at
>>> org.eclipse.core.launcher.Main.basicRun(Main.java:278) at
>>> org.eclipse.core.launcher.Main.run(Main.java:973) at
>>> org.eclipse.core.launcher.Main.main(Main.java:948) Caused by:
>>> org.apache.ojb.broker.PersistenceBrokerException:
>>> java.lang.NullPointerException at
>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:290)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1597)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>>
>>>
>>> at
>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:518)
>>>
>>>
>>> at
>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1486)
>>> at
>>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1473)
>>> at
>>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:480)
>>>
>>>
>>> at
>>> de.on_ergy.lakon.data.DataProvider.select(DataProvider.java:248)
>>> at
>>> de.on_ergy.lakon.bp.stammdaten.LakonBP.select(LakonBP.java:131)
>>> at
>>> de.on_ergy.lakon.rcp.dialog.LoginDialog$1.run(LoginDialog.java:97)
>>> at
>>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
>>>
>>>
>>> ... 36 more Caused by: java.lang.NullPointerException at
>>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.<init>(QueryReferenceBroker.java:1048)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.<init>(QueryReferenceBroker.java:985)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReference(QueryReferenceBroker.java:413)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReferences(QueryReferenceBroker.java:495)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:490)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:280)
>>> at
>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:143)
>>>
>>>
>>> at
>>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:277)
>>>
>>>
>>> ... 47 more
>>>
>>>
>>> thanks for your help! regrads Josef
>>>
>>> Armin Waibel schrieb:
>>>> Hi Josef,
>>>>
>>>> Josef Wagner wrote:
>>>>> Hello List,
>>>>>
>>>>> I have a problem width loading large data from tables width
>>>>> clob-culumns. db: oracle 9.2.0.8 ojb: 1.0.4 driver: thin
>>>>>
>>>>> When i load 15000 rows, my applikation gets an
>>>>> OutOfMemoryError. I have ensure, that Oracle width clobs is
>>>>> the problem, width HSQLDB, all works fine. The data in the
>>>>> clob-culumns are texts width AKTUALLY no more then 100
>>>>> charakters.
>>>>>
>>>>> I have checked out the trunk of ojb and I see, that in the
>>>>> platform package are some wrapper-classes for clob und blob?
>>>>
>>>> yep, I reworked the LOB-support a bit and add Blob/Clob
>>>> java-types support (before OJB converts all LOB's to byte[]).
>>>>
>>>>
>>>>> Unforunatelly, I can't test if this is the solution of my
>>>>> problem, because I get lots of errors when starting my
>>>>> application width a jar from the trunk version.
>>>>>
>>>>
>>>> Don't use the trunk it's the alpha OJB 2.x. Please check out
>>>> the OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5
>>>> version.
>>>>
>>>>
>>>>> Can anybody tell me, if the source in the trunk is the
>>>>> solution for such problems I have?
>>>>
>>>> Don't know - give it a try.
>>>>
>>>>
>>>>> Or is the solution to switch to oralce 10g?
>>>>
>>>> I run the LOB-test against OracleXE 10.2.0.1 and
>>>> classes12_g_10.2.0.2.jar driver.
>>>> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>>>>
>>>>
>>>> The tests handle CLOB's up to 5000 characters.
>>>>
>>>>> Or should I use OCI instead of THIN driver?
>>>>>
>>>> Sorry I don't know (not a Oracle expert).
>>>>
>>>> regards, Armin
>>>>
>>>>> Thanks a lot for your answers.
>>>>>
>>>>> regrads Josef Wagner
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>>>
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>>> additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
>> additional commands, e-mail: ojb-user-help@db.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org For
> additional commands, e-mail: ojb-user-help@db.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Josef Wagner <jo...@on-ergy.de>.
Hello Armin,
no, I have allready replaced all CGLib classes width JDK classes.
My problem is, that i can't debug the following issue:
--------
Caused by: java.lang.NullPointerException
at
org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
at
org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
--------
<code>
Line 990: _listenedHandler =
pb.getProxyFactory().getIndirectionHandler(owner);
</code>
pb is != null
I have no idea :o/. Are there any no features, that I have to keep in mind?
regards, Josef
Armin Waibel schrieb:
> Hi Josef,
>
> could this be a proxy issue? Please check the settings in
> OJB.properties file - do you need CGLib based proxies?
>
> regards,
> Armin
>
> Josef Wagner wrote:
>> Hi Armin,
>> i tried to starting my application width 1.0.5, but no success.
>> I can`t get any informations when looking into the log.
>> I think, it`s an Java Reflection Problem:
>> Hier is the log output, have you any idee ?
>>
>> java.lang.reflect.InvocationTargetException
>> at
>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:357)
>>
>> at
>> org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
>> at
>> org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
>>
>> at
>> de.on_ergy.lakon.rcp.dialog.LoginDialog.buttonPressed(LoginDialog.java:114)
>>
>> at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
>> at
>> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
>> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
>> at
>> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3125)
>> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2758)
>> at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
>> at org.eclipse.jface.window.Window.open(Window.java:787)
>> at de.on_ergy.base.ui.OnErgyDialog.open(OnErgyDialog.java:132)
>> at
>> de.on_ergy.lakon.rcp.LakonWorkbenchWindowAdviser.postWindowOpen(LakonWorkbenchWindowAdviser.java:209)
>>
>> at
>> org.eclipse.ui.internal.WorkbenchWindow.fireWindowOpened(WorkbenchWindow.java:1070)
>>
>> at
>> org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:701)
>> at
>> org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:677)
>>
>> at
>> org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282)
>>
>> at
>> org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223)
>>
>> at
>> org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
>>
>> at
>> org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706)
>>
>> at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034)
>> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636)
>> at
>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
>>
>> at
>> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
>> at de.on_ergy.lakon.rcp.RcpApplication.run(RcpApplication.java:44)
>> at
>> org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
>>
>> at
>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
>>
>> at
>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
>>
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>> at java.lang.reflect.Method.invoke(Unknown Source)
>> at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
>> at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
>> at org.eclipse.core.launcher.Main.run(Main.java:973)
>> at org.eclipse.core.launcher.Main.main(Main.java:948)
>> Caused by: org.apache.ojb.broker.PersistenceBrokerException:
>> java.lang.NullPointerException
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:290)
>>
>> at
>> org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1597)
>>
>> at
>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>
>> at
>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>>
>> at
>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:518)
>>
>> at
>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1486)
>> at
>> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1473)
>> at
>> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:480)
>>
>> at de.on_ergy.lakon.data.DataProvider.select(DataProvider.java:248)
>> at de.on_ergy.lakon.bp.stammdaten.LakonBP.select(LakonBP.java:131)
>> at de.on_ergy.lakon.rcp.dialog.LoginDialog$1.run(LoginDialog.java:97)
>> at
>> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
>>
>> ... 36 more
>> Caused by: java.lang.NullPointerException
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>>
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>>
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.<init>(QueryReferenceBroker.java:1048)
>>
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.<init>(QueryReferenceBroker.java:985)
>>
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReference(QueryReferenceBroker.java:413)
>>
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReferences(QueryReferenceBroker.java:495)
>>
>> at
>> org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:490)
>>
>> at
>> org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:280)
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:143)
>>
>> at
>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:277)
>>
>> ... 47 more
>>
>>
>> thanks for your help!
>> regrads
>> Josef
>>
>> Armin Waibel schrieb:
>>> Hi Josef,
>>>
>>> Josef Wagner wrote:
>>>> Hello List,
>>>>
>>>> I have a problem width loading large data from tables width
>>>> clob-culumns.
>>>> db: oracle 9.2.0.8
>>>> ojb: 1.0.4
>>>> driver: thin
>>>>
>>>> When i load 15000 rows, my applikation gets an OutOfMemoryError. I
>>>> have ensure, that Oracle width clobs is the problem, width HSQLDB,
>>>> all works fine.
>>>> The data in the clob-culumns are texts width AKTUALLY no more then
>>>> 100 charakters.
>>>>
>>>> I have checked out the trunk of ojb and I see, that in the platform
>>>> package are some wrapper-classes for clob und blob?
>>>
>>> yep, I reworked the LOB-support a bit and add Blob/Clob java-types
>>> support (before OJB converts all LOB's to byte[]).
>>>
>>>
>>>> Unforunatelly, I can't test if this is the solution of my problem,
>>>> because I get lots of errors when starting my application width a
>>>> jar from the trunk version.
>>>>
>>>
>>> Don't use the trunk it's the alpha OJB 2.x. Please check out the
>>> OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5 version.
>>>
>>>
>>>> Can anybody tell me, if the source in the trunk is the solution for
>>>> such problems I have?
>>>
>>> Don't know - give it a try.
>>>
>>>
>>>> Or is the solution to switch to oralce 10g?
>>>
>>> I run the LOB-test against OracleXE 10.2.0.1 and
>>> classes12_g_10.2.0.2.jar driver.
>>> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>>>
>>> The tests handle CLOB's up to 5000 characters.
>>>
>>>> Or should I use OCI instead of THIN driver?
>>>>
>>> Sorry I don't know (not a Oracle expert).
>>>
>>> regards,
>>> Armin
>>>
>>>> Thanks a lot for your answers.
>>>>
>>>> regrads
>>>> Josef Wagner
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Armin Waibel <ar...@apache.org>.
Hi Josef,
could this be a proxy issue? Please check the settings in OJB.properties
file - do you need CGLib based proxies?
regards,
Armin
Josef Wagner wrote:
> Hi Armin,
> i tried to starting my application width 1.0.5, but no success.
> I can`t get any informations when looking into the log.
> I think, it`s an Java Reflection Problem:
> Hier is the log output, have you any idee ?
>
> java.lang.reflect.InvocationTargetException
> at
> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:357)
>
> at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
> at
> org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
>
> at
> de.on_ergy.lakon.rcp.dialog.LoginDialog.buttonPressed(LoginDialog.java:114)
> at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
> at
> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
> at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3125)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2758)
> at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
> at org.eclipse.jface.window.Window.open(Window.java:787)
> at de.on_ergy.base.ui.OnErgyDialog.open(OnErgyDialog.java:132)
> at
> de.on_ergy.lakon.rcp.LakonWorkbenchWindowAdviser.postWindowOpen(LakonWorkbenchWindowAdviser.java:209)
>
> at
> org.eclipse.ui.internal.WorkbenchWindow.fireWindowOpened(WorkbenchWindow.java:1070)
>
> at
> org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:701)
> at
> org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:677)
>
> at
> org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282)
>
> at
> org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223)
> at
> org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
>
> at
> org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706)
>
> at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034)
> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636)
> at
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
> at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
> at de.on_ergy.lakon.rcp.RcpApplication.run(RcpApplication.java:44)
> at
> org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
>
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
>
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
>
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
> at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
> at org.eclipse.core.launcher.Main.run(Main.java:973)
> at org.eclipse.core.launcher.Main.main(Main.java:948)
> Caused by: org.apache.ojb.broker.PersistenceBrokerException:
> java.lang.NullPointerException
> at
> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:290)
>
> at
> org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1597)
>
> at
> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>
> at
> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
>
> at
> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:518)
>
> at
> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1486)
> at
> de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1473)
> at
> de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:480)
>
> at de.on_ergy.lakon.data.DataProvider.select(DataProvider.java:248)
> at de.on_ergy.lakon.bp.stammdaten.LakonBP.select(LakonBP.java:131)
> at de.on_ergy.lakon.rcp.dialog.LoginDialog$1.run(LoginDialog.java:97)
> at
> org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
>
> ... 36 more
> Caused by: java.lang.NullPointerException
> at
> org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
>
> at
> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
>
> at
> org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.<init>(QueryReferenceBroker.java:1048)
>
> at
> org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.<init>(QueryReferenceBroker.java:985)
>
> at
> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReference(QueryReferenceBroker.java:413)
>
> at
> org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReferences(QueryReferenceBroker.java:495)
>
> at
> org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:490)
>
> at
> org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:280)
> at
> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:143)
>
> at
> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:277)
>
> ... 47 more
>
>
> thanks for your help!
> regrads
> Josef
>
> Armin Waibel schrieb:
>> Hi Josef,
>>
>> Josef Wagner wrote:
>>> Hello List,
>>>
>>> I have a problem width loading large data from tables width
>>> clob-culumns.
>>> db: oracle 9.2.0.8
>>> ojb: 1.0.4
>>> driver: thin
>>>
>>> When i load 15000 rows, my applikation gets an OutOfMemoryError. I
>>> have ensure, that Oracle width clobs is the problem, width HSQLDB,
>>> all works fine.
>>> The data in the clob-culumns are texts width AKTUALLY no more then
>>> 100 charakters.
>>>
>>> I have checked out the trunk of ojb and I see, that in the platform
>>> package are some wrapper-classes for clob und blob?
>>
>> yep, I reworked the LOB-support a bit and add Blob/Clob java-types
>> support (before OJB converts all LOB's to byte[]).
>>
>>
>>> Unforunatelly, I can't test if this is the solution of my problem,
>>> because I get lots of errors when starting my application width a jar
>>> from the trunk version.
>>>
>>
>> Don't use the trunk it's the alpha OJB 2.x. Please check out the
>> OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5 version.
>>
>>
>>> Can anybody tell me, if the source in the trunk is the solution for
>>> such problems I have?
>>
>> Don't know - give it a try.
>>
>>
>>> Or is the solution to switch to oralce 10g?
>>
>> I run the LOB-test against OracleXE 10.2.0.1 and
>> classes12_g_10.2.0.2.jar driver.
>> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>>
>> The tests handle CLOB's up to 5000 characters.
>>
>>> Or should I use OCI instead of THIN driver?
>>>
>> Sorry I don't know (not a Oracle expert).
>>
>> regards,
>> Armin
>>
>>> Thanks a lot for your answers.
>>>
>>> regrads
>>> Josef Wagner
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Josef Wagner <jo...@on-ergy.de>.
Hi Armin,
i tried to starting my application width 1.0.5, but no success.
I can`t get any informations when looking into the log.
I think, it`s an Java Reflection Problem:
Hier is the log output, have you any idee ?
java.lang.reflect.InvocationTargetException
at
org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:357)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291)
at
org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:447)
at
de.on_ergy.lakon.rcp.dialog.LoginDialog.buttonPressed(LoginDialog.java:114)
at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556)
at
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3125)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2758)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:809)
at org.eclipse.jface.window.Window.open(Window.java:787)
at de.on_ergy.base.ui.OnErgyDialog.open(OnErgyDialog.java:132)
at
de.on_ergy.lakon.rcp.LakonWorkbenchWindowAdviser.postWindowOpen(LakonWorkbenchWindowAdviser.java:209)
at
org.eclipse.ui.internal.WorkbenchWindow.fireWindowOpened(WorkbenchWindow.java:1070)
at
org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:701)
at
org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:677)
at
org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282)
at
org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223)
at
org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
at
org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706)
at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
at de.on_ergy.lakon.rcp.RcpApplication.run(RcpApplication.java:44)
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)
Caused by: org.apache.ojb.broker.PersistenceBrokerException:
java.lang.NullPointerException
at
org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:290)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1597)
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:393)
at
de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:518)
at
de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1486)
at
de.on_ergy.lakon.data.DataProviderOjb.select(DataProviderOjb.java:1473)
at
de.on_ergy.base.provider.OnErgyDataProviderOjb.select(OnErgyDataProviderOjb.java:480)
at de.on_ergy.lakon.data.DataProvider.select(DataProvider.java:248)
at de.on_ergy.lakon.bp.stammdaten.LakonBP.select(LakonBP.java:131)
at de.on_ergy.lakon.rcp.dialog.LoginDialog$1.run(LoginDialog.java:97)
at
org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:346)
... 36 more
Caused by: java.lang.NullPointerException
at
org.apache.ojb.broker.core.QueryReferenceBroker.access$000(QueryReferenceBroker.java:64)
at
org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.addThisListenerTo(QueryReferenceBroker.java:990)
at
org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.<init>(QueryReferenceBroker.java:1048)
at
org.apache.ojb.broker.core.QueryReferenceBroker$PBMaterializationListener.<init>(QueryReferenceBroker.java:985)
at
org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReference(QueryReferenceBroker.java:413)
at
org.apache.ojb.broker.core.QueryReferenceBroker.retrieveReferences(QueryReferenceBroker.java:495)
at
org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:490)
at
org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:280)
at
org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:143)
at
org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:277)
... 47 more
thanks for your help!
regrads
Josef
Armin Waibel schrieb:
> Hi Josef,
>
> Josef Wagner wrote:
>> Hello List,
>>
>> I have a problem width loading large data from tables width
>> clob-culumns.
>> db: oracle 9.2.0.8
>> ojb: 1.0.4
>> driver: thin
>>
>> When i load 15000 rows, my applikation gets an OutOfMemoryError. I
>> have ensure, that Oracle width clobs is the problem, width HSQLDB,
>> all works fine.
>> The data in the clob-culumns are texts width AKTUALLY no more then
>> 100 charakters.
>>
>> I have checked out the trunk of ojb and I see, that in the platform
>> package are some wrapper-classes for clob und blob?
>
> yep, I reworked the LOB-support a bit and add Blob/Clob java-types
> support (before OJB converts all LOB's to byte[]).
>
>
>> Unforunatelly, I can't test if this is the solution of my problem,
>> because I get lots of errors when starting my application width a jar
>> from the trunk version.
>>
>
> Don't use the trunk it's the alpha OJB 2.x. Please check out the
> OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5 version.
>
>
>> Can anybody tell me, if the source in the trunk is the solution for
>> such problems I have?
>
> Don't know - give it a try.
>
>
>> Or is the solution to switch to oralce 10g?
>
> I run the LOB-test against OracleXE 10.2.0.1 and
> classes12_g_10.2.0.2.jar driver.
> http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
>
> The tests handle CLOB's up to 5000 characters.
>
>> Or should I use OCI instead of THIN driver?
>>
> Sorry I don't know (not a Oracle expert).
>
> regards,
> Armin
>
>> Thanks a lot for your answers.
>>
>> regrads
>> Josef Wagner
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
>> For additional commands, e-mail: ojb-user-help@db.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: Oracle Blob Clob Lob Problem
Posted by Armin Waibel <ar...@apache.org>.
Hi Josef,
Josef Wagner wrote:
> Hello List,
>
> I have a problem width loading large data from tables width clob-culumns.
> db: oracle 9.2.0.8
> ojb: 1.0.4
> driver: thin
>
> When i load 15000 rows, my applikation gets an OutOfMemoryError. I have
> ensure, that Oracle width clobs is the problem, width HSQLDB, all works
> fine.
> The data in the clob-culumns are texts width AKTUALLY no more then 100
> charakters.
>
> I have checked out the trunk of ojb and I see, that in the platform
> package are some wrapper-classes for clob und blob?
yep, I reworked the LOB-support a bit and add Blob/Clob java-types
support (before OJB converts all LOB's to byte[]).
> Unforunatelly, I can't test if this is the solution of my problem,
> because I get lots of errors when starting my application width a jar
> from the trunk version.
>
Don't use the trunk it's the alpha OJB 2.x. Please check out the
OJB_1_0_RELEASE branch it's the stable upcoming OJB 1.0.5 version.
> Can anybody tell me, if the source in the trunk is the solution for such
> problems I have?
Don't know - give it a try.
> Or is the solution to switch to oralce 10g?
I run the LOB-test against OracleXE 10.2.0.1 and
classes12_g_10.2.0.2.jar driver.
http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/test/org/apache/ojb/broker/lob/LOBTest.java?view=markup
The tests handle CLOB's up to 5000 characters.
> Or should I use OCI instead of THIN driver?
>
Sorry I don't know (not a Oracle expert).
regards,
Armin
> Thanks a lot for your answers.
>
> regrads
> Josef Wagner
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org