Hi everyone,
A slight correction to my previous post. I noticed I pasted the same exception twice.
What I meant to say about the ODMG insert was...
...
...
...
Unfortuanately inserts don't seem to work for ODMG when setting eager-release to
false. I get a first stack trace,
08:51:44,603 INFO [CachedConnectionManager] Successfully closed a connection for you.
Please close them yourself: [EMAIL PROTECTED]
java.lang.Exception: Stack Trace
at
org.jboss.resource.connectionmanager.CachedConnectionManager.closeAll(CachedConnectionManager.java:376)
at
org.jboss.resource.connectionmanager.CachedConnectionManager.popMetaAwareObject(CachedConnectionManager.java:199)
at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:190)
at
org.jboss.ejb.plugins.StatefulSessionInstanceInterceptor.invoke(StatefulSessionInstanceInterceptor.java:271)
at
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:84)
at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:243)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:104)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
at
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
at
org.jboss.ejb.StatefulSessionContainer.internalInvoke(StatefulSessionContainer.java:410)
at org.jboss.ejb.Container.invoke(Container.java:674)
etc...
followed by a few pages of
08:51:44,837 INFO [STDOUT] [org.apache.ojb.broker.accesslayer.StatementsForClassImpl]
ERROR:
08:51:44,837 INFO [STDOUT] Connection handle has been closed and is unusable
08:51:44,837 ERROR [STDERR] java.sql.SQLException: Connection handle has been closed
and is unusable
08:51:44,853 ERROR [STDERR] at
org.jboss.resource.adapter.jdbc.WrappedConnection.checkStatus(WrappedConnection.java:800)
08:51:44,853 ERROR [STDERR] at
org.jboss.resource.adapter.jdbc.WrappedConnection.prepareStatement(WrappedConnection.java:240)
08:51:44,853 ERROR [STDERR] at
org.apache.ojb.broker.util.WrappedConnection.prepareStatement(WrappedConnection.java:205)
08:51:44,853 ERROR [STDERR] at
org.apache.ojb.broker.accesslayer.StatementsForClassImpl.prepareStatement(StatementsForClassImpl.java:241)
08:51:44,869 ERROR [STDERR] at
org.apache.ojb.broker.accesslayer.StatementsForClassImpl.getInsertStmt(StatementsForClassImpl.java:168)
08:51:44,869 ERROR [STDERR] at
org.apache.ojb.broker.accesslayer.StatementManager.getInsertStatement(StatementManager.java:654)
08:51:44,869 ERROR [STDERR] at
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInsert(JdbcAccessImpl.java:192)
08:51:44,869 ERROR [STDERR] at
org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1919)
08:51:44,884 ERROR [STDERR] at
org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1834)
08:51:44,884 ERROR [STDERR] at
org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1792)
08:51:44,884 ERROR [STDERR] at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:161)
08:51:44,884 ERROR [STDERR] at
org.apache.ojb.odmg.states.StateNewDirty.commit(StateNewDirty.java:148)
08:51:44,900 ERROR [STDERR] at
org.apache.ojb.odmg.ObjectEnvelopeTable.commitAllEnvelopes(ObjectEnvelopeTable.java:234)
08:51:44,900 ERROR [STDERR] at
org.apache.ojb.odmg.ObjectEnvelopeTable.commit(ObjectEnvelopeTable.java:189)
08:51:44,900 ERROR [STDERR] at
org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(TransactionImpl.java:342)
08:51:44,916 ERROR [STDERR] at
org.apache.ojb.odmg.TransactionImpl.prepare(TransactionImpl.java:595)
08:51:44,916 ERROR [STDERR] at
org.apache.ojb.odmg.J2EETransactionImpl.beforeCompletion(J2EETransactionImpl.java:155)
08:51:44,916 ERROR [STDERR] at
org.jboss.tm.TransactionImpl.doBeforeCompletion(TransactionImpl.java:1297)
08:51:44,916 ERROR [STDERR] at
org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:338)
and...
08:51:45,166 INFO [STDOUT] [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] ERROR:
08:51:45,181 INFO [STDOUT] PersistenceBrokerException during the execution of the
insert: Could not build statement ask for: Connection handle has been closed and is
unusable
08:51:45,181 INFO [STDOUT] Could not build statement ask for: Connection handle has
been closed and is unusable
08:51:45,181 ERROR [STDERR] java.sql.SQLException: Connection handle has been closed
and is unusable
at
org.jboss.resource.adapter.jdbc.WrappedConnection.checkStatus(WrappedConnection.java:800)
at
org.jboss.resource.adapter.jdbc.WrappedConnection.prepareStatement(WrappedConnection.java:240)
at
org.apache.ojb.broker.util.WrappedConnection.prepareStatement(WrappedConnection.java:205)
at
org.apache.ojb.broker.accesslayer.StatementsForClassImpl.prepareStatement(StatementsForClassImpl.java:241)
at
org.apache.ojb.broker.accesslayer.StatementsForClassImpl.getInsertStmt(StatementsForClassImpl.java:168)
at
org.apache.ojb.broker.accesslayer.StatementManager.getInsertStatement(StatementManager.java:654)
at
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInsert(JdbcAccessImpl.java:192)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1919)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1834)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1792)
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:161)
at org.apache.ojb.odmg.states.StateNewDirty.commit(StateNewDirty.java:148)
at
org.apache.ojb.odmg.ObjectEnvelopeTable.commitAllEnvelopes(ObjectEnvelopeTable.java:234)
at org.apache.ojb.odmg.ObjectEnvelopeTable.commit(ObjectEnvelopeTable.java:189)
at
org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(TransactionImpl.java:342)
at org.apache.ojb.odmg.TransactionImpl.prepare(TransactionImpl.java:595)
at
org.apache.ojb.odmg.J2EETransactionImpl.beforeCompletion(J2EETransactionImpl.java:155)
at org.jboss.tm.TransactionImpl.doBeforeCompletion(TransactionImpl.java:1297)
at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:338)
etc...
08:51:46,775 INFO [STDOUT] [org.apache.ojb.odmg.TransactionImpl] ERROR:
08:51:46,775 INFO [STDOUT] Could not prepare for commit: null
08:51:46,790 INFO [STDOUT] [org.apache.ojb.odmg.J2EETransactionImpl] ERROR:
08:51:46,790 INFO [STDOUT] beforeCompletion: commit failed
08:51:46,806 ERROR [STDERR] org.apache.ojb.odmg.TransactionAbortedExceptionOJB
at org.apache.ojb.odmg.ObjectEnvelopeTable.commit(ObjectEnvelopeTable.java:211)
at
org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(TransactionImpl.java:342)
at org.apache.ojb.odmg.TransactionImpl.prepare(TransactionImpl.java:595)
at
org.apache.ojb.odmg.J2EETransactionImpl.beforeCompletion(J2EETransactionImpl.java:155)
at org.jboss.tm.TransactionImpl.doBeforeCompletion(TransactionImpl.java:1297)
at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:338)
etc...
Seems with eager-release false, JBoss reposses the connection during the commit phase
triggering problems for OJB which result in the transaction (Container managed) being
aborted.
I've tried attaching the full detailed series of stack traces. This consists of a 1600
line textfile with lots of "Connection handle has been closed and is unusable"
SqlExceptions. Hope it gets through and is helpful.
Thankfully PB inserts seem to work with no trouble so perhaps here we will be heading
towards a PB Insert/ODMG Query hybrid solution.
Sorry for any previous confusion.
Gary
-----Original Message-----
From: Gary Richards
Sent: 02 June 2003 18:24
To: OJB Users List; [EMAIL PROTECTED]
Subject: RE: Limited collection returned
Hi,
It's almost certain (at least for me with JBoss) the eager-release. I turned it off
and everything i expected came back through the query.
Did get a few stack traces of the sort
[CachedConnectionManager] Successfully closed a connection for you. Please close them
yourself: [EMAIL PROTECTED]
at
org.jboss.resource.connectionmanager.CachedConnectionManager.closeAll(CachedConnectionManager.java:376)
at
org.jboss.resource.connectionmanager.CachedConnectionManager.popMetaAwareObject(CachedConnectionManager.java:199)
at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:190)
at
org.jboss.ejb.plugins.StatefulSessionInstanceInterceptor.invoke(StatefulSessionInstanceInterceptor.java:271)
etc...
I had eager-release on as thats's what it said to do in the deployment docs for JBoss
3.0 and greater. Unfortuanately inserts don't seem to work for ODMG when setting
eager-release to false. I get a first stack trace,
18:08:22,070 INFO [CachedConnectionManager] Successfully closed a connection for you.
Please close them yourself: [EMAIL PROTECTED]
java.lang.Exception: Stack Trace
at
org.jboss.resource.connectionmanager.CachedConnectionManager.closeAll(CachedConnectionManager.java:376)
at
org.jboss.resource.connectionmanager.CachedConnectionManager.popMetaAwareObject(CachedConnectionManager.java:199)
at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:190)
at
org.jboss.ejb.plugins.StatefulSessionInstanceInterceptor.invoke(StatefulSessionInstanceInterceptor.java:271)
followed by a few pages of
18:08:22,070 INFO [CachedConnectionManager] Successfully closed a connection for you.
Please close them yourself: [EMAIL PROTECTED]
java.lang.Exception: Stack Trace
at
org.jboss.resource.connectionmanager.CachedConnectionManager.closeAll(CachedConnectionManager.java:376)
at
org.jboss.resource.connectionmanager.CachedConnectionManager.popMetaAwareObject(CachedConnectionManager.java:199)
at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:190)
at
org.jboss.ejb.plugins.StatefulSessionInstanceInterceptor.invoke(StatefulSessionInstanceInterceptor.java:271)
etc...
which is probably why we need eager-release for JBoss. Presumably the eager-release
gives OJB a hint to cleanup its connections before JBoss comes to repossess them.
regards
Gary
-----Original Message-----
From: Thomas Mahler [mailto:[EMAIL PROTECTED]
Sent: 02 June 2003 17:44
To: OJB Users List
Subject: Re: Limited collection returned
So both of you use the eager-release="true" feature.
Have you tried to disable it?
Maybe Armin knows a bit more about this feature ?
cheers,
Thomas
Ken Dempster wrote:
> My setup is as follows:
> Jboss 3.2.1
> OBJ 1.0 RC3
> OJB.properties set to PersistenceBrokerImpl,
> PersistenceBrokerFactoryDefaultImpl, and ConnectionFactoryManagedImpl,
> ObjectCachePerBrokerImpl.
> DB2 database
> Server AS400 running both Jboss and DB2
> I generate my own JdbcConnectionDescriptor with the following settings:
> JdbcConnectionDescriptor descriptor = new JdbcConnectionDescriptor();
> descriptor.setBatchMode(false);
> descriptor.setDatasourceName("java:DB2DS");
> descriptor.setDbAlias("serverName");
> descriptor.setDbms("Db2");
> descriptor.setDefaultConnection(true);
> descriptor.setEagerRelease(true);
> descriptor.setIgnoreAutoCommitExceptions(false);
> descriptor.setJcdAlias("java:DB2DS");
> descriptor.setJdbcLevel("2.0");
> descriptor.setPassWord("password");
> descriptor.setProtocol("jdbc");
> descriptor.setSubProtocol("db2");
> descriptor.setUseAutoCommit(0);
> descriptor.setUserName("user_name");
> SequenceDescriptor sequenceDescriptor = new
> SequenceDescriptor("org.apache.ojb.broker.util.sequence.SequenceManagerN
> extValImpl");
>
> - Ken
>
>
>
>
>
>
> Ken Dempster
> Programmer Analyst
> Vision Solutions, Inc.
>
> 17911 Von Karman Ave, 5th Floor
> Irvine, CA 92614
> UNITED STATES
>
> Tel: +1 (949) 253-6500
> Fax: +1 (949) 253-6501
> Email: [EMAIL PROTECTED]
> <http://www.visionsolutions.com/>
> Disclaimer - 6/2/2003
> The contents of this e-mail (and any attachments) are confidential, may be
> privileged, and may contain copyright material of Vision Solutions, Inc. or third
> parties. You may only reproduce or distribute the material if you are expressly
> authorized by Vision Solutions to do so. If you are not the intended recipient, any
> use, disclosure or copying of this e-mail (and any attachments) is unauthorized. If
> you have received this e-mail in error, please immediately delete it and any copies
> of it from your system and notify us via e-mail at [EMAIL PROTECTED]
> -----Original Message-----
> From: McCaffrey, John G. [mailto:[EMAIL PROTECTED]
> Sent: Monday, June 02, 2003 8:02 AM
> To: 'OJB Users List'
> Subject: RE: Limited collection returned
>
>
> Thanks for your investigation Gary. This is exactly what I was
> suspecting (RSIterator not iterating), now I guess the thing is to
> figure out how the result set got closed. I am not sure why there seem
> to be only a few people having this problem, it seems like such basic
> functionality that there would be more of an uproar. It makes me wonder
> what the afflicted have in common, and for those people that can get a
> collection of dependent objects, how is their setup different (assuming
> that there are people that are not having this problem)
>
> my setup
> I have the basic OJB.props settings
> default PersistenceBrokerImpl, PersistenceBrokerFactoryDefaultImpl,
> ConnectionManagerImpl,
> and I am using ConnectionFactoryDBCPImpl (though I have tried the others
> and still have the problem).
>
> Windows 2000, db-ojb-1.0.rc3.jar, commons-dbcp.jar
> I am using WSAD (with datasource) and DB2, and I am using the PB API.
>
>
> ######
> Gary, Dan, Jin, Ken, etc what is your basic setup?
>
> Is there anybody with this same setup that is able to get a collection
> of dependent objects? (help me figure out what i have that is different)
> ###### I feel like a solution is right around the corner. (and its a
> good thing, because I am supposed to go to production by the end of the
> week!)
>
> Thanks to Gary and everyone that is looking into this.
> -john
>
> -----Original Message-----
> From: Gary Richards [mailto:[EMAIL PROTECTED]
> Sent: Monday, June 02, 2003 9:05 AM
> To: OJB Users List
> Subject: RE: Limited collection returned
>
>
>
> Hi everyone,
>
> Thought I'd offer my current observations on this as I work with Dan and
> am running off the same codebase (JBoss 3.2.x, MySql, ODMG etc....) and
> therefore trying to crack the same problem.
>
> I've been using the eclipse debugger to step through the action of
> invoking a query. I have spent most of the recent time observing
> private ManageableCollection getCollectionByQuery(Class collectionClass,
> Class itemClass, Query query) of the PersistanceBrokerImpl class (line
> 1293), inparticular the actions of the while loop on line 1335 which
> reads as,
>
> while (((endAt == Query.NO_END_AT_INDEX) || (retrievedCount <
> numberOfObjectsToFetch)) && iter.hasNext())
>
> I have witnessed the hasNext() call of this condition to return false
> during the second cycle of the loop, even though I now there to be 13
> rows in the database table and 13 elements behind the Iterator. I have
> determined this (for those who know eclipse) by editing the detail
> formatter of the RSIterator class to read "this.size()" which shows 13
> when I highlight it.
>
> This leads me onto RSIterator.hasNext() (line 216) which I have moved
> onto observe as a result.
> I noticed that on the second cycle of the iterator, the call from within
> hasNext() will issue
>
> hasNext = m_rsAndStmt.m_rs.next(); (line 223)
>
> This throws an expection which is caught by the same method so that
> false is returned.
>
> catch (Exception ex)
> {
> hasNext = false;
> }
>
> I have noticed that the message given by this exception ex (which is not
> logged, only gets caught) is "Operation not allowed after ResultSet
> closed". This certainly suggests that something has closed the ResultSet
> before the iterator has been fininshed with (exactly what it says in the
> message ;) ).
>
> This almost always seems to happen after dependant objects have been
> retieved as when we set auto-retrieve = "false" in repository_user.xml
> for the appropriate property we get all rows of the single table we
> query on but no dependant objects, however when we set auto-retrieve =
> "true" we get only the first row of the single table and all its
> dependant objects.
>
> Is this possibly linked to the eager-release feature which needs to be
> enabled for operation on JBoss, or a side effect of bug OJB172?
>
> Any other thoughts?
>
> regards
>
> Gary
>
>
> -----Original Message-----
> From: Dan Hanley
> Sent: Mon 02/06/2003 14:38
> To: OJB Users List
> Cc:
> Subject: RE: Limited collection returned
>
>
>
> Jin
> Are you also running in a managed environment (e.g. jBoss)?
> I suspect the bug you're referring to is:
> Type : Defect
> Issue Id : OJB172
> Reported by: Rob Kischuk
> rkischuk - (rkischuk <at> gttx.org)
>
> Details:
>
> Platform: PC
> Operating system: windows 2000
> Summary: Loading composite object leads to truncated collection
> Description: Repeated calls to retrieve a collection of objects
> that each contain another object are
> retrieving truncated results, which are incrementally built to
> their proper length using repeated
> requests.
> Status: New
> Priority: Undecided
> Severity: Major
> Functional area: Setup
>
> ... which sounds like it could be the culprit. A colleague of
> mine is trying to trace through with the eclipse debugger to see if we
> can cast any light on this.
>
> You are not alone, its holding a lot of people up...
>
> Dan
>
> -----Original Message-----
> From: Jin Bal [mailto:[EMAIL PROTECTED]
> Sent: Fri 30/05/2003 22:07
> To: OJB Users List
> Cc:
> Subject: Re: Limited collection returned
>
>
>
> I'm also having this problem - thank god someone else's
> said so ! it's been
> driving me mad ;-)
>
> i've been using ojb since 0.9.5 and have only noticed it
> recently. (sorry
> can't be more precise than that)
> here's the offending class descriptor
>
> <class-descriptor
> class="com.buyacar.businessobjects.Vehicle"
> table="vehicle">
> ....blah blah properties etc
> <!-- IMAGES -->
> <collection-descriptor
> name="images"
> auto-retrieve="true"
>
> element-class-ref="com.buyacar.businessobjects.VehicleImage">
> <inverse-foreignkey field-id-ref="1"/>
> </collection-descriptor>
> </class-descriptor>
>
> <class-descriptor
> class="com.buyacar.businessobjects.BACVehicleDetails"
> table="bac_details">
>
> <reference-descriptor
> name="vehicle"
>
> class-ref="com.buyacar.businessobjects.Vehicle"
> auto-retrieve="true">
> <foreignkey field-id-ref="2"/>
> </reference-descriptor>
>
> </class-descriptor>
>
> whenever I load a BACVehicleDetails (and therefore a
> Vehicle) I only ever
> get one image in the collection.
>
>
> more over I have a search engine that only returns 1
> result the first time
> then 2 on the second submit then 3 ......etc :-(
>
> heres the search engine code
>
> PersistenceBroker broker = null;
> try {
> broker = getBroker();
> Criteria criteria = new Criteria();
>
> // check if theyve specified a price bracket
> if(searchParams.getMaxPrice() !=null &&
> searchParams.getMinPrice()!=null) {
>
>
> criteria.addBetween("price",searchParams.getMinPrice(),searchParams.getM
> axPr
> ice());
> } else if(searchParams.getMaxPrice()!=null
> &&
> searchParams.getMinPrice()==null) {
>
>
> criteria.addLessOrEqualThan("price",searchParams.getMaxPrice());
> } else if(searchParams.getMaxPrice()==null
> &&
> searchParams.getMinPrice()!=null) {
>
>
> criteria.addGreaterOrEqualThan("price",searchParams.getMinPrice());
> }
>
> if(searchParams.getManufacturer() !=null &&
> searchParams.getModel()==null) {
>
>
> criteria.addEqualTo("vehicle.model.manufacturerId",searchParams.getManuf
> actu
> rer());
> }
>
> if(searchParams.getModel() !=null) {
>
>
> criteria.addEqualTo("vehicle.modelId",searchParams.getModel());
> }
> if(searchParams.getBodyStyle() != null) {
>
>
> criteria.addEqualTo("vehicle.derivative.bodyStyleId",searchParams.getBod
> ySty
> le());
> }
> if(searchParams.getFuelType() != null) {
>
>
> criteria.addEqualTo("vehicle.derivative.fuelId",searchParams.getFuelType
> ());
> }
>
> if(searchParams.getOrderBy() !=null) {
>
> criteria.addOrderByAscending(searchParams.getOrderBy());
> }
>
> if(searchParams.getChannel()!=null &&
> !searchParams.getChannel().equals("")) {
>
> criteria.addEqualTo("channel",searchParams.getChannel());
> }
>
>
> criteria.addEqualTo("status",searchParams.getStatus());
>
> criteria.addEqualTo("visibility",searchParams.getVisibility());
>
> criteria.addGreaterOrEqualThan("displayTo",new
> java.util.Date());
>
> criteria.addLessOrEqualThan("displayFrom",new
> java.util.Date());
> Query query = new
> QueryByCriteria(BACVehicleDetails.class,criteria,true);
>
> Collection c =
> broker.getCollectionByQuery(query);
> logger.debug("collection size: "+c.size());
> Iterator results = c.iterator();
> ArrayList list = new ArrayList();
>
> while(results.hasNext()) {
> // perform cast now to check that we've
> got the correct
> object type
> BACVehicleDetails vDetails =
> (BACVehicleDetails)
> results.next();
> list.add(vDetails);
> }
> return list;
> } finally {
> if (broker!=null) {
> broker.close();
> }
> }
>
> sorry for the long code post
>
>
> it seems that when the cache is filled up it works ok
>
> help this is stopping me going live with the site :-(
>
> BTW I did a search on the dev list and noticed a bug
> opened on the 23rd MAy
> but i can't find it now
>
> cheers
>
>
> Jin
>
> ----- Original Message -----
> From: "McCaffrey, John G." <[EMAIL PROTECTED]>
> To: "'OJB Users List'" <[EMAIL PROTECTED]>
> Sent: Friday, May 30, 2003 5:52 PM
> Subject: RE: Limited collection returned
>
>
> > yes, I also noticed that, and I tried pre-fetching,
> but that didn't help
> me
> > either.
> >
> > so are you having the same problem then? You are only
> getting one row
> back,
> > instead of many?
> >
> > (my collection is filled properly with the right child
> elements, but I am
> > not getting all of the parents that match the query,
> and the query is
> select
> > all parents)
> >
> > can you see the SQL? I couldn't get P6Spy to work, so
> I don't know what
> the
> > sql looks like.
> >
> > thanks for speaking up, I wonder if anyone else has
> had/is having this
> > problem!
> >
> > -John
> >
> > -----Original Message-----
> > From: Dan Hanley [mailto:[EMAIL PROTECTED]
> > Sent: Friday, May 30, 2003 11:47 AM
> > To: OJB Users List
> > Subject: RE: Limited collection returned
> >
> >
> > John
> > Setting auto-retrieve = "false" works for me using
> JBoss & mySQL *except*
> > that then I don't get any dependant ojbects loaded :-(
> >
> >
> > -----Original Message-----
> > From: McCaffrey, John G.
> [mailto:[EMAIL PROTECTED]
> > Sent: 30 May 2003 17:45
> > To: 'OJB Users List'
> > Subject: RE: Limited collection returned
> >
> >
> > I have been having the same problem. It seems like the
> initial query
> > actually gets all the rows, but the RSIterator only
> gives you one at a
> time.
> > In my situation if I have 4 rows that match the
> query, and I execute the
> > query once, I only get one row, each additional time I
> execute the query I
> > get one more row (all previous rows are also returned
> in the collection).
> > This is only happening for a referenced collection,
> all of my other
> queries
> > are working fine. I have no Idea what the deal is, I
> really hope that
> > someone can help you.
> >
> > -John
> >
> > -----Original Message-----
> > From: Ken Dempster
> [mailto:[EMAIL PROTECTED]
> > Sent: Friday, May 30, 2003 11:38 AM
> > To: [EMAIL PROTECTED]
> > Subject: Limited collection returned
> >
> >
> > Most everything works except I only get one out of the
> know four row
> > objects from the table in my collection. I want to
> get all the row
> > objects in the table. My question is why am I only
> getting only one row
> > object? I am not sure what I am doing something
> wrong.
> >
> > Here is how I have things setup. I have set jboss 3.2
> as suggested in
> > the deployment section of the documentation and have
> jboss configured it
> > with data source to connect to a DB2 database. I am
> requesting a
> > collection from a client to a SessionBean that
> delegates to a
> > PersistenceBroker instance. Basicly I am using the
> code
> in
> > PersistenceBrokerBean as a template for my EJB. I do
> generate my own
> > JdbcConnectionDescriptor and pass it to the
> ConnectionRepository instead
> > of using the repository.xml to define my
> JdbcConnectionDescriptor.
> >
> > My query looks as follows:
> > Query query = new QueryByCriteria(Runner.class, null);
> >
> > Collection list =
> >
> getPersistenceBrokerRemote().getCollectionByQuery(query);
> >
> >
> > My ClassDescriptor of the collection of objects I am
> trying to get is
> > defined in the repository_user.xml as follows :
> >
> > <class-descriptor class="test.ojb.Runner"
> table="KENLIB.RUNNER">
> >
> > <field-descriptor name="m_id" column="ID"
> jdbc-type="INTEGER"
> > primarykey="true" autoincrement="true"/>
> >
> > <field-descriptor name="m_name" column="NAME"
> jdbc-type="VARCHAR"/>
> >
> > <collection-descriptor name="m_times"
> element-class-ref="test.ojb.Time">
> >
> > <inverse-foreignkey field-ref="m_id"/>
> >
> > </collection-descriptor>
> >
> > </class-descriptor>
> >
> > <class-descriptor class="test.ojb.Race"
> table="KENLIB.RACE">
> >
> > <field-descriptor name="m_id" column="ID"
> jdbc-type="INTEGER"
> > primarykey="true" autoincrement="true"/>
> >
> > <field-descriptor name="m_location" column="LOCATION"
> > jdbc-type="VARCHAR"/>
> >
> > <field-descriptor name="m_date" column="DATE"
> jdbc-type="DATE"/>
> >
> > </class-descriptor>
> >
> > <class-descriptor class="test.ojb.Time"
> table="KENLIB.RACE_TIME">
> >
> > <field-descriptor name="m_id" column="ID"
> jdbc-type="INTEGER"
> > primarykey="true" autoincrement="true"/>
> >
> > <field-descriptor name="m_runner_id"
> column="RUNNER_ID"
> > jdbc-type="INTEGER"/>
> >
> > <field-descriptor name="m_race_id" column="RACE_ID"
> > jdbc-type="INTEGER"/>
> >
> > <field-descriptor name="m_time" column="TIME"
> jdbc-type="VARCHAR"/>
> >
> > <reference-descriptor name="m_race"
> class-ref="test.ojb.Race">
> >
> > <foreignkey field-ref="m_race_id"/>
> >
> > </reference-descriptor>
> >
> > </class-descriptor>
> >
> >
> >
> >
> > Ken Dempster
> > Programmer Analyst
> > Vision Solutions, Inc.
> >
> > 17911 Von Karman Ave, 5th Floor
> > Irvine, CA 92614
> > UNITED STATES
> >
> > Tel: +1 (949) 253-6500
> > Fax: +1 (949) 253-6501
> > Email: [EMAIL PROTECTED]
> > <http://www.visionsolutions.com/>
> > Disclaimer - 5/30/2003
> > The contents of this e-mail (and any attachments) are
> confidential, may be
> > privileged, and may contain copyright material of
> Vision Solutions, Inc.
> or
> > third parties. You may only reproduce or distribute
> the material if you
> are
> > expressly authorized by Vision Solutions to do so. If
> you are not the
> > intended recipient, any use, disclosure or copying of
> this e-mail (and any
> > attachments) is unauthorized. If you have received
> this e-mail in error,
> > please immediately delete it and any copies of it from
> your system and
> > notify us via e-mail at [EMAIL PROTECTED]
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > For additional commands, e-mail:
> [EMAIL PROTECTED]
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > For additional commands, e-mail:
> [EMAIL PROTECTED]
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > For additional commands, e-mail:
> [EMAIL PROTECTED]
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]
>
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]