objectbridge-developers Mailing List for ObJectRelationalBridge (Page 28)
Brought to you by:
thma
You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(14) |
Dec
(20) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(33) |
Feb
(8) |
Mar
(3) |
Apr
(1) |
May
(18) |
Jun
(6) |
Jul
(15) |
Aug
(71) |
Sep
(29) |
Oct
(43) |
Nov
(77) |
Dec
(54) |
2002 |
Jan
(54) |
Feb
(147) |
Mar
(144) |
Apr
(163) |
May
(307) |
Jun
(240) |
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
From: Jakob B. <jbr...@ho...> - 2002-04-04 06:46:41
|
hi, i can reproduce this behaviour. it's caused by an error in RsIterator method getIdentityFromResultSet(): the pkValues are taken from the wron position in the row: ... for (int i = 0; i < pkFields.length; i++) { fld = pkFields[i]; pkValues[i] = m_row[fld.getColNo() - 1]; //pkValues[i] = m_row[i]; DOES NOT WORK } // return identity object build up from primary keys return new Identity(getExtentClass(), pkValues); ... hth jakob ----- Original Message ----- From: "John Freeborg" <jfr...@so...> To: "Thomas Mahler" <tho...@ho...> Cc: <Obj...@li...> Sent: Wednesday, April 03, 2002 6:44 PM Subject: RE: [OJB-developers] Field descriptor order requirement and primary keys Thank you for your detailed reply Thomas! However, there is I believe definitely a bug here, but I'm not communicating it effectively so I created a simple test case based on your example showing the problem. All the necessary files are attached in the zip. When you select all the products that have a value of 1 you should get these 3: Cars BMW 34000 1 BMW 330ci 1 Cars Volvo 23000 2 Volvo 990 1 Boats Swan 2500000 4 55 foot 1 But when you use OJB you don't. You get: Product[id=1,name=BMW,price=34000,stock=1category=Cars] Product[id=1,name=BMW,price=34000,stock=1category=Cars] Product[id=4,name=Swan,price=2500000,stock=1category=Boats] When I dug into this using my debugger, I found that the snippet of code in RsIterator.java was the problem (or appeared to be - perhaps the root problem lies elsewhere). Hope this helps illustrate the problem with the code that I'm seeing. Just trying to help make OJB even better! I'm using 0.8.361, but I uncommented some of the logging stuff in the JdbcAccess just to get more info on what was going on. SQL Server 2000 w/ SP3 and NetDirect JSQLConnect JDBC drivers. Regards, - John -----Original Message----- From: Thomas Mahler [mailto:tho...@ho...] Sent: Wednesday, April 03, 2002 5:13 AM To: John Freeborg Cc: Obj...@li... Subject: Re: [OJB-developers] Field descriptor order requirement and primary keys Hi John, John Freeborg wrote: > I guess I'm confused. > > In my existing database schema, the primary key column(s) are not always > the first ones in the table. No problem. > > Also, I sometimes have "extra" columns in a table that I don't want OJB > to do anything with so they aren't even in the repository.xml as it > would just slow things down more. No problem. > Is this allowed as long as those > columns have default values to handle any sql inserts OJB would perform? > OJB won't touch these columns, as it does not know anything about them! > With that background, what should I be setting my id="" attributes of > the FieldDescriptor's to? They can't possibly be the order of the > columns in the table because then the one with > <PrimaryKey>true</PrimaryKey> will not have id="1" as it is the 4th > column in the table. > Say we have this table: CREATE TABLE PRODUCT ( NAME CHAR(100), PRICE DOUBLE, ID INT PRIMARY KEY, HIDDEN VARCHAR(1000), STOCK INT ) This is the persistent class: public class Product { private int id; protected String name; protected double price; // column HIDDEN is not mapped to any attribute protected int stock; } This is the ClassDescriptor: <ClassDescriptor id="product"> <class.name>tutorial.Product</class.name> <table.name>PRODUCT</table.name> <FieldDescriptor id="1"> <field.name>name</field.name> <column.name>NAME</column.name> <jdbc_type>CHAR</jdbc_type> </FieldDescriptor> <FieldDescriptor id="2"> <field.name>price</field.name> <column.name>PRICE</column.name> <jdbc_type>DOUBLE</jdbc_type> </FieldDescriptor> <FieldDescriptor id="3"> <field.name>id</field.name> <column.name>ID</column.name> <jdbc_type>INT</jdbc_type> <PrimaryKey>true</PrimaryKey> <autoincrement>true</autoincrement> </FieldDescriptor> <FieldDescriptor id="4"> <field.name>stock</field.name> <column.name>STOCK</column.name> <jdbc_type>INT</jdbc_type> </FieldDescriptor> </ClassDescriptor> The ids of the FieldDescriptors correspond directly to the *order* of the mapped table columns. E.g. the stock column is *not* the fourth column of the table. but it is the fourth *mapped* column. >>From the RsIterator code snippet below, there is an assumption that the > primary keys are always first in the m_row member. this would be an uneccessary restriction! > And the ordering of > the m_row member seems to correspond to the id="" numbers from the field > descriptor. That's right > > So, my assertion is that if you have a field descriptor with > <PrimaryKey>true</PrimaryKey> and it is not id="1" then OJB doesn't > work. As long as you maintain the order of the mapped columns in the FK ids OJB does work! > And by extension if you had a compound primary key with multiple > field descriptors having <PrimaryKey> elements, they would need to be 1, > 2, 3, etc. they might as well be 4, 17, 23 ! > Is that just the way it is designed? I don't see this documented > anywhere, but I may have missed it of course. > I thought it was documented somewhere, but did not find it :-( > If this is true, I'll volunteer to add some checking of this during the > parsing of repository.xml as I think this is a pretty error prone part > of mapping. > Maybe it would be the best thing to eliminate the id based lookup of columns as there are several things like freeform SQL queries that don't work well with this approach. cu, Thomas > Thanks, > - John > > > -----Original Message----- > From: Thomas Mahler [mailto:tho...@ho...] > Sent: Tuesday, April 02, 2002 2:58 PM > To: John Freeborg > Cc: Obj...@li... > Subject: Re: [OJB-developers] Field descriptor order requirement and > primary keys > > Hi John, > > FieldDescriptor need a numeric ID. The Ids must ordered ascending > according to the corresponding columns in the database table. > > The physical position in the xml repository is not important. > > HTH, > > Thomas > > There is some code that > > John Freeborg wrote: > > >>Does OJB have a requirement that in the repository.xml file, all >> > primary > >>key field descriptors must be first inside a class descriptor? >> >>I don't have it that way (my primary key field descriptor happened to >> > be > >>number 4, not 1). After scratching my head a lot on why my query for >> > a > >>collection looked so strange, I hauled out BugSeeker and found the >>following code marked with ---> below that seems to assume a certain >>primary key field descriptor order. Interestingly the line above that >>is commented out doesn't appear to have this problem. >> >>Is this an unintended side effect of the optimization? Is this >> > broken? > >>Thanks, >> - John >> >> >>>From RsIterator.java in 0.8.361: >> >> protected Identity getIdentityFromResultSet() throws >>PersistenceBrokerException >> { >> try >> { >> // fill primary key values from Resultset >> FieldDescriptor fld; >> FieldDescriptor[] pkFields = m_mif.getPkFields(); >> Object[] pkValues = new Object[pkFields.length]; >> >> for (int i = 0; i < pkFields.length; i++) >> { >> fld = pkFields[i]; >> //pkValues[i] = JdbcAccess.getObjectFromColumn(m_rs, >>fld); >>---> pkValues[i] = m_row[i]; >> } >> // return identity object build up from primary keys >> return new Identity(getExtentClass(), pkValues); >> } >> catch (Throwable t) >> { >> logger.error(t); >> throw new PersistenceBrokerException(t); >> } >> } |
From: John F. <jfr...@so...> - 2002-04-03 21:12:13
|
I used to use Castor before OJB. One area where Castor performance killed me was in deleting objects that had a lot of other relationships. In this case, I had to force Castor object caching off and intermix straight JDBC calls (made the difference between 15 minutes and about 20 seconds in terms of delete time). From what I can discern so far, OJB is not any better in this regard. In order to delete objects from the database, I have to fully materialize them (which can be cost prohibitive if you don't care about them). For example, suppose I have a Customer. The Customer has a 1:m relationship to Orders. Orders have a 1:m relationship to OrderItems. If I want to delete a Customer (and all the Orders and OrderItems that Customer has) what happens if the Customer has 1000 Orders and each Order has 1000 OrderItems? Major ouch. One area that seemed natural to me is to extend the PersistenceBroker interface to implement something like deleteByQuery() and then possibly use the QueryBySQL() object to setup a few SQL statements which efficiently delete all the rows in the proper order so that FK relationships aren't violated. Of course this sort of thing would have to interact with the object cache also somehow (the easiest being to simply flush the whole thing, but it could be more sophisticated perhaps). Thoughts? Has anyone else solved this sort of problem in a better way? Thanks,=20 - John |
From: Leandro R. S. C. <le...@ib...> - 2002-04-03 19:24:31
|
Hi all. this is the secind time I submit this PATCH. I patches Log4jLoggerImpl to load log4j.properties from your app classpath. Anyone with commit privileges willing to apply this ? -- Leandro Rodrigo Saad Cruz IT - Inter Business Tecnologia e Servicos (IB) http://www.ibnetwork.com.br |
From: Leandro R. S. C. <le...@ib...> - 2002-04-03 19:24:02
|
Hi all. this is the secind time I submit this PATCH. I patches Log4jLoggerImpl to load log4j.properties from your app classpath. Anyone with commit privileges willing to apply this ? -- Leandro Rodrigo Saad Cruz IT - Inter Business Tecnologia e Servicos (IB) http://www.ibnetwork.com.br |
From: Thomas M. <tho...@ho...> - 2002-04-03 19:08:43
|
Hi Anil, please work through tutorial2 to learn about the ODMG API. The comments in org.odmg.Transaction and org.odmg.Database explain the=20 behaviour of these methods in detail. On http://www.javaskyline.com/database.html#odbms you'll find a lot of=20 links to ODMG related resources. HTH, Thomas Anil Kona wrote: > Thomas, > Could u tell me whats the difference between tx.lock(..) and db.makePer= sist().. > the context of their usage ?both looks like they do same thing > =20 > Thanks, > -Anil > =20 > 9u^=C9=9AXXy'`y=D7=AFzZ)z%q=07z?X=1E~wXu^rs=3D=3D >=20 |
From: John F. <jfr...@so...> - 2002-04-03 16:45:02
|
Thank you for your detailed reply Thomas! However, there is I believe definitely a bug here, but I'm not communicating it effectively so I created a simple test case based on your example showing the problem. All the necessary files are attached in the zip. When you select all the products that have a value of 1 you should get these 3: Cars BMW 34000 1 BMW 330ci 1 Cars Volvo 23000 2 Volvo 990 1 Boats Swan 2500000 4 55 foot 1 But when you use OJB you don't. You get: Product[id=3D1,name=3DBMW,price=3D34000,stock=3D1category=3DCars] Product[id=3D1,name=3DBMW,price=3D34000,stock=3D1category=3DCars] Product[id=3D4,name=3DSwan,price=3D2500000,stock=3D1category=3DBoats] When I dug into this using my debugger, I found that the snippet of code in RsIterator.java was the problem (or appeared to be - perhaps the root problem lies elsewhere). Hope this helps illustrate the problem with the code that I'm seeing. Just trying to help make OJB even better! I'm using 0.8.361, but I uncommented some of the logging stuff in the JdbcAccess just to get more info on what was going on. SQL Server 2000 w/ SP3 and NetDirect JSQLConnect JDBC drivers. Regards, - John -----Original Message----- From: Thomas Mahler [mailto:tho...@ho...] Sent: Wednesday, April 03, 2002 5:13 AM To: John Freeborg Cc: Obj...@li... Subject: Re: [OJB-developers] Field descriptor order requirement and primary keys Hi John, John Freeborg wrote: > I guess I'm confused. >=20 > In my existing database schema, the primary key column(s) are not always > the first ones in the table. No problem. >=20 > Also, I sometimes have "extra" columns in a table that I don't want OJB > to do anything with so they aren't even in the repository.xml as it > would just slow things down more.=20 No problem. > Is this allowed as long as those > columns have default values to handle any sql inserts OJB would perform? >=20 OJB won't touch these columns, as it does not know anything about them! > With that background, what should I be setting my id=3D"" attributes = of > the FieldDescriptor's to? They can't possibly be the order of the > columns in the table because then the one with > <PrimaryKey>true</PrimaryKey> will not have id=3D"1" as it is the 4th > column in the table. >=20 Say we have this table: CREATE TABLE PRODUCT ( NAME CHAR(100), PRICE DOUBLE, ID INT PRIMARY KEY, HIDDEN VARCHAR(1000), STOCK INT ) This is the persistent class: public class Product { private int id; protected String name; protected double price; // column HIDDEN is not mapped to any attribute protected int stock; } This is the ClassDescriptor: <ClassDescriptor id=3D"product"> <class.name>tutorial.Product</class.name> <table.name>PRODUCT</table.name> <FieldDescriptor id=3D"1"> <field.name>name</field.name> <column.name>NAME</column.name> <jdbc_type>CHAR</jdbc_type> </FieldDescriptor> <FieldDescriptor id=3D"2"> <field.name>price</field.name> <column.name>PRICE</column.name> <jdbc_type>DOUBLE</jdbc_type> </FieldDescriptor> <FieldDescriptor id=3D"3"> <field.name>id</field.name> <column.name>ID</column.name> <jdbc_type>INT</jdbc_type> <PrimaryKey>true</PrimaryKey> <autoincrement>true</autoincrement> </FieldDescriptor> <FieldDescriptor id=3D"4"> <field.name>stock</field.name> <column.name>STOCK</column.name> <jdbc_type>INT</jdbc_type> </FieldDescriptor> </ClassDescriptor> The ids of the FieldDescriptors correspond directly to the *order* of=20 the mapped table columns. E.g. the stock column is *not* the fourth=20 column of the table. but it is the fourth *mapped* column. >>From the RsIterator code snippet below, there is an assumption that the > primary keys are always first in the m_row member.=20 this would be an uneccessary restriction! > And the ordering of > the m_row member seems to correspond to the id=3D"" numbers from the field > descriptor. That's right >=20 > So, my assertion is that if you have a field descriptor with > <PrimaryKey>true</PrimaryKey> and it is not id=3D"1" then OJB doesn't > work. =20 As long as you maintain the order of the mapped columns in the FK ids=20 OJB does work! > And by extension if you had a compound primary key with multiple > field descriptors having <PrimaryKey> elements, they would need to be 1, > 2, 3, etc. they might as well be 4, 17, 23 ! > Is that just the way it is designed? I don't see this documented > anywhere, but I may have missed it of course. >=20 I thought it was documented somewhere, but did not find it :-( > If this is true, I'll volunteer to add some checking of this during the > parsing of repository.xml as I think this is a pretty error prone part > of mapping. >=20 Maybe it would be the best thing to eliminate the id based lookup of=20 columns as there are several things like freeform SQL queries that don't work well with this approach. cu, Thomas > Thanks, > - John >=20 >=20 > -----Original Message----- > From: Thomas Mahler [mailto:tho...@ho...] > Sent: Tuesday, April 02, 2002 2:58 PM > To: John Freeborg > Cc: Obj...@li... > Subject: Re: [OJB-developers] Field descriptor order requirement and > primary keys >=20 > Hi John, >=20 > FieldDescriptor need a numeric ID. The Ids must ordered ascending=20 > according to the corresponding columns in the database table. >=20 > The physical position in the xml repository is not important. >=20 > HTH, >=20 > Thomas >=20 > There is some code that >=20 > John Freeborg wrote: >=20 >=20 >>Does OJB have a requirement that in the repository.xml file, all >> > primary >=20 >>key field descriptors must be first inside a class descriptor? >> >>I don't have it that way (my primary key field descriptor happened to >> > be >=20 >>number 4, not 1). After scratching my head a lot on why my query for >> > a >=20 >>collection looked so strange, I hauled out BugSeeker and found the >>following code marked with ---> below that seems to assume a certain >>primary key field descriptor order. Interestingly the line above that >>is commented out doesn't appear to have this problem. >> >>Is this an unintended side effect of the optimization? Is this >> > broken? >=20 >>Thanks, >> - John >> >> >>>From RsIterator.java in 0.8.361: >> >> protected Identity getIdentityFromResultSet() throws >>PersistenceBrokerException >> { >> try >> { >> // fill primary key values from Resultset >> FieldDescriptor fld; >> FieldDescriptor[] pkFields =3D m_mif.getPkFields(); >> Object[] pkValues =3D new Object[pkFields.length]; >> >> for (int i =3D 0; i < pkFields.length; i++) >> { >> fld =3D pkFields[i]; >> //pkValues[i] =3D JdbcAccess.getObjectFromColumn(m_rs, >>fld); >>---> pkValues[i] =3D m_row[i]; >> } >> // return identity object build up from primary keys >> return new Identity(getExtentClass(), pkValues); >> } >> catch (Throwable t) >> { >> logger.error(t); >> throw new PersistenceBrokerException(t); >> } >> } |
From: Leandro R. S. C. <le...@ib...> - 2002-04-03 15:13:14
|
On Tue, 2002-04-02 at 17:34, Leandro Rodrigo Saad Cruz wrote: > Hi all, I have a problem with null fields > Supose I have a FK from one table to another, sai this FK can be null, > for example, to represent an inexistent association, when I do a : > > > query = new QueryByCriteria(CLASS-WITH-FK,null); > > broker.getCollectionByQuery(query); > > I get a NPE, is there any way to change this behavior ? I changed ojb.broker.metadata.PersistentFieldDefaultImpl to prevent NPEs by testing if the value that will be assigned to the field by reflection is null. I *really* don't know if the initial intention was throwing a NPE, I think it's acceptable to prevent it. -- Leandro Rodrigo Saad Cruz IT - Inter Business Tecnologia e Servicos (IB) http://www.ibnetwork.com.br |
From: Thomas M. <tho...@ho...> - 2002-04-03 10:17:49
|
Hi Anil, please refer to tutorial3.html it contains a long section on how to map inheritance hierarchies with OJB. It demonstrates sample code from package test.ojb.broker. HTH, Thomas Anil Kona wrote: > Thanks.. I got started > > I have a question on how inheritance is implemented. > > if I am creating a row in child table, is there anyway to tell OJB to also create a row in its parent ?.. > I have a class structure something like this: > > Employee extends Participant > > and in the repository file, for participant class descriptor I mentioned extent class name like this: > <class.name>com.againtech.ce.participant.ParticipantImpl</class.name> > <class.extent>com.againtech.ce.employee.EmployeeImpl</class.extent> > > and when I try to create a employee.. there is no row created in PARTICIPANT table. > > Is there a good example on inheritance ? > > Thanks in advance, > > -Anil > > -----Original Message----- > From: Thomas Mahler [mailto:tho...@ho...] > Sent: Tuesday, April 02, 2002 12:52 PM > To: Anil Kona > Cc: obj...@li... > Subject: Re: [OJB-developers] Help with MS SQL Server > > > Hi Anil, > > Please refer to the docs: > http://objectbridge.sf.net/rdbms-support.html > > HTH, > > Thomas > > Anil Kona wrote: > > > Hi, > > I am new to OJB. I need help configuring with MS SQL Server. > > I modified repository.xml file to use proper driver and commented out > hsqldb, still when I run ant tests, its picking up hsqldb ? > > I would appreciate if anyone can help me out. > > > > Thanks, > > > > Anil Kona > > Software Engineer > > Motiva, Inc. > > ani...@mo... > > (925) 600-2928 (Work) > > (925) 209-7972 (Mobile) > > > > > > _______________________________________________ > > Objectbridge-developers mailing list > > Obj...@li... > > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > > > > > > > > > > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > |
From: Thomas M. <tho...@ho...> - 2002-04-03 10:13:12
|
Hi John, John Freeborg wrote: > I guess I'm confused. > > In my existing database schema, the primary key column(s) are not always > the first ones in the table. No problem. > > Also, I sometimes have "extra" columns in a table that I don't want OJB > to do anything with so they aren't even in the repository.xml as it > would just slow things down more. No problem. > Is this allowed as long as those > columns have default values to handle any sql inserts OJB would perform? > OJB won't touch these columns, as it does not know anything about them! > With that background, what should I be setting my id="" attributes of > the FieldDescriptor's to? They can't possibly be the order of the > columns in the table because then the one with > <PrimaryKey>true</PrimaryKey> will not have id="1" as it is the 4th > column in the table. > Say we have this table: CREATE TABLE PRODUCT ( NAME CHAR(100), PRICE DOUBLE, ID INT PRIMARY KEY, HIDDEN VARCHAR(1000), STOCK INT ) This is the persistent class: public class Product { private int id; protected String name; protected double price; // column HIDDEN is not mapped to any attribute protected int stock; } This is the ClassDescriptor: <ClassDescriptor id="product"> <class.name>tutorial.Product</class.name> <table.name>PRODUCT</table.name> <FieldDescriptor id="1"> <field.name>name</field.name> <column.name>NAME</column.name> <jdbc_type>CHAR</jdbc_type> </FieldDescriptor> <FieldDescriptor id="2"> <field.name>price</field.name> <column.name>PRICE</column.name> <jdbc_type>DOUBLE</jdbc_type> </FieldDescriptor> <FieldDescriptor id="3"> <field.name>id</field.name> <column.name>ID</column.name> <jdbc_type>INT</jdbc_type> <PrimaryKey>true</PrimaryKey> <autoincrement>true</autoincrement> </FieldDescriptor> <FieldDescriptor id="4"> <field.name>stock</field.name> <column.name>STOCK</column.name> <jdbc_type>INT</jdbc_type> </FieldDescriptor> </ClassDescriptor> The ids of the FieldDescriptors correspond directly to the *order* of the mapped table columns. E.g. the stock column is *not* the fourth column of the table. but it is the fourth *mapped* column. >>From the RsIterator code snippet below, there is an assumption that the > primary keys are always first in the m_row member. this would be an uneccessary restriction! > And the ordering of > the m_row member seems to correspond to the id="" numbers from the field > descriptor. That's right > > So, my assertion is that if you have a field descriptor with > <PrimaryKey>true</PrimaryKey> and it is not id="1" then OJB doesn't > work. As long as you maintain the order of the mapped columns in the FK ids OJB does work! > And by extension if you had a compound primary key with multiple > field descriptors having <PrimaryKey> elements, they would need to be 1, > 2, 3, etc. they might as well be 4, 17, 23 ! > Is that just the way it is designed? I don't see this documented > anywhere, but I may have missed it of course. > I thought it was documented somewhere, but did not find it :-( > If this is true, I'll volunteer to add some checking of this during the > parsing of repository.xml as I think this is a pretty error prone part > of mapping. > Maybe it would be the best thing to eliminate the id based lookup of columns as there are several things like freeform SQL queries that don't work well with this approach. cu, Thomas > Thanks, > - John > > > -----Original Message----- > From: Thomas Mahler [mailto:tho...@ho...] > Sent: Tuesday, April 02, 2002 2:58 PM > To: John Freeborg > Cc: Obj...@li... > Subject: Re: [OJB-developers] Field descriptor order requirement and > primary keys > > Hi John, > > FieldDescriptor need a numeric ID. The Ids must ordered ascending > according to the corresponding columns in the database table. > > The physical position in the xml repository is not important. > > HTH, > > Thomas > > There is some code that > > John Freeborg wrote: > > >>Does OJB have a requirement that in the repository.xml file, all >> > primary > >>key field descriptors must be first inside a class descriptor? >> >>I don't have it that way (my primary key field descriptor happened to >> > be > >>number 4, not 1). After scratching my head a lot on why my query for >> > a > >>collection looked so strange, I hauled out BugSeeker and found the >>following code marked with ---> below that seems to assume a certain >>primary key field descriptor order. Interestingly the line above that >>is commented out doesn't appear to have this problem. >> >>Is this an unintended side effect of the optimization? Is this >> > broken? > >>Thanks, >> - John >> >> >>>From RsIterator.java in 0.8.361: >> >> protected Identity getIdentityFromResultSet() throws >>PersistenceBrokerException >> { >> try >> { >> // fill primary key values from Resultset >> FieldDescriptor fld; >> FieldDescriptor[] pkFields = m_mif.getPkFields(); >> Object[] pkValues = new Object[pkFields.length]; >> >> for (int i = 0; i < pkFields.length; i++) >> { >> fld = pkFields[i]; >> //pkValues[i] = JdbcAccess.getObjectFromColumn(m_rs, >>fld); >>---> pkValues[i] = m_row[i]; >> } >> // return identity object build up from primary keys >> return new Identity(getExtentClass(), pkValues); >> } >> catch (Throwable t) >> { >> logger.error(t); >> throw new PersistenceBrokerException(t); >> } >> } >> >>_______________________________________________ >>Objectbridge-developers mailing list >>Obj...@li... >>https://lists.sourceforge.net/lists/listinfo/objectbridge-developers >> >> > > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > |
From: <ll...@li...> - 2002-04-03 06:33:13
|
Time for an extra mailing list ? I propose that a objectbridge-users mailing-list is made. And that all users from this list initially is subscribed to it. /Lasse |
From: Anil K. <Ani...@mo...> - 2002-04-03 05:01:29
|
VGhvbWFzLA0KQ291bGQgdSB0ZWxsIG1lIHdoYXRzIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdHgu bG9jayguLikgYW5kIGRiLm1ha2VQZXJzaXN0KCkuLg0KdGhlIGNvbnRleHQgb2YgdGhlaXIgdXNh Z2UgP2JvdGggbG9va3MgbGlrZSB0aGV5IGRvIHNhbWUgdGhpbmcNCiANClRoYW5rcywNCi1Bbmls DQogDQo= |
From: John F. <jfr...@so...> - 2002-04-02 21:49:27
|
I guess I'm confused. In my existing database schema, the primary key column(s) are not always the first ones in the table. Also, I sometimes have "extra" columns in a table that I don't want OJB to do anything with so they aren't even in the repository.xml as it would just slow things down more. Is this allowed as long as those columns have default values to handle any sql inserts OJB would perform? With that background, what should I be setting my id=3D"" attributes of the FieldDescriptor's to? They can't possibly be the order of the columns in the table because then the one with <PrimaryKey>true</PrimaryKey> will not have id=3D"1" as it is the 4th column in the table. From the RsIterator code snippet below, there is an assumption that the primary keys are always first in the m_row member. And the ordering of the m_row member seems to correspond to the id=3D"" numbers from the = field descriptor. So, my assertion is that if you have a field descriptor with <PrimaryKey>true</PrimaryKey> and it is not id=3D"1" then OJB doesn't work. And by extension if you had a compound primary key with multiple field descriptors having <PrimaryKey> elements, they would need to be 1, 2, 3, etc. Is that just the way it is designed? I don't see this documented anywhere, but I may have missed it of course. If this is true, I'll volunteer to add some checking of this during the parsing of repository.xml as I think this is a pretty error prone part of mapping. Thanks, - John -----Original Message----- From: Thomas Mahler [mailto:tho...@ho...] Sent: Tuesday, April 02, 2002 2:58 PM To: John Freeborg Cc: Obj...@li... Subject: Re: [OJB-developers] Field descriptor order requirement and primary keys Hi John, FieldDescriptor need a numeric ID. The Ids must ordered ascending=20 according to the corresponding columns in the database table. The physical position in the xml repository is not important. HTH, Thomas There is some code that John Freeborg wrote: > Does OJB have a requirement that in the repository.xml file, all primary > key field descriptors must be first inside a class descriptor? >=20 > I don't have it that way (my primary key field descriptor happened to be > number 4, not 1). After scratching my head a lot on why my query for a > collection looked so strange, I hauled out BugSeeker and found the > following code marked with ---> below that seems to assume a certain > primary key field descriptor order. Interestingly the line above that > is commented out doesn't appear to have this problem. >=20 > Is this an unintended side effect of the optimization? Is this broken? >=20 > Thanks, > - John >=20 >=20 >>From RsIterator.java in 0.8.361: >=20 > protected Identity getIdentityFromResultSet() throws > PersistenceBrokerException > { > try > { > // fill primary key values from Resultset > FieldDescriptor fld; > FieldDescriptor[] pkFields =3D m_mif.getPkFields(); > Object[] pkValues =3D new Object[pkFields.length]; >=20 > for (int i =3D 0; i < pkFields.length; i++) > { > fld =3D pkFields[i]; > //pkValues[i] =3D JdbcAccess.getObjectFromColumn(m_rs, > fld); > ---> pkValues[i] =3D m_row[i]; > } > // return identity object build up from primary keys > return new Identity(getExtentClass(), pkValues); > } > catch (Throwable t) > { > logger.error(t); > throw new PersistenceBrokerException(t); > } > } >=20 > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers >=20 |
From: Anil K. <Ani...@mo...> - 2002-04-02 21:34:13
|
Thanks.. I got started=20 I have a question on how inheritance is implemented. if I am creating a row in child table, is there anyway to tell OJB to = also create a row in its parent ?..=20 I have a class structure something like this: Employee extends Participant and in the repository file, for participant class descriptor I mentioned = extent class name like this: <class.name>com.againtech.ce.participant.ParticipantImpl</class.name> = <class.extent>com.againtech.ce.employee.EmployeeImpl</class.extent> and when I try to create a employee.. there is no row created in = PARTICIPANT table. Is there a good example on inheritance ? Thanks in advance, -Anil -----Original Message----- From: Thomas Mahler [mailto:tho...@ho...] Sent: Tuesday, April 02, 2002 12:52 PM To: Anil Kona Cc: obj...@li... Subject: Re: [OJB-developers] Help with MS SQL Server Hi Anil, Please refer to the docs: http://objectbridge.sf.net/rdbms-support.html HTH, Thomas Anil Kona wrote: > Hi, > I am new to OJB. I need help configuring with MS SQL Server. > I modified repository.xml file to use proper driver and commented out = hsqldb, still when I run ant tests, its picking up hsqldb ? > I would appreciate if anyone can help me out. > > Thanks, > > Anil Kona > Software Engineer > Motiva, Inc. > ani...@mo... > (925) 600-2928 (Work) > (925) 209-7972 (Mobile) > > > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > |
From: Thomas M. <tho...@ho...> - 2002-04-02 20:47:19
|
Thanks, I just subscribed to both lists, Thomas Jason van Zyl wrote: > Hello, > > To try and stimulate some cross-pollentation between the Torque and > ObjectBridge groups I've created a separate Torque mailing list so that > it will be easier to follow any discussions if anyone here is > interested. > > The mailing lists are: > > tur...@ja... > tur...@ja... > > |
From: Leandro R. S. C. <le...@ib...> - 2002-04-02 20:35:03
|
Hi all, I have a problem with null fields Supose I have a FK from one table to another, sai this FK can be null, for example, to represent an inexistent association, when I do a : > query = new QueryByCriteria(CLASS-WITH-FK,null); > broker.getCollectionByQuery(query); I get a NPE, is there any way to change this behavior ? -- Leandro Rodrigo Saad Cruz IT - Inter Business Tecnologia e Servicos (IB) http://www.ibnetwork.com.br |
From: Thomas M. <tho...@ho...> - 2002-04-02 20:00:49
|
Hi John, FieldDescriptor need a numeric ID. The Ids must ordered ascending according to the corresponding columns in the database table. The physical position in the xml repository is not important. HTH, Thomas There is some code that John Freeborg wrote: > Does OJB have a requirement that in the repository.xml file, all primary > key field descriptors must be first inside a class descriptor? > > I don't have it that way (my primary key field descriptor happened to be > number 4, not 1). After scratching my head a lot on why my query for a > collection looked so strange, I hauled out BugSeeker and found the > following code marked with ---> below that seems to assume a certain > primary key field descriptor order. Interestingly the line above that > is commented out doesn't appear to have this problem. > > Is this an unintended side effect of the optimization? Is this broken? > > Thanks, > - John > > >>From RsIterator.java in 0.8.361: > > protected Identity getIdentityFromResultSet() throws > PersistenceBrokerException > { > try > { > // fill primary key values from Resultset > FieldDescriptor fld; > FieldDescriptor[] pkFields = m_mif.getPkFields(); > Object[] pkValues = new Object[pkFields.length]; > > for (int i = 0; i < pkFields.length; i++) > { > fld = pkFields[i]; > //pkValues[i] = JdbcAccess.getObjectFromColumn(m_rs, > fld); > ---> pkValues[i] = m_row[i]; > } > // return identity object build up from primary keys > return new Identity(getExtentClass(), pkValues); > } > catch (Throwable t) > { > logger.error(t); > throw new PersistenceBrokerException(t); > } > } > > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > |
From: Thomas M. <tho...@ho...> - 2002-04-02 19:57:26
|
Hi Anil, Please refer to the docs: http://objectbridge.sf.net/rdbms-support.html HTH, Thomas Anil Kona wrote: > Hi, > I am new to OJB. I need help configuring with MS SQL Server. > I modified repository.xml file to use proper driver and commented out hsqldb, still when I run ant tests, its picking up hsqldb ? > I would appreciate if anyone can help me out. > > Thanks, > > Anil Kona > Software Engineer > Motiva, Inc. > ani...@mo... > (925) 600-2928 (Work) > (925) 209-7972 (Mobile) > > > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > |
From: Thomas M. <tho...@ho...> - 2002-04-02 19:53:04
|
Hi John, its important that the compiler switch is placed on the first column of the line like here: //#ifdef DEBUG Any indented switches like //#ifdef DEBUG are not detected. I recommend to simply ignore the DEBUG switch it won't be too useful. I hope eliminate this switch soon. HTH, Thomas John Freeborg wrote: > Can anyone else get this to work? > > I can't seem to get it to change anything in the src files. I've > changed the build.xml file for +DEBUG and -DEBUG and ran it, see lots of > ............... that the CodeSwitcher is printing out, but nothing ever > changes in the .java files. I'm specifically looking at > src/ojb/broker/accesslayer/JdbcAccess.java on the #ifdef DEBUG around > the logging calls. Doesn't it comment the stuff between //#ifdef DEBUG > out or in based on this? > > I've made sure the files are read/write also. > > - John > > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > |
From: Thomas M. <tho...@ho...> - 2002-04-02 19:52:57
|
Hi David, We use the loadResource() stuff to be J2EE compliant. As many people have problems with this approach we will allow file system lookup too. will be implemented in next release (coming this week). HTH, Thomas David Sean Taylor wrote: > PersistenceBrokerFactory.createPersistenceBroker("repository.xml"); > > > > Is there a way to find the repository.xml on the file system and not in > the classpath? > > > > Currently I seem to only have the choice of putting the repository.xml > on my classpath, and then it searches for it using loadResource > > > > thanks > > > > David > |
From: Thomas M. <tho...@ho...> - 2002-04-02 19:52:52
|
Hi David, David Sean Taylor wrote: > Hi, > > There is a strange (to me) format to the db-setup.sql file, prefixed > commands like: > > e CREATE TABLE OJB_HL_SEQ ( > > Guessing there is some database-agnostic-script runner tool or right! DB setup is performed by build.sh tests > something...If so, how do I run it? > Is there documentation? > please refer to the rdbms-support.html file in the src/doc folder HTH, Thomas > I've started to make my own database, and Im wondering how much of the > db-setup.sql file I will actually need. > Assuming I need everything from here down: > > ;;;;;;;;;;;;;;;;;;;;;;;; > ;;;;;;;;;;;;;;;;;;;;;;;; > ; OJB internal tables, do not modify !!! > > Only added these two tables thus far, which were necessary for inserts > with autoincrement fields: > > CREATE TABLE OJB_SEQ ( > CREATE TABLE OJB_HL_SEQ ( > > Thanks, > > David > > > > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > |
From: Thomas M. <tho...@ho...> - 2002-04-02 19:52:24
|
Hi Eric, I came to the same conlusion! will be fixed in next release ! Thomas Eric Bieschke wrote: > Given the amount of confusion over this WARNing, and the fact that this > behavior is expected and not problematic; I'd vote for this message to log > at level INFO rather than WARN. > > -- Eric Bieschke > > > ----- Original Message ----- > From: David Sean Taylor <da...@bl...> > To: <obj...@li...> > Sent: Monday, April 01, 2002 12:16 AM > Subject: [OJB-developers] Warning on Oracle > > > Why do I get these messages? > What kind of problems are there with Oracle8i.... > > WARN: problems with platform ojb.broker.platforms.Platform > Oracle8iImpl: ojb.broker.platforms.PlatformOracle8iImpl > WARN: OJB will use PlatformDefaultImpl instead > > > > > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > |
From: Thomas M. <tho...@ho...> - 2002-04-02 19:52:04
|
Hi geoffrey, You can ignore the ANTLR warnings. You can also ignore the sql errors. They simply tell you that on initial setup of the testdatabase the test tables are not present. running build.sh junit a second time will show you this. I don't know why there is a failure in the junit tests. This build has been verified on Linux and Win32 machines using several JDKs. Please try out the latest build 0.8.361. Its in the 0.7.343 section as it's no full release. HTH, Thomas ge...@me... wrote: <snip long trace> > > It's well within the range of possibility that I could track down the > problems if I dug in and started tracing what's going on, but this is just > the Quick Start. There's no code of my own, and I haven't even made it to > the tutorial stage. I would think OJB should be able to build and run JUnit > tests properly, Sure! can you imagine that we publish releases that don't pass the junit tests we ship with the product? HTH, Thomas > so either there's something wrong, or I've somehow followed > the very basic instructions incorrectly. > > Thoughts? Am I missing something obvious, or can I really not run the > tests? > > Thanks, > > - Geoffrey > > __________________________________________________________ > Geoffrey Wiseman: Internet Applications Manager > Medium One : Mosaic Marketing & Technology Solutions > t. 416.977.2101 x. 529 > http://www.mediumone.com/ > __________________________________________________________ > Think it. Build it. Work it. > > > > ________________________________________________________________________ > This email has been scanned for all viruses by the MessageLabs SkyScan > service. For more information on a proactive anti-virus service working > around the clock, around the globe, visit http://www.messagelabs.com > ________________________________________________________________________ > > _______________________________________________ > Objectbridge-developers mailing list > Obj...@li... > https://lists.sourceforge.net/lists/listinfo/objectbridge-developers > > > > |
From: John F. <jfr...@so...> - 2002-04-02 18:48:57
|
Does OJB have a requirement that in the repository.xml file, all primary key field descriptors must be first inside a class descriptor? I don't have it that way (my primary key field descriptor happened to be number 4, not 1). After scratching my head a lot on why my query for a collection looked so strange, I hauled out BugSeeker and found the following code marked with ---> below that seems to assume a certain primary key field descriptor order. Interestingly the line above that is commented out doesn't appear to have this problem. Is this an unintended side effect of the optimization? Is this broken? Thanks, - John From RsIterator.java in 0.8.361: protected Identity getIdentityFromResultSet() throws PersistenceBrokerException { try { // fill primary key values from Resultset FieldDescriptor fld; FieldDescriptor[] pkFields =3D m_mif.getPkFields(); Object[] pkValues =3D new Object[pkFields.length]; for (int i =3D 0; i < pkFields.length; i++) { fld =3D pkFields[i]; //pkValues[i] =3D JdbcAccess.getObjectFromColumn(m_rs, fld); ---> pkValues[i] =3D m_row[i]; } // return identity object build up from primary keys return new Identity(getExtentClass(), pkValues); } catch (Throwable t) { logger.error(t); throw new PersistenceBrokerException(t); } } |
From: John F. <jfr...@so...> - 2002-04-02 17:56:59
|
Can anyone else get this to work? I can't seem to get it to change anything in the src files. I've changed the build.xml file for +DEBUG and -DEBUG and ran it, see lots of ............... that the CodeSwitcher is printing out, but nothing ever changes in the .java files. I'm specifically looking at src/ojb/broker/accesslayer/JdbcAccess.java on the #ifdef DEBUG around the logging calls. Doesn't it comment the stuff between //#ifdef DEBUG out or in based on this? I've made sure the files are read/write also. - John |
From: <ge...@me...> - 2002-04-02 16:07:26
|
I've been curious to try OJB for a while, but haven't found the time. This morning, I finally had some free time, so I downloaded the latest (0.7.343) and gave it a shot, and immediately ran into problems. When running the build target, I get ANTLR warnings: oql: [build oql parser] ANTLR Parser Generator Version 2.7.1 1989-2000 jGuru.com [build oql parser] warning: lexical nondeterminism between rules TOK_DOTDOT and Identifier upon [build oql parser] oql-ojb.g:0: k==1:'.' [build oql parser] oql-ojb.g:0: k==2:'.' [build oql parser] warning: lexical nondeterminism between rules TOK_DOTDOT and TOK_EXACT_NUMERIC_LITERAL upon [build oql parser] oql-ojb.g:0: k==1:'.' [build oql parser] oql-ojb.g:0: k==2:'.' [build oql parser] warning: lexical nondeterminism between rules TOK_DOT and Ide ntifier upon [build oql parser] oql-ojb.g:0: k==1:'.' [build oql parser] oql-ojb.g:0: k==2:<end-of-token> [build oql parser] warning: lexical nondeterminism between rules TOK_DOT and TOK _EXACT_NUMERIC_LITERAL upon [build oql parser] oql-ojb.g:0: k==1:'.' [build oql parser] oql-ojb.g:0: k==2:<end-of-token> [build oql parser] warning: lexical nondeterminism between rules Identifier and TOK_EXACT_NUMERIC_LITERAL upon [build oql parser] oql-ojb.g:0: k==1:'.' [build oql parser] oql-ojb.g:0: k==2:<end-of-token>,'.','0'..'9','e' [build oql parser] oql-ojb.g:288: warning: lexical nondeterminism upon [build oql parser] oql-ojb.g:288: k==1:'\\' [build oql parser] oql-ojb.g:288: k==2:'"' [build oql parser] oql-ojb.g:288: between alts 1 and 3 of block [build oql parser] oql-ojb.g:329: warning: lexical nondeterminism upon [build oql parser] oql-ojb.g:329: k==1:'*' [build oql parser] oql-ojb.g:329: k==2:'/' [build oql parser] oql-ojb.g:329: between alt 1 and exit branch of block [build oql parser] oql-ojb.g:455: warning: nondeterminism upon [build oql parser] oql-ojb.g:455: k==1:"or" [build oql parser] oql-ojb.g:455: k==2:Identifier,"exists","not" [build oql parser] oql-ojb.g:455: between alt 1 and exit branch of block [build oql parser] oql-ojb.g:467: warning: nondeterminism upon [build oql parser] oql-ojb.g:467: k==1:"and" [build oql parser] oql-ojb.g:467: k==2:Identifier,"exists","not" [build oql parser] oql-ojb.g:467: between alt 1 and exit branch of block [build oql parser] oql-ojb.g:476: warning: nondeterminism upon [build oql parser] oql-ojb.g:476: k==1:Identifier [build oql parser] oql-ojb.g:476: k==2:TOK_EQ,TOK_NE [build oql parser] oql-ojb.g:476: between alts 1 and 4 of block [build oql parser] oql-ojb.g:476: warning: nondeterminism upon [build oql parser] oql-ojb.g:476: k==1:Identifier [build oql parser] oql-ojb.g:476: k==2:"not" [build oql parser] oql-ojb.g:476: between alts 3 and 5 of block [build oql parser] oql-ojb.g:476: warning: nondeterminism upon [build oql parser] oql-ojb.g:476: k==1:Identifier [build oql parser] oql-ojb.g:476: k==2:"not" [build oql parser] oql-ojb.g:476: between alts 3 and 6 of block [build oql parser] oql-ojb.g:476: warning: nondeterminism upon [build oql parser] oql-ojb.g:476: k==1:Identifier [build oql parser] oql-ojb.g:476: k==2:"not" [build oql parser] oql-ojb.g:476: between alts 5 and 6 of block When running the JUnit target, I get errors from Hypersonic: [java] [BOOT] ERROR: Table not found: ARTIKEL in statement [DROP TABLE Arti kel] [java] java.sql.SQLException: Table not found: ARTIKEL in statement [DROP T ABLE Artikel] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: BOOKS in statement [DROP TABLE BOOKS] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: BOOKS in statement [DROP TAB LE BOOKS] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: CDS in statement [DROP TABLE CDS] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: CDS in statement [DROP TABLE CDS] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] [BOOT] ERROR: Table not found: KATEGORIEN in statement [DROP TABLE K ategorien] [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: KATEGORIEN in statement [DRO P TABLE Kategorien] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] [BOOT] ERROR: Table not found: ORDER_POSITION in statement [DROP TAB LE ORDER_POSITION] [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: ORDER_POSITION in statement [DROP TABLE ORDER_POSITION] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] [BOOT] ERROR: Table not found: TREE in statement [DROP TABLE TREE] [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: TREE in statement [DROP TABL E TREE] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: TREEGROUP in statement [DROP TABLE TR EEGROUP] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: TREEGROUP in statement [DROP TABLE TREEGROUP] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: AB_TABLE in statement [DROP TABLE AB_ TABLE] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: AB_TABLE in statement [DROP TABLE AB_TABLE] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] [BOOT] ERROR: Table not found: PRODUCT in statement [DROP TABLE PROD UCT] [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: PRODUCT in statement [DROP T ABLE PRODUCT] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] [BOOT] ERROR: Table not found: PERSON in statement [DROP TABLE PERSO N] [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: PERSON in statement [DROP TA BLE PERSON] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] [BOOT] ERROR: Table not found: PROJECT in statement [DROP TABLE PROJ ECT] [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: PROJECT in statement [DROP T ABLE PROJECT] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: PERSON_PROJECT in statement [DROP TAB LE PERSON_PROJECT] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: PERSON_PROJECT in statement [DROP TABLE PERSON_PROJECT] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: FAMILY_MEMBER in statement [DROP TABL E FAMILY_MEMBER] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: FAMILY_MEMBER in statement [ DROP TABLE FAMILY_MEMBER] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] [BOOT] ERROR: Table not found: LOCKED_BY_VERSION in statement [DROP TABLE LOCKED_BY_VERSION] [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: LOCKED_BY_VERSION in stateme nt [DROP TABLE LOCKED_BY_VERSION] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] [BOOT] ERROR: Table not found: LOCKED_BY_TIMESTAMP in statement [DRO P TABLE LOCKED_BY_TIMESTAMP] [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: LOCKED_BY_TIMESTAMP in state ment [DROP TABLE LOCKED_BY_TIMESTAMP] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] [BOOT] ERROR: Table not found: BLOB_TEST in statement [DROP TABLE BL OB_TEST] [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: BLOB_TEST in statement [DROP TABLE BLOB_TEST] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: OJB_SEQ in statement [DROP TABLE OJB_ SEQ] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_SEQ in statement [DROP T ABLE OJB_SEQ] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: OJB_HL_SEQ in statement [DROP TABLE O JB_HL_SEQ] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_HL_SEQ in statement [DRO P TABLE OJB_HL_SEQ] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] [BOOT] ERROR: Table not found: OJB_LOCKENTRY in statement [DROP TABL E OJB_LOCKENTRY] [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_LOCKENTRY in statement [ DROP TABLE OJB_LOCKENTRY] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] [BOOT] ERROR: Table not found: OJB_NRM in statement [DROP TABLE OJB_ NRM] [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_NRM in statement [DROP T ABLE OJB_NRM] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] [BOOT] ERROR: Table not found: OJB_DLIST in statement [DROP TABLE OJ B_DLIST] [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_DLIST in statement [DROP TABLE OJB_DLIST] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: OJB_DLIST_ENTRIES in statement [DROP TABLE OJB_DLIST_ENTRIES] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_DLIST_ENTRIES in stateme nt [DROP TABLE OJB_DLIST_ENTRIES] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] [BOOT] ERROR: Table not found: OJB_DSET in statement [DROP TABLE OJB _DSET] [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_DSET in statement [DROP TABLE OJB_DSET] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] [BOOT] ERROR: Table not found: OJB_DSET_ENTRIES in statement [DROP T ABLE OJB_DSET_ENTRIES] [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_DSET_ENTRIES in statemen t [DROP TABLE OJB_DSET_ENTRIES] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] [BOOT] ERROR: Table not found: OJB_DMAP in statement [DROP TABLE OJB _DMAP] [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_DMAP in statement [DROP TABLE OJB_DMAP] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] [BOOT] ERROR: Table not found: OJB_DMAP_ENTRIES in statement [DROP T ABLE OJB_DMAP_ENTRIES] [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) [java] java.sql.SQLException: Table not found: OJB_DMAP_ENTRIES in statemen t [DROP TABLE OJB_DMAP_ENTRIES] [java] at org.hsqldb.Trace.getError(Trace.java:180) [java] at org.hsqldb.jdbcResultSet.<init>(jdbcResultSet.java:2645) [java] at org.hsqldb.jdbcConnection.executeStandalone(jdbcConnection.ja va:994) [java] at org.hsqldb.jdbcConnection.execute(jdbcConnection.java:721) [java] at org.hsqldb.jdbcStatement.fetchResult(jdbcStatement.java:686) [java] at org.hsqldb.jdbcStatement.executeUpdate(jdbcStatement.java:85) [java] at ojb.broker.util.SampleThread.run(ScriptTool.java:541) [java] at java.lang.Thread.run(Thread.java:484) junit: [junit] .[BOOT] INFO: OJB.properties: file:/D:/Dev/Libraries/objectBridge/so urce/ojb-0.7.343/build/test/ojb/OJB.properties [junit] ........................................ [junit] .....F [junit] Time: 3.03 [junit] There was 1 failure: [junit] 1) testTimestampLock(test.ojb.broker.OptimisticLockingTest)junit.fra mework.AssertionFailedError: Should throw an Optimistic Lock exception [junit] at test.ojb.broker.OptimisticLockingTest.testTimestampLock(Optim isticLockingTest.java:205) [junit] [junit] FAILURES!!! [junit] Tests run: 46, Failures: 1, Errors: 0 [junit] It's well within the range of possibility that I could track down the problems if I dug in and started tracing what's going on, but this is just the Quick Start. There's no code of my own, and I haven't even made it to the tutorial stage. I would think OJB should be able to build and run JUnit tests properly, so either there's something wrong, or I've somehow followed the very basic instructions incorrectly. Thoughts? Am I missing something obvious, or can I really not run the tests? Thanks, - Geoffrey __________________________________________________________ Geoffrey Wiseman: Internet Applications Manager Medium One : Mosaic Marketing & Technology Solutions t. 416.977.2101 x. 529 http://www.mediumone.com/ __________________________________________________________ Think it. Build it. Work it. ________________________________________________________________________ This email has been scanned for all viruses by the MessageLabs SkyScan service. For more information on a proactive anti-virus service working around the clock, around the globe, visit http://www.messagelabs.com ________________________________________________________________________ |