Re: M:N && Proxy

2003-06-17 Thread Thomas Mahler
Hi Edson,

Edson Carlos Ericksson Richter wrote:
Hi!

I've discovered a bug in M:N relationships and proxys.

To give some light about the problem, if I have two classes

class A {
   private Integer id;
   private String description;
   public Integer getId( ) { return id; }
   public void setId( Integer newId ) { this.id = newId; }
   public String getDescription( ) { return this.description; }
   public void setDescription( String newDesc ) { this.description =
newDesc; }
}
class B {
   private Integer id;
   private List allA;
   public Integer getId( ) { return id; }
   public void setId( Integer newId ) { this.id = newId; }
   public void setAllA( List allA ) { this.allA = allA; }
   public void getAllA( ) { return this.allA; }
}
Now, I create a  non-decomposed M:N relationship. Then if I delete an
element with
B b = new B();
b.getAllA( ).remove( 0 );
OJB removes the A object from the indirection table AND from A table!!!
depends on the auto-delete settings in the collection-descriptor.

Now, if I change to:

class B {
   private Integer id;
   private List allA = new ArrayList();
   public Integer getId( ) { return id; }
   public void setId( Integer newId ) { this.id = newId; }
   public void setAllA( List allA ) { this.allA.clear(); this.allA.addAll(
allA ); }
   public void getAllA( ) { return this.allA; }
}
OJB works as expected. 
What do you expect? that only entries from the indirection table get 
deleted? should be configurable with auto-delete="true|false".

Appear that OJB is not correctly managing
CollectionProxy elements in M:N non-decomposed (I've not tried manual M:N).
what has the change from
private List allA;
to
private List allA = new ArrayList();
to do with proxies?
puzzled,
Thomas
Can you confirm this?

Thanks,

Edson Richter

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.490 / Virus Database: 289 - Release Date: 16/6/2003


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: OJB/JBoss "depends on me" startup problem - but redeployment works fine!

2003-06-17 Thread Armin Waibel
Hi Alex,

I can confirm this. With JBoss 3.0.6 all works fine, changing
to JBoss 3.2.1 get the described problems when deploying
the beans. Redepolying the beans, all get deployed without
problems.
I can't figure out what's going wrong.

> So, it appears that this EJB jar has some dependencies which need to
be
> explicitly declared in JBoss.
Would be great if you could bring to light the hidden
secrets of current JBoss version ;-)

regards,
Armin

- Original Message -
From: "Swordsman 2000" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, June 17, 2003 11:04 PM
Subject: OJB/JBoss "depends on me" startup problem - but redeployment
works fine!


> Hello,
>
> When I try to bring up the j2ee build of OJB in JBoss, I get lots of
stack
> traces, and finally see the message shown below.  The root problem
appears
> to be the "invoker is null" error (jboss:service=invoker,type=jrmp)
>
> Has anyone else encountered these errors/exceptoins?  Am I missing
> something?  I used the jboss-service.xml file as instructed, have all
the
> relevent files in the ojb.sar directory (running in JBoss 3.2.0), but
get
> this problem.  Yet, if I redeploy by copying db-ojb-1.0.rc2-beans.jar
(the
> EJB jar) back into the ojb.sar after bringing up JBoss, it works
fine!!
>
> So, it appears that this EJB jar has some dependencies which need to
be
> explicitly declared in JBoss.
>
> Thanks in advance for any help!
>
> Alex
>
>
> 13:51:24,051 ERROR [URLDeploymentScanner] MBeanException: Exception in
MBean
> ope
> ration 'checkIncompleteDeployments()'
> Cause: Incomplete Deployment listing:
> Packages waiting for a deployer:
>   
> Incompletely deployed packages:
>   
> MBeans waiting for classes:
>   
> MBeans waiting for other MBeans:
> [ObjectName:
> jboss.j2ee:jndiName=org.apache.ojb.ejb.PersonManagerPBBean,service=
> EJB
> state: FAILED
> I Depend On:
> Depends On Me: java.lang.RuntimeException: invoker is null:
> jboss:service=invok
> er,type=jrmp, ObjectName:
> jboss.j2ee:jndiName=org.apache.ojb.ejb.ArticleManagerP
> BBean,service=EJB
> state: FAILED
> I Depend On:
> Depends On Me: java.lang.RuntimeException: invoker is null:
> jboss:service=invok
> er,type=jrmp, ObjectName:
> jboss.j2ee:jndiName=org.apache.ojb.ejb.PersonManagerOD
> MGBean,service=EJB
> state: FAILED
> I Depend On:
> Depends On Me: java.lang.RuntimeException: invoker is null:
> jboss:service=invok
> er,type=jrmp, ObjectName:
> jboss.j2ee:jndiName=org.apache.ojb.ejb.PBSessionBean,s
> ervice=EJB
> state: FAILED
> I Depend On:
> Depends On Me: java.lang.RuntimeException: invoker is null:
> jboss:service=invok
> er,type=jrmp, ObjectName:
> jboss.j2ee:jndiName=org.apache.ojb.ejb.PersonArticleMa
> nagerODMGBean,service=EJB
> state: FAILED
> I Depend On:
> Depends On Me: java.lang.RuntimeException: invoker is null:
> jboss:service=invok
> er,type=jrmp, ObjectName:
> jboss.j2ee:jndiName=org.apache.ojb.ejb.ODMGSessionBean
> ,service=EJB
> state: FAILED
> I Depend On:
> Depends On Me: java.lang.RuntimeException: invoker is null:
> jboss:service=invok
> er,type=jrmp, ObjectName:
> jboss.j2ee:jndiName=org.apache.ojb.ejb.PersonArticleMa
> nagerPBBean,service=EJB
> state: FAILED
> I Depend On:
> Depends On Me: java.lang.RuntimeException: invoker is null:
> jboss:service=invok
> er,type=jrmp, ObjectName:
> jboss.j2ee:jndiName=org.apache.ojb.ejb.ArticleManagerO
> DMGBean,service=EJB
> state: FAILED
> I Depend On:
> Depends On Me: java.lang.RuntimeException: invoker is null:
> jboss:service=invok
> er,type=jrmp]
>
>
> META-INF\jboss-service.xml
>
> 
> 
>  name="DefaultDomain:service=PBAPI,name=ojb/PBAPI">
> jboss.jca:service=RARDeployer
> ojb/PBAPI
> 
>
>  name="DefaultDomain:service=ODMG,name=ojb/defaultODMG">
> jboss.jca:service=RARDeployer
> ojb/defaultODMG
> 
> 
>
> _
> Protect your PC - get McAfee.com VirusScan Online
> http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963
>
>
> -
> 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]



Re: Collection of objects cached or something

2003-06-17 Thread Thomas Mahler
please post the code snippet that provokes this problem.
I have no idea what could be wrong here.
All things you describe are covered by testcases...

cheers,
Thomas
Alen Ribic wrote:
Hi all

I seem to have a bit of an issue with my objects getting cached that are
retrieved from persistence storage using OJB.
I have a Category & Product tables.
Category bean contains getter method that retrieves a Vector of products
that belong to that Category. Product class contains categoryId field as FK
indicator.
My repository_user.xml contains "collection-descriptor" in Category
class/table mapping to Product table FK.

  

Now all this works in my application, but when it comes to adding a new
value object or deleting an existing one, the action gets performed in the
DB but doesn't reflect in my system (Only when I restart my application will
change show). It appears that the method I call returns relevant Category
but when I call getAllProductsForCategory() on it, it returns the same
Vector as before. It should return Vector of Products with changes reflected
in DB.
Note as I said this issue only is applicable to insert and delete statements
not update!
When I do an update on my value object, it reflects the change in my system.
Strange...:)
What could the problem be?
Any help will be much appreciated.
--Alen



-
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]


Re: FYI: Winzip 8.0 Did Not Open Latest Archive Files

2003-06-17 Thread Thomas Mahler
It's a known mime type problem. If you make sure that the extension is 
.tgz or tar.gz everything is fine with winzip too...

cheers,
Thomas
Shane Mingins wrote:
Hi

I just download rc3 and found that Winzip 8.0 would not open them.

"Error reading heading after processing 0 entries"

WinRAR (which I just downloaded) worked without a problem.

Shane Mingins
Analyst Programmer
Assure NZ Ltd
Ph 644 494 2522


-
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]


OJB/JBoss "depends on me" startup problem - but redeployment works fine!

2003-06-17 Thread Swordsman 2000
Hello,

When I try to bring up the j2ee build of OJB in JBoss, I get lots of stack 
traces, and finally see the message shown below.  The root problem appears 
to be the "invoker is null" error (jboss:service=invoker,type=jrmp)

Has anyone else encountered these errors/exceptoins?  Am I missing 
something?  I used the jboss-service.xml file as instructed, have all the 
relevent files in the ojb.sar directory (running in JBoss 3.2.0), but get 
this problem.  Yet, if I redeploy by copying db-ojb-1.0.rc2-beans.jar (the 
EJB jar) back into the ojb.sar after bringing up JBoss, it works fine!!

So, it appears that this EJB jar has some dependencies which need to be 
explicitly declared in JBoss.

Thanks in advance for any help!

Alex

13:51:24,051 ERROR [URLDeploymentScanner] MBeanException: Exception in MBean 
ope
ration 'checkIncompleteDeployments()'
Cause: Incomplete Deployment listing:
Packages waiting for a deployer:
 
Incompletely deployed packages:
 
MBeans waiting for classes:
 
MBeans waiting for other MBeans:
[ObjectName: 
jboss.j2ee:jndiName=org.apache.ojb.ejb.PersonManagerPBBean,service=
EJB
state: FAILED
I Depend On:
Depends On Me: java.lang.RuntimeException: invoker is null: 
jboss:service=invok
er,type=jrmp, ObjectName: 
jboss.j2ee:jndiName=org.apache.ojb.ejb.ArticleManagerP
BBean,service=EJB
state: FAILED
I Depend On:
Depends On Me: java.lang.RuntimeException: invoker is null: 
jboss:service=invok
er,type=jrmp, ObjectName: 
jboss.j2ee:jndiName=org.apache.ojb.ejb.PersonManagerOD
MGBean,service=EJB
state: FAILED
I Depend On:
Depends On Me: java.lang.RuntimeException: invoker is null: 
jboss:service=invok
er,type=jrmp, ObjectName: 
jboss.j2ee:jndiName=org.apache.ojb.ejb.PBSessionBean,s
ervice=EJB
state: FAILED
I Depend On:
Depends On Me: java.lang.RuntimeException: invoker is null: 
jboss:service=invok
er,type=jrmp, ObjectName: 
jboss.j2ee:jndiName=org.apache.ojb.ejb.PersonArticleMa
nagerODMGBean,service=EJB
state: FAILED
I Depend On:
Depends On Me: java.lang.RuntimeException: invoker is null: 
jboss:service=invok
er,type=jrmp, ObjectName: 
jboss.j2ee:jndiName=org.apache.ojb.ejb.ODMGSessionBean
,service=EJB
state: FAILED
I Depend On:
Depends On Me: java.lang.RuntimeException: invoker is null: 
jboss:service=invok
er,type=jrmp, ObjectName: 
jboss.j2ee:jndiName=org.apache.ojb.ejb.PersonArticleMa
nagerPBBean,service=EJB
state: FAILED
I Depend On:
Depends On Me: java.lang.RuntimeException: invoker is null: 
jboss:service=invok
er,type=jrmp, ObjectName: 
jboss.j2ee:jndiName=org.apache.ojb.ejb.ArticleManagerO
DMGBean,service=EJB
state: FAILED
I Depend On:
Depends On Me: java.lang.RuntimeException: invoker is null: 
jboss:service=invok
er,type=jrmp]

META-INF\jboss-service.xml



   
   jboss.jca:service=RARDeployer
   ojb/PBAPI
   
   
   jboss.jca:service=RARDeployer
   ojb/defaultODMG
   

_
Protect your PC - get McAfee.com VirusScan Online  
http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


FYI: Winzip 8.0 Did Not Open Latest Archive Files

2003-06-17 Thread Shane Mingins
Hi

I just download rc3 and found that Winzip 8.0 would not open them.

"Error reading heading after processing 0 entries"

WinRAR (which I just downloaded) worked without a problem.

Shane Mingins
Analyst Programmer
Assure NZ Ltd
Ph 644 494 2522



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Collection of objects cached or something

2003-06-17 Thread Alen Ribic
Hi all

I seem to have a bit of an issue with my objects getting cached that are
retrieved from persistence storage using OJB.

I have a Category & Product tables.
Category bean contains getter method that retrieves a Vector of products
that belong to that Category. Product class contains categoryId field as FK
indicator.
My repository_user.xml contains "collection-descriptor" in Category
class/table mapping to Product table FK.


  


Now all this works in my application, but when it comes to adding a new
value object or deleting an existing one, the action gets performed in the
DB but doesn't reflect in my system (Only when I restart my application will
change show). It appears that the method I call returns relevant Category
but when I call getAllProductsForCategory() on it, it returns the same
Vector as before. It should return Vector of Products with changes reflected
in DB.

Note as I said this issue only is applicable to insert and delete statements
not update!
When I do an update on my value object, it reflects the change in my system.
Strange...:)

What could the problem be?
Any help will be much appreciated.

--Alen



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



M:N && Proxy

2003-06-17 Thread Edson Carlos Ericksson Richter
Hi!

I've discovered a bug in M:N relationships and proxys.

To give some light about the problem, if I have two classes

class A {
   private Integer id;
   private String description;
   public Integer getId( ) { return id; }
   public void setId( Integer newId ) { this.id = newId; }
   public String getDescription( ) { return this.description; }
   public void setDescription( String newDesc ) { this.description =
newDesc; }
}

class B {
   private Integer id;
   private List allA;
   public Integer getId( ) { return id; }
   public void setId( Integer newId ) { this.id = newId; }
   public void setAllA( List allA ) { this.allA = allA; }
   public void getAllA( ) { return this.allA; }
}

Now, I create a  non-decomposed M:N relationship. Then if I delete an
element with

B b = new B();
b.getAllA( ).remove( 0 );

OJB removes the A object from the indirection table AND from A table!!!
Now, if I change to:

class B {
   private Integer id;
   private List allA = new ArrayList();
   public Integer getId( ) { return id; }
   public void setId( Integer newId ) { this.id = newId; }
   public void setAllA( List allA ) { this.allA.clear(); this.allA.addAll(
allA ); }
   public void getAllA( ) { return this.allA; }
}


OJB works as expected. Appear that OJB is not correctly managing
CollectionProxy elements in M:N non-decomposed (I've not tried manual M:N).

Can you confirm this?

Thanks,

Edson Richter


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.490 / Virus Database: 289 - Release Date: 16/6/2003


smime.p7s
Description: S/MIME cryptographic signature


Problem with ObjectCacheDefaultImpl

2003-06-17 Thread Todd Lindner
The class org.apache.ojb.broker.cache.ObjectCacheDefaultImpl has a flaw 
that can (and has in my case) cause an OutOfMemoryError.

It is a basic object cache.  Objects stored in a hashtable keyed by 
strings constructed from Identity objects.  It is even smart and uses 
SoftReferences so the cache doesn't get too big and fat thanks to the 
GC.  There is one problem with this though.

The values of the hashtable are soft references so they are cleared, 
however the keys of the hashtable will not go away because they are 
still in the hash table!  When doing a load process (inserting 5000+ 
records with unique keys) in a JVM with -Xmx8M, I receive an 
OutOfMemoryError after a few minutes.

A possibility would be to use the LRUMap and set a maximum, so your cache 
doesn't get too big
http://jakarta.apache.org/commons/collections/api/org/apache/commons/collections/LRUMap.html

But that has more disadvantages than advantages probably.  I'm not in 
the mindset to solve this problem, so I am just disabling the cache 
during my load process.  Just wanted to let people know.

Regards,
Todd Lindner


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: LONG RAW Problem on Oracle needs to be addressed, I think

2003-06-17 Thread Jason McKerr
That sounds fine.  VARBINARY maps to BLOB.

J

On Tue, 2003-06-17 at 13:25, Thomas Mahler wrote:
> hi again,
> 
> 
> 
> > Maybe it's easier to simply change LONGVARBINARY to VARBINARY in our 
> > torque scripts...
> 
> checked into CVS!
> 
> > cheers,
> > Thomas
> > 
> >>
> >> The real issue is that RAW only supports 2000 length, and LONG raw is 2
> >> Gigs.
> >>
> >> Jason
> >>
> >>
> >> -
> >> 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]



Re: LONG RAW Problem on Oracle needs to be addressed, I think

2003-06-17 Thread Thomas Mahler
hi again,



Maybe it's easier to simply change LONGVARBINARY to VARBINARY in our 
torque scripts...
checked into CVS!

cheers,
Thomas
The real issue is that RAW only supports 2000 length, and LONG raw is 2
Gigs.
Jason

-
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]


Re: LONG RAW Problem on Oracle needs to be addressed, I think

2003-06-17 Thread Thomas Mahler
Hi Jason,

Jason McKerr wrote:
Hey guys, a lot of people are running into the problem of two LONG RAW
columns in Oracle.  In the OJB_DMAP_ENTRIES two LONGVARBINARY are
created.
In oracle, this translates to two LONG RAW columns which is illegal in
oracle 9i or 8i.
So basically, I need to know if it's OK to use RAW columns for the
various LONGVARBINARY columns in the OJB Core tables?
Yes, that should be fine.
We need those columns to store gzipped serialized Identity Objects. 
Unfortunately there is no fixed size to them (an Identity could have any 
number of primary key attributes).
But they should < 1024 bytes for nearly all possible applications.

so using raw(2000) should be perfect.

If so, can you guys change the db.props file in the
torque/sql/base/oracle directory to RAW?
We have to tell the Torque team about this issue.
Maybe it's easier to simply change LONGVARBINARY to VARBINARY in our 
torque scripts...

cheers,
Thomas
The real issue is that RAW only supports 2000 length, and LONG raw is 2
Gigs.
Jason

-
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]


Re: confused by behavior of 1:n relationship

2003-06-17 Thread Jakob Braeuchi
hi bonnie,

it is a bug :(

see http://scarab.werken.com/scarab/issues/id/OJB181

jakob

Jakob Braeuchi wrote:

hi bonnie,

Bonnie MacKellar wrote:

Sure, I understand that the customer returned in my
first set of code is a proxy. But I thought that
when I traverse the link, the entire object is retrieved.
that's true ojb materialized the real object behind the proxy but the 
payer still references the proxy.

It certainly behaves that way. I can print out
the name of the customer (part of the full business
object) as can be seen from the code. I can also
print out the correct customer ID. So why can't OJB
take that same customerID value and stuff it in
the generated INSERT query? That is what I don't get.
it may be a bug :(

I did not try using a non-proxied reference, but
I bet it would work. I am trying to understand why.
thanks,
Bonnie
 

hth

jakob

 

-Original Message-
From: Jakob Braeuchi [mailto:[EMAIL PROTECTED]
Sent: Monday, June 16, 2003 4:46 PM
To: OJB Users List
Subject: Re: confused by behavior of 1:n relationship
hi bonnie,

Bonnie MacKellar wrote:

  

On Friday, I posted asking about a strange bug in my system. 
I never got any
  

responses, but I did find the cause of the bug. The problem 
is, I don't
  

understand the cause. I was hoping that someone who knows more about
relationship and proxy behavior might enlighten me. I really need to
understand this so I can not make these mistakes in the future.
I have three classes : User, Customer, and PaymentTxn. At 
the point at
  

which the strange behavior occurred, I had retrieved a user, using a
criteria query, and was creating a PaymentTxn object. The User object
has a reference to a Customer object, which I wanted to use
in my new PaymentTxn object. The User object's reference was 
specified in the repository_user.xml file like this :

   name="customerID"
   column="customerID"
   jdbc-type="INTEGER"
/>
  name="customer"
  
class-ref="com.mobius.activebill.persistentobjects.Customer"
  

  proxy="true"
>

have you tried to use a non-proxied reference-descriptor ?

  



The reference in the PaymentTxn object is specified in the same way.

When I tried to get the Customer via the User object by following the
reference, the strange behavior occurred. I could get the 
Customer object,
  

and print out its id properly. But when I tried to add it to the User
object,
the generated SQL got the customer id value wrong. When I changed
the code so that I used a criteria based query to retrieve the
Customer object, the generated SQL was fine. Why? What is 
the difference
  

in behavior? The sequence of retrievals looks the same in 
either case.
  

Here is the code that did not work :
CustomerInterface customer = payer.getCustomer();
System.out.println("customer name is " + customer.getName());
System.out.println("customer id is " + customer.getID());
paymentTxn.setIssuingCustomer(customer); 
broker.store(paymentTxn);
The name and id printed out correctly, but after calling 
setIssuingCustomer,
  

the associated SQL insert statement had the wrong value (a 0) for
customerID.

the customer referenced by payer.getCustomer is actually a proxy !

  

But this code did work :
CustomerInterface customer = 
retrieveCustomerByName("TheBigCustomer");
  

System.out.println("customer name is " + customer.getName());
System.out.println("customer id is " + customer.getID());
paymentTxn.setIssuingCustomer(customer);
broker.store(paymentTxn);

here the customer is a "real" business object (i assume you did not 
define proxy=true in the class-descriptor)

  

The only difference is the way in which I obtained
the customer. Why should this be different?
thanks,
Bonnie MacKellar
software engineer
Mobius Management Systems, Inc.
[EMAIL PROTECTED]
  

hth

jakob

  




-
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]


Re: R: Problem with repository.xml when upgrading from RC2 to RC3. FIXED!!!

2003-06-17 Thread gfaerman
We had not replaced the repository.dtd with the new one.

Having it replaced, now it works!

Thank you very much

Gustavo.


--
Thanks for your answer.

Sorry our ignorance. We did not find any differences we should take care 
off. Could you point us any key attributes in those configuration files we 
should take care off?

By the way, if we go back to RC2 everything is fine.

Thanks,
Gustavo.





Farnea Massimiliano <[EMAIL PROTECTED]> 
17/06/2003 12:33 p.m.
Please respond to
"OJB Users List" <[EMAIL PROTECTED]>


To
OJB Users List <[EMAIL PROTECTED]>
cc

Subject
R: Problem with repository.xml  when upgrading from RC2 to RC3







We haver an app running ok under Tomcat 3.3 JVM 1.3.1, OJB RC2

When we upgrade to OJB RC3, we could not initialize the OJB broker. The 
error is 


U should upgrade configuration files too: OJB.properties, repository.dtd 
and
repository.xml. 
Check the differences with the files released with the rc3 archive.

max

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: R: Problem with repository.xml when upgrading from RC2 to RC3

2003-06-17 Thread gfaerman
Thanks for your answer.

Sorry our ignorance. We did not find any differences we should take care 
off. Could you point us any key attributes in those configuration files we 
should take care off?

By the way, if we go back to RC2 everything is fine.

Thanks,
Gustavo.





Farnea Massimiliano <[EMAIL PROTECTED]> 
17/06/2003 12:33 p.m.
Please respond to
"OJB Users List" <[EMAIL PROTECTED]>


To
OJB Users List <[EMAIL PROTECTED]>
cc

Subject
R: Problem with repository.xml  when upgrading from RC2 to RC3







We haver an app running ok under Tomcat 3.3 JVM 1.3.1, OJB RC2

When we upgrade to OJB RC3, we could not initialize the OJB broker. The 
error is 


U should upgrade configuration files too: OJB.properties, repository.dtd 
and
repository.xml. 
Check the differences with the files released with the rc3 archive.

max

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




LONG RAW Problem on Oracle needs to be addressed, I think

2003-06-17 Thread Jason McKerr
Hey guys, a lot of people are running into the problem of two LONG RAW
columns in Oracle.  In the OJB_DMAP_ENTRIES two LONGVARBINARY are
created.

In oracle, this translates to two LONG RAW columns which is illegal in
oracle 9i or 8i.

So basically, I need to know if it's OK to use RAW columns for the
various LONGVARBINARY columns in the OJB Core tables?

If so, can you guys change the db.props file in the
torque/sql/base/oracle directory to RAW?

The real issue is that RAW only supports 2000 length, and LONG raw is 2
Gigs.

Jason


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Any Oracle OJB Users in Production? -- Thomas or someone,Comments on Datatype?

2003-06-17 Thread Jason McKerr
Can someone who knows more about the core tables read and comment as
well?

OK,

First, you need to check your connection properties in OJB.properties. 
There you can control the number of open connections, pooling, all of
that good stuff.

The next thing is that on one of the tables (OJB_DMAP_ENTRIES) in OJB
tries to create two LONG RAW columns, which you can't do in Oracle. 

So I changed all of the various LONG RAW columns in the core tables in
Oracle to RAW(2000).  LONG RAW and RAW are both non-interpreted binary
data columns, LONG RAW supports up to 2 Gig's, and RAW up to 2000.

Now, I don't know what OJB needs a 2GIG column for, but my tests passed
on RAW(2000).

Finally, I didn't actually mess with the torque stuff, I just reverse
engineering everything into a SQL file and ran it on Oracle.  

If you want to do it with Torque, you'll need to change some
configuration files:

1) You need to open/unzip the "torque-3.0.jar" in the lib directory.
2) You need to open the db.props file for Oracle (in sql/base/oracle
directory). This file controls the JDBC mappings for the tables that are
created.  

Change: LONGVARBINARY = LONG RAW
to  LONGVARBINARY = RAW
3) Zip it up again with the new file and run


I could use some commentary on this from Armin or Thomas as to if this
is OK for all uses.  I've run all of my JUnit/JUnitEE tests without a
problem.  But 2000 is a lot smaller than 2 Gig.

If you need more help, let me know.

Jason





On Tue, 2003-06-17 at 09:24, [EMAIL PROTECTED] wrote:
> Thanks for the info Jason - 
> 
> I am getting errors when running junit.  I have played around with 
> different usernames in Oracle, different strategies for including jar 
> files, searching the mailing list for hints on Oracle installs, etc but to 
> no avail at this point.  I have followed the on line docs around install 
> and configuration to the tee but clearly there must be some manual, 
> undocumented steps I am missing for an Oracle install. 
> 
> My bin\build junit output looks like:
> 
> junit-no-compile-no-prepare:
> [junit] Running org.apache.ojb.broker.AllTests
> [junit] Tests run: 209, Failures: 12, Errors: 66, Time elapsed: 86.388 
> sec
> [junit] TEST org.apache.ojb.broker.AllTests FAILED
> [junit] Running org.apache.ojb.odmg.AllTests
> [junit] [BOOT] INFO: OJB.properties: 
> file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
> [junit] Tests run: 156, Failures: 12, Errors: 57, Time elapsed: 15.059 
> sec
> [junit] TEST org.apache.ojb.odmg.AllTests FAILED
> [junit] Running org.apache.ojb.soda.AllTests
> [junit] [BOOT] INFO: OJB.properties: 
> file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
> [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 5.116 sec
> [junit] Running org.apache.ojb.otm.AllTests
> [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 5.197 sec
> 
> I am getting errors when trying to allocate connections, invalid user name 
> and password errors, could init identitiy for given object errors (all 
> java.lang.Long errors).  Any configuration help you can provide me to get 
> my Oracle junit tests at an acceptable level would be great.  I am 
> currently evaluating Hibernate as well.
> 
> Peter
> 
> 
> 
> 
> 
> Jason McKerr <[EMAIL PROTECTED]>
> 06/17/2003 12:06 PM
> Please respond to "OJB Users List"
> 
>  
> To: OJB Users List <[EMAIL PROTECTED]>
> cc: 
> Subject:Re: Any Oracle OJB Users in Production?
> 
> 
> I am running OJB succesfully in production on both Oracle 8i (8.1.7.4.0)
> and Oracle 9i (9.2.0.2.0).  I haven't had any problems except that in
> Oracle you can't have multiple long (is that the right one?) columns in
> a single table.  I just changed the data types.  I'll have to look up
> what I changed them too.
> 
> Can you describe some of the problems you are having? 
> 
> Jason McKerr
> Northwest Alliance for Computational Science and Engineering
> 
> On Tue, 2003-06-17 at 04:55, [EMAIL PROTECTED] wrote:
> > I am currently evaluating the use of OJB for a new web application 
> server 
> > framework for my company and would very much like to use OJB or some 
> other 
> > object - relational framework.  I have had many problems and issues 
> > getting the OJB unit test scripts to work against my database however, 
> so 
> > I don't have a great deal of confidence that OJB1.0 can be rolled out 
> > successfully in an enterprise production environment based upon Oracle 
> > 8.1.7.
> > 
> > Can someone share with me any of their experiences with a working, 
> > production Oracle instance of OJB?  Does anyone have a working, 
> functional 
> > OJB installation and configuration in production based upon an Oracle 
> > backend?  Can you send your config files that you use/used to 
> successfully 
> > run junit?
> > 
> > thx in advance
> > 
> > Peter
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > [EMAIL PROTECTED]
> > 06/13/2003 09:10 AM
> > Please respond to "OJB Users List"

AW: OJB XDoclet module

2003-06-17 Thread Thomas Dudziak
Yes it will (as Thomas Mahler pointed out, the source is already
available in the Xdoclet JIRA) but the integration process (with which I
have nothing to do) seems to be somewhat slow, especially since there
have been some problems lately with the 1.2b3 release (of which the ojb
module is not (yet) a part).

Anyway, if you want to build the module, it should simply be a matter of
unpacking the ojb module source into the modules sub-directory of
xdoclet and then building xdoclet.

BTW, the four bugs noted on this list are already fixed in the source in
the Xdoclet JIRA.


Tom


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Any Oracle OJB Users in Production?

2003-06-17 Thread PWorth
Thanks for the info Jason - 

I am getting errors when running junit.  I have played around with 
different usernames in Oracle, different strategies for including jar 
files, searching the mailing list for hints on Oracle installs, etc but to 
no avail at this point.  I have followed the on line docs around install 
and configuration to the tee but clearly there must be some manual, 
undocumented steps I am missing for an Oracle install. 

My bin\build junit output looks like:

junit-no-compile-no-prepare:
[junit] Running org.apache.ojb.broker.AllTests
[junit] Tests run: 209, Failures: 12, Errors: 66, Time elapsed: 86.388 
sec
[junit] TEST org.apache.ojb.broker.AllTests FAILED
[junit] Running org.apache.ojb.odmg.AllTests
[junit] [BOOT] INFO: OJB.properties: 
file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
[junit] Tests run: 156, Failures: 12, Errors: 57, Time elapsed: 15.059 
sec
[junit] TEST org.apache.ojb.odmg.AllTests FAILED
[junit] Running org.apache.ojb.soda.AllTests
[junit] [BOOT] INFO: OJB.properties: 
file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
[junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 5.116 sec
[junit] Running org.apache.ojb.otm.AllTests
[junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 5.197 sec

I am getting errors when trying to allocate connections, invalid user name 
and password errors, could init identitiy for given object errors (all 
java.lang.Long errors).  Any configuration help you can provide me to get 
my Oracle junit tests at an acceptable level would be great.  I am 
currently evaluating Hibernate as well.

Peter





Jason McKerr <[EMAIL PROTECTED]>
06/17/2003 12:06 PM
Please respond to "OJB Users List"

 
To: OJB Users List <[EMAIL PROTECTED]>
cc: 
Subject:Re: Any Oracle OJB Users in Production?


I am running OJB succesfully in production on both Oracle 8i (8.1.7.4.0)
and Oracle 9i (9.2.0.2.0).  I haven't had any problems except that in
Oracle you can't have multiple long (is that the right one?) columns in
a single table.  I just changed the data types.  I'll have to look up
what I changed them too.

Can you describe some of the problems you are having? 

Jason McKerr
Northwest Alliance for Computational Science and Engineering

On Tue, 2003-06-17 at 04:55, [EMAIL PROTECTED] wrote:
> I am currently evaluating the use of OJB for a new web application 
server 
> framework for my company and would very much like to use OJB or some 
other 
> object - relational framework.  I have had many problems and issues 
> getting the OJB unit test scripts to work against my database however, 
so 
> I don't have a great deal of confidence that OJB1.0 can be rolled out 
> successfully in an enterprise production environment based upon Oracle 
> 8.1.7.
> 
> Can someone share with me any of their experiences with a working, 
> production Oracle instance of OJB?  Does anyone have a working, 
functional 
> OJB installation and configuration in production based upon an Oracle 
> backend?  Can you send your config files that you use/used to 
successfully 
> run junit?
> 
> thx in advance
> 
> Peter
> 
> 
> 
> 
> 
> 
> 
> [EMAIL PROTECTED]
> 06/13/2003 09:10 AM
> Please respond to "OJB Users List"
> 
> 
> To: "OJB Users List" <[EMAIL PROTECTED]>
> cc: "OJB Users List" <[EMAIL PROTECTED]>
> Subject:RE: Problem with junit testing on Oracle 8.1.7
> 
> 
> Looks like I got around the class not found problem by converting the 
zip 
> file into a jar and then putting it in the lib directory.  Now my junit 
> output looks like:
> 
> junit-no-compile-no-prepare:
> [junit] Running org.apache.ojb.broker.AllTests
> [junit] Tests run: 209, Failures: 12, Errors: 66, Time elapsed: 
97.977 
> 
> sec
> [junit] TEST org.apache.ojb.broker.AllTests FAILED
> [junit] Running org.apache.ojb.odmg.AllTests
> [junit] [BOOT] INFO: OJB.properties: 
> file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
> [junit] Tests run: 156, Failures: 12, Errors: 57, Time elapsed: 
16.604 
> 
> sec
> [junit] TEST org.apache.ojb.odmg.AllTests FAILED
> [junit] Running org.apache.ojb.soda.AllTests
> [junit] [BOOT] INFO: OJB.properties: 
> file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
> [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 5.758 
sec
> [junit] Running org.apache.ojb.otm.AllTests
> [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 5.859 
sec
> 
> 
> Doesn't give me a warm and fuzzy that this package is ready for prime 
time 
> 
> on Oracle 8i.
> 
> Peter
> 
> 
> 
> 
> 
> 
> [EMAIL PROTECTED]
> 06/13/2003 07:55 AM
> Please respond to "OJB Users List"
> 
> 
> To: "OJB Users List" <[EMAIL PROTECTED]>
> cc: 
> Subject:RE: Problem with junit testing on Oracle 8.1.7
> 
> 
> Thanks for the response Mahler.
> 
> There's the rub, its a zip file actually.  I have 

Re: Any Oracle OJB Users in Production?

2003-06-17 Thread Jason McKerr
I am running OJB succesfully in production on both Oracle 8i (8.1.7.4.0)
and Oracle 9i (9.2.0.2.0).  I haven't had any problems except that in
Oracle you can't have multiple long (is that the right one?) columns in
a single table.  I just changed the data types.  I'll have to look up
what I changed them too.

Can you describe some of the problems you are having? 

Jason McKerr
Northwest Alliance for Computational Science and Engineering

On Tue, 2003-06-17 at 04:55, [EMAIL PROTECTED] wrote:
> I am currently evaluating the use of OJB for a new web application server 
> framework for my company and would very much like to use OJB or some other 
> object - relational framework.  I have had many problems and issues 
> getting the OJB unit test scripts to work against my database however, so 
> I don't have a great deal of confidence that OJB1.0 can be rolled out 
> successfully in an enterprise production environment based upon Oracle 
> 8.1.7.
> 
> Can someone share with me any of their experiences with a working, 
> production Oracle instance of OJB?  Does anyone have a working, functional 
> OJB installation and configuration in production based upon an Oracle 
> backend?  Can you send your config files that you use/used to successfully 
> run junit?
> 
> thx in advance
> 
> Peter
> 
> 
> 
> 
> 
> 
> 
> [EMAIL PROTECTED]
> 06/13/2003 09:10 AM
> Please respond to "OJB Users List"
> 
>  
> To: "OJB Users List" <[EMAIL PROTECTED]>
> cc: "OJB Users List" <[EMAIL PROTECTED]>
> Subject:RE: Problem with junit testing on Oracle 8.1.7
> 
> 
> Looks like I got around the class not found problem by converting the zip 
> file into a jar and then putting it in the lib directory.  Now my junit 
> output looks like:
> 
> junit-no-compile-no-prepare:
> [junit] Running org.apache.ojb.broker.AllTests
> [junit] Tests run: 209, Failures: 12, Errors: 66, Time elapsed: 97.977 
> 
> sec
> [junit] TEST org.apache.ojb.broker.AllTests FAILED
> [junit] Running org.apache.ojb.odmg.AllTests
> [junit] [BOOT] INFO: OJB.properties: 
> file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
> [junit] Tests run: 156, Failures: 12, Errors: 57, Time elapsed: 16.604 
> 
> sec
> [junit] TEST org.apache.ojb.odmg.AllTests FAILED
> [junit] Running org.apache.ojb.soda.AllTests
> [junit] [BOOT] INFO: OJB.properties: 
> file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
> [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 5.758 sec
> [junit] Running org.apache.ojb.otm.AllTests
> [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 5.859 sec
> 
> 
> Doesn't give me a warm and fuzzy that this package is ready for prime time 
> 
> on Oracle 8i.
> 
> Peter
> 
> 
> 
> 
> 
> 
> [EMAIL PROTECTED]
> 06/13/2003 07:55 AM
> Please respond to "OJB Users List"
> 
>  
> To: "OJB Users List" <[EMAIL PROTECTED]>
> cc: 
> Subject:RE: Problem with junit testing on Oracle 8.1.7
> 
> 
> Thanks for the response Mahler.
> 
> There's the rub, its a zip file actually.  I have modified the build.bat 
> script to incorporate the zip file in the JVM classpath argument as 
> follows:
> 
> @echo off
> REM Please let JAVA_HOME point to your JDK base directory
> if "%JAVA_HOME%" == "" set JAVA_HOME=C:\jdk1.3.1_08
> 
> set JAVA=%JAVA_HOME%\bin\java
> set cp=
> for %%i in (lib\*.jar) do call bin\cp.bat %%i
> set 
> CP=..\target\classes;..\target\classestest;%JAVA_HOME%\lib\tools.jar;%CP%
> 
> set 
> local_cp=c:\ora8i\jdbc\lib\classes12.zip;c:\websphere\appserver\lib\j2ee.jar;%CP%
> echo JVM classpath is %local_cp%...
> 
> "%JAVA%" -classpath "%local_cp%" -Dant.home=lib org.apache.tools.ant.Main 
> %1 %2 %3 %4 %5 %6 -buildfile build.xml
> 
> This seemed to work fine when I built the test db (bin\build 
> prepare-testdb) but does not seem to work when I run the unit tests 
> (bin\build junit)???  I'm a bit stumped.
> 
> Peter
> 
> 
> 
> 
> 
> Mahler Thomas <[EMAIL PROTECTED]>
> 06/13/2003 03:20 AM
> Please respond to "OJB Users List"
> 
>  
> To: "'OJB Users List'" <[EMAIL PROTECTED]>
> cc: 
> Subject:RE: Problem with junit testing on Oracle 8.1.7
> 
> 
> Just place the drivers jar file in the OJB lib directory.
> 
> > -Original Message-
> > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> > Sent: Friday, June 13, 2003 12:13 AM
> > To: OJB Users List
> > Subject: Re: Problem with junit testing on Oracle 8.1.7
> > 
> > 
> > It looks like the JVM that is executing the tests can't find 
> > my driver 
> > class, even though classes12.zip (the Oracle driver library) 
> > is on the JVM 
> > classpath when it executes.  Is there a specific 
> > modification/configuration I need to make to force junit to 
> > find my driver 
> > class?
> > 
> > Here is a sample of the errors I am getting in target\test
> > 
> > thx in advance
> > 
> > Peter
> > 
> > 
> > 
> > Testsuite: org.apache.ojb.broker.AllTests
> > 

R: Problem with repository.xml when upgrading from RC2 to RC3

2003-06-17 Thread Farnea Massimiliano

We haver an app running ok under Tomcat 3.3 JVM 1.3.1, OJB RC2

When we upgrade to OJB RC3, we could not initialize the OJB broker. The 
error is 


U should upgrade configuration files too: OJB.properties, repository.dtd and
repository.xml. 
Check the differences with the files released with the rc3 archive.

max

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: junit test fails

2003-06-17 Thread Mete Kural
Thanks for the explanation of errors vs. failures. Now I see.. I looked in 
tests-broker.txt and found the below error report. It's a "[SQL0122] Column ID or 
expression specified in SELECT list not valid" error. The stack trace shows the trace 
until StatementsForClassImpl.getPreparedStmt(StatementsForClassImpl.java:182) but it 
doesn't go any further than that (says "... 26 more"). So I can't figure out what the 
root cause of the error is. Do you know if there is a way to make the logger print all 
of the stack trace even if it is very long?

Testcase: testReportQuery took 0.093 sec
Caused an ERROR
[SQL0122] Column ID or expression specified in SELECT list not valid.
java.sql.SQLException: [SQL0122] Column ID or expression specified in SELECT list not 
valid.
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:532)
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:503)
at 
com.ibm.as400.access.AS400JDBCStatement.commonPrepare(AS400JDBCStatement.java:1262)
at 
com.ibm.as400.access.AS400JDBCPreparedStatement.(AS400JDBCPreparedStatement.java:183)
at 
com.ibm.as400.access.AS400JDBCConnection.prepareStatement(AS400JDBCConnection.java:1775)
at 
com.ibm.as400.access.AS400JDBCConnection.prepareStatement(AS400JDBCConnection.java:1605)
at 
org.apache.ojb.broker.accesslayer.StatementsForClassImpl.prepareStatement(StatementsForClassImpl.java:247)
at 
org.apache.ojb.broker.accesslayer.StatementsForClassImpl.getPreparedStmt(StatementsForClassImpl.java:182)
at 
org.apache.ojb.broker.accesslayer.StatementManager.getPreparedStatement(StatementManager.java:673)
at 
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeQuery(JdbcAccessImpl.java:257)
at org.apache.ojb.broker.accesslayer.RsIterator.(RsIterator.java:199)
at 
org.apache.ojb.broker.accesslayer.ReportQueryRsIterator.(ReportQueryRsIterator.java:86)
at 
org.apache.ojb.broker.core.ReportRsIteratorFactoryImpl.createRsIterator(ReportRsIteratorFactoryImpl.java:96)
at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getRsIteratorFromQuery(PersistenceBrokerImpl.java:2311)
at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getReportQueryIteratorFromQuery(PersistenceBrokerImpl.java:2361)
at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getReportQueryIteratorByQuery(PersistenceBrokerImpl.java:2286)
at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getReportQueryIteratorByQuery(DelegatingPersistenceBroker.java:281)
at org.apache.ojb.broker.QueryTest.testReportQuery(QueryTest.java:294)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
rethrown as org.apache.ojb.broker.PersistenceBrokerSQLException: [SQL0122] Column ID 
or expression specified in SELECT list not valid.
at 
org.apache.ojb.broker.accesslayer.StatementsForClassImpl.getPreparedStmt(StatementsForClassImpl.java:187)
at 
org.apache.ojb.broker.accesslayer.StatementManager.getPreparedStatement(StatementManager.java:673)
at 
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeQuery(JdbcAccessImpl.java:257)
at org.apache.ojb.broker.accesslayer.RsIterator.(RsIterator.java:199)
at 
org.apache.ojb.broker.accesslayer.ReportQueryRsIterator.(ReportQueryRsIterator.java:86)
at 
org.apache.ojb.broker.core.ReportRsIteratorFactoryImpl.createRsIterator(ReportRsIteratorFactoryImpl.java:96)
at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getRsIteratorFromQuery(PersistenceBrokerImpl.java:2311)
at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getReportQueryIteratorFromQuery(PersistenceBrokerImpl.java:2361)
at 
org.apache.ojb.broker.core.PersistenceBrokerImpl.getReportQueryIteratorByQuery(PersistenceBrokerImpl.java:2286)
at 
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getReportQueryIteratorByQuery(DelegatingPersistenceBroker.java:281)
at org.apache.ojb.broker.QueryTest.testReportQuery(QueryTest.java:294)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
Caused by: java.sql.SQLException: [SQL0122] Column ID or expression specified in 
SELECT list not valid.
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:532)
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:503)
at 
com.ibm.as400.access.AS400JDBCStatement.commonPrepare(AS400JDBCStatement.java:1262)
at 
com.ibm.as400.access.AS400JDBCPreparedStatement.(AS400JDBCPreparedStatement.java:183)
at 
com.ibm.as400.acce

Problem with repository.xml when upgrading from RC2 to RC3

2003-06-17 Thread gfaerman
We haver an app running ok under Tomcat 3.3 JVM 1.3.1, OJB RC2

When we upgrade to OJB RC3, we could not initialize the OJB broker. The 
error is 

*
Root cause:

org.apache.ojb.broker.OJBRuntimeException: Try to set unkown field 
'access' value: null

rethrown as org.apache.ojb.broker.metadata.MetadataException: Could not 
read repository class descriptor data, using repository: repository.xml: 
Exception when reading metadata information, please check your 
repository.xml file: Try to set unkown field 'access' value: null

*

There is no access field in our repository.xml!!!

Any ideas out there?

Thanks in advance,

Gustavo Faerman
Buenos Aires, Argentina.


Complete stack



2003-06-17 12:20:49 - Ctx(/acm) : Exception in R( /acm + /loginAction.do + 
null) - java.lang.ExceptionInInitializerError: 
org.apache.ojb.broker.OJBRuntimeException: Try to set unkown field 
'access' value: null

at 
org.apache.ojb.broker.metadata.FieldDescriptor.setAccess(Unknown Source)

at 
org.apache.ojb.broker.metadata.RepositoryXmlHandler.startElement(Unknown 
Source)

at 
org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown 
Source)(Compiled Code)

at 
org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown 
Source)

at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown 
Source)

at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown 
Source)

at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
 
Source)(Compiled Code)

at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown 
Source)

at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown 
Source)

at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown 
Source)

at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)

at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown 
Source)

at 
org.apache.ojb.broker.metadata.RepositoryPersistor.buildRepository(Unknown 
Source)

at 
org.apache.ojb.broker.metadata.RepositoryPersistor.readDescriptorRepository(Unknown 
Source)

at org.apache.ojb.broker.metadata.MetadataManager.init(Unknown 
Source)

at org.apache.ojb.broker.metadata.MetadataManager.(Unknown 
Source)

at org.apache.ojb.broker.metadata.MetadataManager.(Unknown 
Source)

at 
org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl.buildDefaultKey(Unknown 
Source)

at 
org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl.(Unknown 
Source)

at java.lang.Class.newInstance0(Native Method)

at java.lang.Class.newInstance(Class.java:262)

at 
org.apache.ojb.broker.core.PersistenceBrokerFactoryFactory.init(Unknown 
Source)

at 
org.apache.ojb.broker.core.PersistenceBrokerFactoryFactory.(Unknown 
Source)

at 
org.apache.ojb.broker.PersistenceBrokerFactory.defaultPersistenceBroker(Unknown 
Source)

at 
ar.com.fys.rio.acm.action.LoginAction.perform(LoginAction.java:29)

at org.apache.struts.action.Action.execute(Action.java:415)

at 
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:480)

at 
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)

at 
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1420)

at 
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:520)

at javax.servlet.http.HttpServlet.service(HttpServlet.java)

at javax.servlet.http.HttpServlet.service(HttpServlet.java)

at 
org.apache.tomcat.facade.ServletHandler.doService(ServletHandler.java:574)

at org.apache.tomcat.core.Handler.invoke(Handler.java:322)

at org.apache.tomcat.core.Handler.service(Handler.java:235)

at 
org.apache.tomcat.facade.ServletHandler.service(ServletHandler.java:485)

at 
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:917)

at 
org.apache.tomcat.core.ContextManager.service(ContextManager.java:833)

at 
org.apache.tomcat.modules.server.Http10Interceptor.processConnection(Http10Interceptor.java:176)

at 
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:494)

at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:516)

at java.lang.Thread.run(Thread.java:512)

rethrown as org.apache.ojb.broker.metadata.MetadataException: Exception 
when reading metadata information, please check your repository.xml file: 
Try to set unkown field 'access' value: null

at 
org.apache.ojb.broker.metadata.RepositoryXmlHandler.startElement(Unknown 
Source)

at 
org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown 
Source)(Compiled Code)

at 
org.apache.xerces.parsers.AbstractXMLDocume

RE: DMapImpl

2003-06-17 Thread Mahler Thomas
Hi again,

> -Original Message-
> From: Leeuw van der, Tim [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 17, 2003 3:44 PM
> To: 'OJB Users List'
> Subject: RE: DMapImpl
> 
> 
> Hi,
> 
> Is this something that the ODMG API prescribes? 

ODMG just states that any persistence capable object should be allowed as
key and value.
But ODMG does not specify that *all* primitive types (and STrings) must be
handled as persistence capable entities!
(That's one of the things that is changed in JDO!)

OJB is taken advantage of this gap in the spec and frankly tells you "We are
happy to store *references* to everything in a DMap, but the user is
responsible to store the *everything*" ;-)

> Or is it a feature /
> limitation of the current implementation?
> I have assumed that I can simply use a string as the map-key.

You have to implement your own map and provide a table for it.

> This is rather a :-( for me, as I'm converting from a 
> situation where my
> keys are plain strings.

It's not a problem to implement such a map. 
We could easiliy provide utility classes and the respective tables and
mappings.
But we don't do so as a lot of user are already moarning about all the
tables the ODMG implementation requires.

cheers,
Thomas


> 
> Thanks,
> 
> --Tim
> 
> -Original Message-
> From: Mahler Thomas [mailto:[EMAIL PROTECTED]
> Sent: dinsdag 17 juni 2003 15:20
> To: 'OJB Users List'
> Subject: RE: DMapImpl
> 
> 
> DMapImpl keys must be real entities! that is there must be a 
> table to store
> them and a class-descriptor provided.
> 
> > -Original Message-
> > From: Leeuw van der, Tim [mailto:[EMAIL PROTECTED]
> > Sent: Tuesday, June 17, 2003 3:15 PM
> > To: '[EMAIL PROTECTED]'
> > Cc: 'OJB Users List'
> > Subject: RE: DMapImpl
> > 
> > 
> > Hi Cedric,
> > 
> > Did you ever get an answer to this question? Can the key for 
> > a DMapImpl
> > indeed not be a plain java.lang.String instance??
> > Or is it something in the repository.xml that would need to 
> > be specified?
> > 
> > Regards,
> > 
> > --Tim
> > 
> > -Original Message-
> > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> > Sent: donderdag 12 juni 2003 10:43
> > To: OJB Users List
> > Subject: Re: DMapImpl
> > 
> > 
> > Sorry, it's the key of the map which can't be a java type.
> > So what is the solution ? I can't find nothing about DMapImpl in the
> > tutorial.
> > 
> > 
> > Selon "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>:
> > 
> > > Hello,
> > > 
> > > I'm trying to use the DMapImpl class to store java Map 
> > objects, but this
> > > exception is thrown :
> > > 
> > > 
> > org.apache.ojb.broker.metadata.ClassNotPersistenceCapableExcep
> > tion: Could
> > > not
> > > init Identity for given object class java.lang.String: 
> > java.lang.String
> > not
> > > found in OJB Repository
> > > 
> > > Does this mean I can't store String objects as Map values ? 
> > Must I extend
> > > the
> > > String class to add an identifier ? Isn't there any other 
> solution ?
> > > 
> > > Regards,
> > > Cedric
> > > 
> > > -- 
> > > 
> > > 
> > 
> -
> > > 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]



RE: addLessThan or addBetween with Dates in mySQL

2003-06-17 Thread Marcelo Magno
Thank you, I did not know that repository.xml must contain the p6soy driver...

Now it's workin fine, Thakiu a lot Thimo...

Abracos
MMAGNO

-Original Message-
From: Thimo König [mailto:[EMAIL PROTECTED]
Sent: terça-feira, 17 de junho de 2003 11:24
To: OJB Users List
Subject: RE: addLessThan or addBetween with Dates in mySQL


>   How is the correct way to have p6spy to display all the sql's?

in repository.xml => driver="com.p6spy.engine.spy.P6SpyDriver"
in spy.properties => realdriver=xxx.your.Driver

> appender=com.p6spy.engine.logging.appender.StdoutLogger. But 
> it still do not send the Sql's to the stdout...

as this produces a lot of output I prefer to use the FileLogger
appender=com.p6spy.engine.logging.appender.FileLogger

Thimo


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.490 / Virus Database: 289 - Release Date: 16/6/2003
 

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE : Lock bug ??

2003-06-17 Thread Emmanuel Dupont
Armin,


Here my code modified as you told me.


I have exactly the same error :

[org.apache.ojb.odmg.TransactionImpl] INFO: Abort transaction was called on
tx [EMAIL PROTECTED], associated PB was
[EMAIL PROTECTED]
[JwtBOjects] Can not lock oid : 0
 for WRITE
org.odmg.TransactionNotInProgressException: Transaction was not open, call
tx.begin() before perform action, current status is: STATUS_ROLLEDBACK
at
org.apache.ojb.odmg.TransactionImpl.checkOpen(TransactionImpl.java:210)
at
org.apache.ojb.odmg.TransactionImpl.commit(TransactionImpl.java:522)
at
com.jware.businessobjects.JwtBOjects.getNextOId(JwtBOjects.java:158)
at
com.jware.test.businessobjects.ApplicationACL.run(ApplicationACL.java:54)
at
com.jware.test.businessobjects.ApplicationACL.main(ApplicationACL.java:38)
Exception in thread "main"


I'm under WSAD5, Ojb RC1, MSSQLServer. My table has only one column with is
the Primary Key. 

If I put the :"tx.lock(newOidObject, JwtTransaction.WRITE);"
After the : "((JwtOIDobject)newOidObject).setUniqueOID(result + 1);"

It is oK. Is there something relies on the fact that my column is alone and
is a PK ?

Anyway, if I let the lock before the set, what is really very weird is that,
when I parse the code with the debudder, 10 calls to this methods are oK but
when I launch it without the debugger it failed on the second calls.

It seems that there are some synchronization problem. I

Is there any chance to me If I try to install the Rc3 ?


--
public long getNextOId(Class oidObjectClass) {

Implementation impl = null; 
Transaction tx = null;
long result = -1;
try {
impl = OJB.getInstance();
Database db = impl.newDatabase();

// Open database
db.open("ACL", Database.OPEN_READ_WRITE);

tx = impl.newTransaction();
tx.begin();

PersistenceBroker broker = ((HasBroker) tx).getBroker();

Query query = new QueryByCriteria(Acl_oid_object_id.class, null);
IAcl_oid_object_id oidObject = (IAcl_oid_object_id) 

broker.getObjectByQuery(query);

// Check and increment the Oid ID
result = ((JwtOIDobject) oidObject).getUniqueOID();

// Delete the old oidObject 
db.deletePersistent(oidObject);

// Create a new OidObject
Acl_oid_object_id newOidObject = new Acl_oid_object_id();

// Lock the nextObject for write access 
tx.lock(newOidObject, JwtTransaction.WRITE);

// Set the modification
((JwtOIDobject)newOidObject).setUniqueOID(result + 1);

} catch (DatabaseOpenException jwte) {
jwte.printStackTrace();
} catch (DatabaseNotFoundException jwte) {
jwte.printStackTrace();
} catch (Exception e) {
// rollback in case of errors
tx.abort();
System.err.println("[JwtBOjects] " + e.getMessage());
} catch (Throwable t) {
t.printStackTrace();
}
tx.commit();

return result;
}


[Snip]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: addLessThan or addBetween with Dates in mySQL

2003-06-17 Thread Thimo König
>   How is the correct way to have p6spy to display all the sql's?

in repository.xml => driver="com.p6spy.engine.spy.P6SpyDriver"
in spy.properties => realdriver=xxx.your.Driver

> appender=com.p6spy.engine.logging.appender.StdoutLogger. But 
> it still do not send the Sql's to the stdout...

as this produces a lot of output I prefer to use the FileLogger
appender=com.p6spy.engine.logging.appender.FileLogger

Thimo


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: addLessThan or addBetween with Dates in mySQL

2003-06-17 Thread Marcelo Magno
How is the correct way to have p6spy to display all the sql's?

I have configured the correct driver in the file spy.properties and have 
redirect the the property apender to 
appender=com.p6spy.engine.logging.appender.StdoutLogger. But it still do not send the 
Sql's to the stdout...

What more do I need to configure?

Hugs,
MMAGNO

-Original Message-
From: Jakob Braeuchi [mailto:[EMAIL PROTECTED]
Sent: segunda-feira, 16 de junho de 2003 15:28
To: OJB Users List
Subject: Re: addLessThan or addBetween with Dates in mySQL


hi aaron,

you can use p6spy to log all the sql.
btw it works with my installation:

QueryByCriteria query;
Criteria crit;
Date d1, d2;
   
d1 = new Date(70,0,1);
d2 = new Date(77,0,1);
   
crit = new Criteria();
crit.addBetween("geburtsDatum", d1, d2);
query = new QueryByCriteria(Person.class, crit);
query.addOrderByAscending("geburtsDatum");
broker.getCollectionByQuery(query);

...
   
...

p6spy output:
SELECT 
A0.isBoss,A0.gebDat,A0.idTest,A0.entryDate,A0.adresse,A0.idPartner,A0.name,A0.test,A0.vorname,A0.id
 
FROM tabPerson A0 WHERE A0.gebDat BETWEEN  ? AND ?  ORDER BY 2

p6spy output with filed variables:
SELECT 
A0.isBoss,A0.gebDat,A0.idTest,A0.entryDate,A0.adresse,A0.idPartner,A0.name,A0.test,A0.vorname,A0.id
 
FROM tabPerson A0 WHERE A0.gebDat BETWEEN  '1970-01-01' AND 
'1977-01-01'  ORDER BY 2


hth
jakob

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Lock bug ??

2003-06-17 Thread Armin Waibel
Hi,

> What is it wrong in this ??
TransactionImpl does internally use the PB instance
you call with
PersistenceBroker broker = ((HasBroker) tx).getBroker()

on tx.commit() TransactionImpl lookup the PB instance
(broker)  and start a PB-tx, does all work and commit the
PB-tx. ODMG-api internally does all PB-tx demarcation.
Thus don't do PB-tx demarcation when using the internal
PB-instance of odmg Transaction implementation.

This should work without problems:

// Create a new ODMG Tx
tx = odmg.newTransaction();
// Start it
tx.begin();
// Catch a broker on it
PersistenceBroker broker = ((HasBroker) tx).getBroker();
// Use the broker for using the PB API
broker.getObjectByQuery(query)
// Stop the ODMG Tx
tx.commit();

regards,
Armin


- Original Message -
From: "Emmanuel Dupont" <[EMAIL PROTECTED]>
To: "'OJB Users List'" <[EMAIL PROTECTED]>; "'Armin Waibel'"
<[EMAIL PROTECTED]>; "'Mahler Thomas'" <[EMAIL PROTECTED]>
Sent: Tuesday, June 17, 2003 3:37 PM
Subject: RE : Lock bug ??


Hi Thomas, Armin

In fact the " jwtImpl.newJwtTransaction();"

Do :

TransactionImpl tx = new TransactionImpl (getCurrentDatabase());

It instantiate a new transaction

Maybe I'm wrong, but I thought that I was obliged to use the Broker like
that in with theODMG/PB API both used.

// Create a new ODMG Tx
Tx = newTransaction();

// Start it
Tx.begin();

// Catch a broker on it
PersistenceBroker broker = ((HasBroker) tx).getBroker();

// Start the broker transaction
 broker.beginTransaction();

// Use the broker for using the PB API
broker.getObjectByQuery(query)

// Stop the broker tx
broker.commitTransaction();

// Stop the ODMG Tx
tx.commit();


What is it wrong in this ??

Each time I call this method a new Tx is create, so why failed the lock
?


Armin,

I tried to put off the broker.beginTransaction() and broker.commit()

But I have now this error on the second in the lock linevery weird
???

It is not the same transaction !!

:

org.apache.ojb.odmg.TransactionImpl] INFO: Abort transaction was called
on
tx [EMAIL PROTECTED], associated PB was
[EMAIL PROTECTED]
[JwtBOjects] null
org.odmg.TransactionNotInProgressException: Transaction was not open,
call
tx.begin() before perform action, current status is: STATUS_ROLLEDBACK
at
org.apache.ojb.odmg.TransactionImpl.checkOpen(TransactionImpl.java:210)
at
org.apache.ojb.odmg.TransactionImpl.commit(TransactionImpl.java:522)
at
com.jware.persistence.ojb.JwtTransactionImpl.commit(JwtTransactionImpl.j
ava:
127)
at
com.jware.businessobjects.JwtBOjects.getNextOId(JwtBOjects.java:131)
at
com.jware.test.businessobjects.ApplicationACL.run(ApplicationACL.java:52
)
at
com.jware.test.businessobjects.ApplicationACL.main(ApplicationACL.java:3
8)
Exception in thread "main"



-Message d'origine-
De : Mahler Thomas [mailto:[EMAIL PROTECTED]
Envoyé : mardi 17 juin 2003 14:57
À : 'OJB Users List'
Objet : RE: Lock bug ??

Hi Emmanuel,

don't call
broker.commitTransaction();

what does jwtImpl.newJwtTransaction(); do?
does it really instantiate a *new* transaction?

I have the impression that you work on the same transaction instance and
try
to re-use the already closed broker transaction...

cheers,
thomas

> -Original Message-
> From: Emmanuel Dupont [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 17, 2003 12:53 PM
> To: OJB Users List
> Subject: Lock bug ??
>
>
> Hi all,
>
>
>
> Can someone tell me what is wrong with this piece of code ??
> I'm using OJB,
> rc1.
>
>
>
>
>
> When I call this method twice it failed on the second call on
> the lock line.
> I have only one column in my table. IT is an OID table generator.
>
> Whith :
>
>
>
> [org.apache.ojb.odmg.TransactionImpl] INFO: Abort transaction
> was called on
> tx [EMAIL PROTECTED],
> associated PB was
> [EMAIL PROTECTED]
>
> [org.apache.ojb.broker.accesslayer.ConnectionManagerImpl]
> INFO: Rollback was
> called, do rollback on current connection
> [EMAIL PROTECTED]
>
> [BOjects] null
>
> java.lang.ClassCastException
>
> TransactionImpl.lock(JwtTransactionImpl.java:86)
>
> BOjects.getNextOId(BOjects.java:112)
>
> org.apache.ojb.broker.TransactionNotInProgressException:
> ConnectionManager
> is NOT in transaction
>
>   at
> org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.commitTra
> nsaction(Persi
> stenceBrokerImpl.java:390)
>
>   at
> org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.com
> mitTransaction
> (DelegatingPersistenceBroker.java:117)
>
>   at BOjects.getNextOId(JwtBOjects.java:124)
>
> Exception in thread "main"
>
>
>
>
>
> When I try to parse the code in the debugger, I doesn't
> failed ..??? Does
> that means there is some synchronization problems ?
>
>
>
> Tx, a lot, any help would be appreciated..
>
>
>
> 
>
> public long getNextOId(Class oidObjectClass) {
>
> JwtTransaction tx = jwtImpl.newJwtTransaction();
>
> tx.begin();
>
> JwtDatabase db = jwtImpl.getJwtDatabase(null);
>
>
>
> PersistenceBroker broker = ((HasBroker) tx).getBroker(

RE: Questions re. mapping of associations...

2003-06-17 Thread Mahler Thomas
hi again,

 
> ... I was thinking along these lines myself. But I was afraid 
> that I would
> also have to change my field-declarations to 'DList' instead 
> of 'List'. Glad
> that I don't have to :-)
> Still have to find a way make the proper factory-object 
> available in all
> places where it needs to be... Right now, my objects are 
> practically unaware
> of there being any persistence-layer and they will have to 
> somehow get a
> reference to the instance of the persistence-provider 
> abstraction layer.
> There can be multiple instances of multiple implementations 
> at the same time
> - 1 to serve XML, 1 to serve DB. Perhaps 2 to serve different 
> databases, if
> I want to compare performance of different databases or O/R mapping
> solutions.
> When creating an instance of one of my objects I will need to somehow
> specify which of the PersistenceProvider instances to choose from for
> creating List / Map instances!
> 
> Do I just want too much? ;-)

makes sense for me!

> --Tim
> 
> -
> 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]



RE: RC3 Test Failures with MySQL

2003-06-17 Thread salgado . pc
Thanks... that worked just fine.

The MySQL database is just fine but the errors that the ant prepare-test is
giving should be given the proper handling (?)...

The build.sh just needed a ../ ... that i could solve by myself. (shouldnt
anyone fix this? i can volunteer :) )

Thanks again,

Pedro Salgado




 Internet Mail Message  
 Received from host:  daedalus.apache.org   
 [208.185.179.12]   



From: Eric Northam <[EMAIL PROTECTED]> on 17-06-2003 13:40

  Eric Northam   To:   "'OJB Users List'"   
 <[EMAIL PROTECTED]><[EMAIL PROTECTED]>  
 Cc:(bcc: Pedroemanuel Salgado-PC/PGI)  
 Subject:  RE: RC3 Test Failures with MySQL 
  17-06-2003 14:40  
  Please respond to "OJB Users  
 List"  
  <[EMAIL PROTECTED]>  






Pedro,

Sorry for taking so long but I finally got around to testing the rc3 with
MySQL again. I started with the source distribution and followed the
directions on http://db.apache.org/ojb/platforms.html and updated
build.properties and mysql.profile appropriately. I then ran 'build.bat
prepare-testdb' in the bin directory and received an "Exception in thread
"main" java.lang.NoClassDefFoundError: org/apache/tools/ant/Main."
Apparently build.bat doesn't properly setup the ant classpath. I continued
by running ant directly with the prepare-testdb target and got an error
about not being able to find the mysql driver. I added the driver to the lib
directory, reran the build and got the following errors which were in my
previous email:

[torque-create-db] Resolver: used database.dtd from
org.apache.torque.engine.database.transform package
  [sql] Executing file:
C:\jakarta\temp\db-ojb-1.0.rc3\target\src\sql\create-db.sql
  [sql] Failed to execute: drop database if exists @DATABASE_DEFAULT@
  [sql] java.sql.SQLException: Syntax error or access violation,
message from server: "You have an error in your SQ
L syntax near '@DATABASE_DEFAULT@' at line 1"
  [sql] Failed to execute: create database @DATABASE_DEFAULT@
  [sql] java.sql.SQLException: Syntax error or access violation,
message from server: "You have an error in your SQ
L syntax near '@DATABASE_DEFAULT@' at line 1"
  [sql] 0 of 2 SQL statements executed successfully

And


[torque-insert-sql] Executing file:
C:\jakarta\temp\db-ojb-1.0.rc3\target\src\sql\ojbtest-schema.sql
[torque-insert-sql] Failed to execute: CREATE TABLE REF_REPOSITORY_FK (
REP_ID INTEGER NOT NULL, REF_FK INTEGER, REFA_FK
 INTEGER, REFB_FK INTEGER, NAME VARCHAR (100), PRIMARY
KEY(REP_ID,REF_FK,REFA_FK,REFB_FK) )
[torque-insert-sql] java.sql.SQLException: General error,  message from
server: "All parts of a PRIMARY KEY must be NOT
NULL;  If you need NULL in a key, use UNIQUE instead"
[torque-insert-sql] Executing file:
C:\jakarta\temp\db-ojb-1.0.rc3\target\src\sql\ojbcore-schema.sql
[torque-insert-sql] Executing file:
C:\jakarta\temp\db-ojb-1.0.rc3\target\src\sql\ojbtest-data.sql
[torque-insert-sql] 327 of 328 SQL statements executed successfully


I then ran 'ant junit' and received an error because j2ee.jar was not in the
classpath. I dropped j2ee.jar in the lib directory and reran the build which
resulted in the following same errors as above plus the following test
failures:

[junit] Running org.apache.ojb.broker.AllTests
[junit] Tests run: 209, Failures: 4, Errors: 4, Time elapsed: 99.016 sec
[junit] TEST org.apache.ojb.broker.AllTests FAILED
[junit] Running org.apache.ojb.odmg.AllTests
[junit] [BOOT] INFO: OJB.properties:
file:/C:/jakarta/temp/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
[junit] Tests run: 156, Failures: 3, Errors: 1, Time elapsed: 23.652 sec
[junit] TEST org.apache.ojb.odmg.AllTests FAILED
[junit] Running org.apache.ojb.soda.AllTests
[junit] [BOOT] INFO: OJB.properties:
file:/C:/jakarta/temp/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
[junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 5.948 sec
[junit] Running org.apache.ojb.otm.AllTests
[junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 6.87 sec


I then ran bin\tutorial1.bat from the root project and it ran fine. I hope
this helps you troubleshoot the test failures and build problems.

Eric


-Original Message-
From: Eric Northam [mailto:[EMAIL PROTECTED]
Sent: F

RE: DMapImpl

2003-06-17 Thread Leeuw van der, Tim
Hi,

Is this something that the ODMG API prescribes? Or is it a feature /
limitation of the current implementation?
I have assumed that I can simply use a string as the map-key.
This is rather a :-( for me, as I'm converting from a situation where my
keys are plain strings.

Thanks,

--Tim

-Original Message-
From: Mahler Thomas [mailto:[EMAIL PROTECTED]
Sent: dinsdag 17 juni 2003 15:20
To: 'OJB Users List'
Subject: RE: DMapImpl


DMapImpl keys must be real entities! that is there must be a table to store
them and a class-descriptor provided.

> -Original Message-
> From: Leeuw van der, Tim [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 17, 2003 3:15 PM
> To: '[EMAIL PROTECTED]'
> Cc: 'OJB Users List'
> Subject: RE: DMapImpl
> 
> 
> Hi Cedric,
> 
> Did you ever get an answer to this question? Can the key for 
> a DMapImpl
> indeed not be a plain java.lang.String instance??
> Or is it something in the repository.xml that would need to 
> be specified?
> 
> Regards,
> 
> --Tim
> 
> -Original Message-
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Sent: donderdag 12 juni 2003 10:43
> To: OJB Users List
> Subject: Re: DMapImpl
> 
> 
> Sorry, it's the key of the map which can't be a java type.
> So what is the solution ? I can't find nothing about DMapImpl in the
> tutorial.
> 
> 
> Selon "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>:
> 
> > Hello,
> > 
> > I'm trying to use the DMapImpl class to store java Map 
> objects, but this
> > exception is thrown :
> > 
> > 
> org.apache.ojb.broker.metadata.ClassNotPersistenceCapableExcep
> tion: Could
> > not
> > init Identity for given object class java.lang.String: 
> java.lang.String
> not
> > found in OJB Repository
> > 
> > Does this mean I can't store String objects as Map values ? 
> Must I extend
> > the
> > String class to add an identifier ? Isn't there any other solution ?
> > 
> > Regards,
> > Cedric
> > 
> > -- 
> > 
> > 
> -
> > 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]



RE: Questions re. mapping of associations...

2003-06-17 Thread Leeuw van der, Tim


-Original Message-
From: Mahler Thomas [mailto:[EMAIL PROTECTED]
Sent: dinsdag 17 juni 2003 15:22
To: 'OJB Users List'
Subject: RE: Questions re. mapping of associations...


[...]
The most elegant way would be to have a simple factory method that is used
to create Jav.util.List instances. In ODMG mode id serves DListImpls, in JDO
mode a Vector or so.
This would minimize the impact on your business model!


... I was thinking along these lines myself. But I was afraid that I would
also have to change my field-declarations to 'DList' instead of 'List'. Glad
that I don't have to :-)
Still have to find a way make the proper factory-object available in all
places where it needs to be... Right now, my objects are practically unaware
of there being any persistence-layer and they will have to somehow get a
reference to the instance of the persistence-provider abstraction layer.
There can be multiple instances of multiple implementations at the same time
- 1 to serve XML, 1 to serve DB. Perhaps 2 to serve different databases, if
I want to compare performance of different databases or O/R mapping
solutions.
When creating an instance of one of my objects I will need to somehow
specify which of the PersistenceProvider instances to choose from for
creating List / Map instances!

Do I just want too much? ;-)

--Tim

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: RC3 Test Failures with MySQL

2003-06-17 Thread Eric Northam
Pedro,

Sorry for taking so long but I finally got around to testing the rc3 with
MySQL again. I started with the source distribution and followed the
directions on http://db.apache.org/ojb/platforms.html and updated
build.properties and mysql.profile appropriately. I then ran 'build.bat
prepare-testdb' in the bin directory and received an "Exception in thread
"main" java.lang.NoClassDefFoundError: org/apache/tools/ant/Main."
Apparently build.bat doesn't properly setup the ant classpath. I continued
by running ant directly with the prepare-testdb target and got an error
about not being able to find the mysql driver. I added the driver to the lib
directory, reran the build and got the following errors which were in my
previous email:

[torque-create-db] Resolver: used database.dtd from
org.apache.torque.engine.database.transform package
  [sql] Executing file:
C:\jakarta\temp\db-ojb-1.0.rc3\target\src\sql\create-db.sql
  [sql] Failed to execute: drop database if exists @DATABASE_DEFAULT@
  [sql] java.sql.SQLException: Syntax error or access violation,
message from server: "You have an error in your SQ
L syntax near '@DATABASE_DEFAULT@' at line 1"
  [sql] Failed to execute: create database @DATABASE_DEFAULT@
  [sql] java.sql.SQLException: Syntax error or access violation,
message from server: "You have an error in your SQ
L syntax near '@DATABASE_DEFAULT@' at line 1"
  [sql] 0 of 2 SQL statements executed successfully

And


[torque-insert-sql] Executing file:
C:\jakarta\temp\db-ojb-1.0.rc3\target\src\sql\ojbtest-schema.sql
[torque-insert-sql] Failed to execute: CREATE TABLE REF_REPOSITORY_FK (
REP_ID INTEGER NOT NULL, REF_FK INTEGER, REFA_FK
 INTEGER, REFB_FK INTEGER, NAME VARCHAR (100), PRIMARY
KEY(REP_ID,REF_FK,REFA_FK,REFB_FK) )
[torque-insert-sql] java.sql.SQLException: General error,  message from
server: "All parts of a PRIMARY KEY must be NOT
NULL;  If you need NULL in a key, use UNIQUE instead"
[torque-insert-sql] Executing file:
C:\jakarta\temp\db-ojb-1.0.rc3\target\src\sql\ojbcore-schema.sql
[torque-insert-sql] Executing file:
C:\jakarta\temp\db-ojb-1.0.rc3\target\src\sql\ojbtest-data.sql
[torque-insert-sql] 327 of 328 SQL statements executed successfully


I then ran 'ant junit' and received an error because j2ee.jar was not in the
classpath. I dropped j2ee.jar in the lib directory and reran the build which
resulted in the following same errors as above plus the following test
failures:

[junit] Running org.apache.ojb.broker.AllTests
[junit] Tests run: 209, Failures: 4, Errors: 4, Time elapsed: 99.016 sec
[junit] TEST org.apache.ojb.broker.AllTests FAILED
[junit] Running org.apache.ojb.odmg.AllTests
[junit] [BOOT] INFO: OJB.properties:
file:/C:/jakarta/temp/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
[junit] Tests run: 156, Failures: 3, Errors: 1, Time elapsed: 23.652 sec
[junit] TEST org.apache.ojb.odmg.AllTests FAILED
[junit] Running org.apache.ojb.soda.AllTests
[junit] [BOOT] INFO: OJB.properties:
file:/C:/jakarta/temp/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
[junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 5.948 sec
[junit] Running org.apache.ojb.otm.AllTests
[junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 6.87 sec


I then ran bin\tutorial1.bat from the root project and it ran fine. I hope
this helps you troubleshoot the test failures and build problems. 

Eric


-Original Message-
From: Eric Northam [mailto:[EMAIL PROTECTED] 
Sent: Friday, June 13, 2003 3:47 PM
To: 'OJB Users List'
Subject: RE: RC3 Test Failures with MySQL


I'll try it for you again when I get a chance. I didn't run any of the .sh
scripts at first. I just ran 'ant junit' after configuring OJB for MySQL. I
did run the .sh scripts at one point in time and I seem to recall having the
path problem you mentioned with the binary tar, but I believed it worked in
the source tar. 

I also used MySQL 3.23.

Eric

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: Friday, June 13, 2003 5:08 AM
To: [EMAIL PROTECTED]
Subject: RE: RC3 Test Failures with MySQL



I think the problem is on the ant build.xml ... like someone said (on
another reply), there should be a filter somewhere... the problem is: it
doesnt exist. Modifying the @---@ parameters it will work only in your
environment... the next time someone else install OJB (and use it with
MySQL), it has to figure out what has happened and do it all over again. Ant
should do everything by itself... you should one only have to say what you
want ant to do (prepare-tutorials, compile,...).

Even though, these errors occur, the schema is written to the database, the
data also and the tutorial works (at least in my case). I had to change all
of the bin scripts because they were missing some ../ on some paths ( BUG )
to run the tutorials with:

cd bin
./tutorialX.sh (maybe if you do this, you will see that you can run the
tutorials, even with the error messages)

The unique message could be becaus

RE : Lock bug ??

2003-06-17 Thread Emmanuel Dupont
Hi Thomas, Armin

In fact the " jwtImpl.newJwtTransaction();"

Do :

TransactionImpl tx = new TransactionImpl (getCurrentDatabase());

It instantiate a new transaction

Maybe I'm wrong, but I thought that I was obliged to use the Broker like
that in with theODMG/PB API both used.

// Create a new ODMG Tx
Tx = newTransaction();

// Start it
Tx.begin();

// Catch a broker on it
PersistenceBroker broker = ((HasBroker) tx).getBroker();

// Start the broker transaction
 broker.beginTransaction();

// Use the broker for using the PB API
broker.getObjectByQuery(query)

// Stop the broker tx
broker.commitTransaction();

// Stop the ODMG Tx 
tx.commit();


What is it wrong in this ??

Each time I call this method a new Tx is create, so why failed the lock ?


Armin,

I tried to put off the broker.beginTransaction() and broker.commit()

But I have now this error on the second in the lock linevery weird ???

It is not the same transaction !!

:

org.apache.ojb.odmg.TransactionImpl] INFO: Abort transaction was called on
tx [EMAIL PROTECTED], associated PB was
[EMAIL PROTECTED]
[JwtBOjects] null
org.odmg.TransactionNotInProgressException: Transaction was not open, call
tx.begin() before perform action, current status is: STATUS_ROLLEDBACK
at
org.apache.ojb.odmg.TransactionImpl.checkOpen(TransactionImpl.java:210)
at
org.apache.ojb.odmg.TransactionImpl.commit(TransactionImpl.java:522)
at
com.jware.persistence.ojb.JwtTransactionImpl.commit(JwtTransactionImpl.java:
127)
at
com.jware.businessobjects.JwtBOjects.getNextOId(JwtBOjects.java:131)
at
com.jware.test.businessobjects.ApplicationACL.run(ApplicationACL.java:52)
at
com.jware.test.businessobjects.ApplicationACL.main(ApplicationACL.java:38)
Exception in thread "main"



-Message d'origine-
De : Mahler Thomas [mailto:[EMAIL PROTECTED] 
Envoyé : mardi 17 juin 2003 14:57
À : 'OJB Users List'
Objet : RE: Lock bug ??

Hi Emmanuel,

don't call
broker.commitTransaction();

what does jwtImpl.newJwtTransaction(); do?
does it really instantiate a *new* transaction?

I have the impression that you work on the same transaction instance and try
to re-use the already closed broker transaction...

cheers,
thomas

> -Original Message-
> From: Emmanuel Dupont [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 17, 2003 12:53 PM
> To: OJB Users List
> Subject: Lock bug ??
> 
> 
> Hi all,
> 
>  
> 
> Can someone tell me what is wrong with this piece of code ?? 
> I'm using OJB,
> rc1.
> 
>  
> 
>  
> 
> When I call this method twice it failed on the second call on 
> the lock line.
> I have only one column in my table. IT is an OID table generator.
> 
> Whith :
> 
>  
> 
> [org.apache.ojb.odmg.TransactionImpl] INFO: Abort transaction 
> was called on
> tx [EMAIL PROTECTED], 
> associated PB was
> [EMAIL PROTECTED]
> 
> [org.apache.ojb.broker.accesslayer.ConnectionManagerImpl] 
> INFO: Rollback was
> called, do rollback on current connection
> [EMAIL PROTECTED]
> 
> [BOjects] null
> 
> java.lang.ClassCastException
> 
> TransactionImpl.lock(JwtTransactionImpl.java:86)
> 
> BOjects.getNextOId(BOjects.java:112)
> 
> org.apache.ojb.broker.TransactionNotInProgressException: 
> ConnectionManager
> is NOT in transaction
> 
>   at
> org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.commitTra
> nsaction(Persi
> stenceBrokerImpl.java:390)
> 
>   at
> org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.com
> mitTransaction
> (DelegatingPersistenceBroker.java:117)
> 
>   at BOjects.getNextOId(JwtBOjects.java:124)
> 
> Exception in thread "main"
> 
>  
> 
>  
> 
> When I try to parse the code in the debugger, I doesn't 
> failed ..??? Does
> that means there is some synchronization problems ?
> 
>  
> 
> Tx, a lot, any help would be appreciated..
> 
>  
> 
> 
> 
> public long getNextOId(Class oidObjectClass) {
> 
> JwtTransaction tx = jwtImpl.newJwtTransaction();
> 
> tx.begin();
> 
> JwtDatabase db = jwtImpl.getJwtDatabase(null);
> 
>  
> 
> PersistenceBroker broker = ((HasBroker) tx).getBroker();
> 
> broker.beginTransaction();
> 
>  
> 
> long result = -1;
> 
>  
> 
> try {
> 
> Query query = new QueryByCriteria(oidObjectClass, null);
> 
>  
> 
> IObject oidObject = (IObject) broker.getObjectByQuery(query);
> 
>  
> 
> // Check and increment the Oid ID
> 
> result = oidObject.getId();
> 
>  
> 
> // Delete the old oidObject   
> 
> db.deletePersistent(oidObject);
> 
>  
> 
> // Create a new OidObject
> 
> oidObject  newOidObject = new oidObject ();
> 
>  
> 
> // Lock the nextObject for write access 
> 
> tx.lock(newOidObject, WRITE);   ///FAILED ON THE SECOND CALL
> 
>  
> 
> // Set the modification
> 
> oidObject.setId(result+1);
> 
>  
> 
> } catch (Exception e) {
> 
> // rollback in case of errors
> 
>tx.abort();
> 
>System.err.println("[BOjects] " + e.getMessage());
> 
>e.printStackTrace();
> 
> }
> 
>  
> 
> broker.commitTransa

RE: Questions re. mapping of associations...

2003-06-17 Thread Mahler Thomas
hi agaian,

> [...]
> 

> 
> As I said, I have to move away from the JDO-managed situation 
> (until there
> is a sufficiently high-quality open-source JDO 
> implementation). I'll have to
> go to the ODMG-managed situation. Only I don't like that I 
> have to change my
> code in several places now to explicitly use DList instead of 
> java.util.List
> and it's standard implementations.
> I want to keep my code independant of the actual persistence 
> mechanism used,
> so that in future I can switch back to a JDO managed solution.

I see.
There are two aspects to this:
1. loading a collection from the DB. you can use the collection-descriptor
to specify the collection class OJB uses.
Specifying DListImpl here would be fine with a java.util.List java field.

2. storing a collection to the DB. a "normal" Vector is handled completely
different than a DList!
that's why you have to initialize the java.util.List attribute with a
DListImpl instance to make things work.
The most elegant way would be to have a simple factory method that is used
to create Jav.util.List instances. In ODMG mode id serves DListImpls, in JDO
mode a Vector or so.
This would minimize the impact on your business model!

> 
> It would be nice if there was a List implementation that is not
> ODMG-specific but provides the same functionality, so that it 
> can be used
> transparently (to the largest degree possible) without 
> modifications to the
> domain objects. 

SUre such a best could be written, but you still had to solve issues 1. and
2. from above. SO you don't gain a lot...

> I guess that for a JDO implementation in OJB 2.0 such
> proxy-objects for Set, List and Map will have to be created.

I think so !

> But since I don't have time now to do this myself, I'll have 
> to change what
> needs to be changed!
> 
> Thanks for the advice and explanations - Thomas, you're a 
> great help to
> everyone on the list. A big thanks.

thanks !

cheers,
Thomas

> --Tim
> 
> -
> 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]



RE: DMapImpl

2003-06-17 Thread Mahler Thomas
DMapImpl keys must be real entities! that is there must be a table to store
them and a class-descriptor provided.

> -Original Message-
> From: Leeuw van der, Tim [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 17, 2003 3:15 PM
> To: '[EMAIL PROTECTED]'
> Cc: 'OJB Users List'
> Subject: RE: DMapImpl
> 
> 
> Hi Cedric,
> 
> Did you ever get an answer to this question? Can the key for 
> a DMapImpl
> indeed not be a plain java.lang.String instance??
> Or is it something in the repository.xml that would need to 
> be specified?
> 
> Regards,
> 
> --Tim
> 
> -Original Message-
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Sent: donderdag 12 juni 2003 10:43
> To: OJB Users List
> Subject: Re: DMapImpl
> 
> 
> Sorry, it's the key of the map which can't be a java type.
> So what is the solution ? I can't find nothing about DMapImpl in the
> tutorial.
> 
> 
> Selon "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>:
> 
> > Hello,
> > 
> > I'm trying to use the DMapImpl class to store java Map 
> objects, but this
> > exception is thrown :
> > 
> > 
> org.apache.ojb.broker.metadata.ClassNotPersistenceCapableExcep
> tion: Could
> > not
> > init Identity for given object class java.lang.String: 
> java.lang.String
> not
> > found in OJB Repository
> > 
> > Does this mean I can't store String objects as Map values ? 
> Must I extend
> > the
> > String class to add an identifier ? Isn't there any other solution ?
> > 
> > Regards,
> > Cedric
> > 
> > -- 
> > 
> > 
> -
> > 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]



RE: DMapImpl

2003-06-17 Thread Leeuw van der, Tim
Hi Cedric,

Did you ever get an answer to this question? Can the key for a DMapImpl
indeed not be a plain java.lang.String instance??
Or is it something in the repository.xml that would need to be specified?

Regards,

--Tim

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: donderdag 12 juni 2003 10:43
To: OJB Users List
Subject: Re: DMapImpl


Sorry, it's the key of the map which can't be a java type.
So what is the solution ? I can't find nothing about DMapImpl in the
tutorial.


Selon "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>:

> Hello,
> 
> I'm trying to use the DMapImpl class to store java Map objects, but this
> exception is thrown :
> 
> org.apache.ojb.broker.metadata.ClassNotPersistenceCapableException: Could
> not
> init Identity for given object class java.lang.String: java.lang.String
not
> found in OJB Repository
> 
> Does this mean I can't store String objects as Map values ? Must I extend
> the
> String class to add an identifier ? Isn't there any other solution ?
> 
> Regards,
> Cedric
> 
> -- 
> 
> -
> 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]



RE : Lock bug ??

2003-06-17 Thread Emmanuel Dupont
Hi Armin,

I oblige to have a broker instance because I use the
getObjectByQuery(query) treatment

broker.getObjectByQuery(query);




-Message d'origine-
De : Armin Waibel [mailto:[EMAIL PROTECTED] 
Envoyé : mardi 17 juin 2003 14:46
À : OJB Users List
Objet : Re: Lock bug ??

Hi Emmanuel,

did you have tried without
broker.begin...
broker.commit...
statements?

regards,
Armin

- Original Message -
From: "Emmanuel Dupont" <[EMAIL PROTECTED]>
To: "OJB Users List" <[EMAIL PROTECTED]>
Sent: Tuesday, June 17, 2003 12:53 PM
Subject: Lock bug ??


Hi all,



Can someone tell me what is wrong with this piece of code ?? I'm using
OJB,
rc1.





When I call this method twice it failed on the second call on the lock
line.
I have only one column in my table. IT is an OID table generator.

Whith :



[org.apache.ojb.odmg.TransactionImpl] INFO: Abort transaction was called
on
tx [EMAIL PROTECTED], associated PB
was
[EMAIL PROTECTED]

[org.apache.ojb.broker.accesslayer.ConnectionManagerImpl] INFO: Rollback
was
called, do rollback on current connection
[EMAIL PROTECTED]

[BOjects] null

java.lang.ClassCastException

TransactionImpl.lock(JwtTransactionImpl.java:86)

BOjects.getNextOId(BOjects.java:112)

org.apache.ojb.broker.TransactionNotInProgressException:
ConnectionManager
is NOT in transaction

  at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.commitTransaction(P
ersi
stenceBrokerImpl.java:390)

  at
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.commitTransac
tion
(DelegatingPersistenceBroker.java:117)

  at BOjects.getNextOId(JwtBOjects.java:124)

Exception in thread "main"





When I try to parse the code in the debugger, I doesn't failed ..???
Does
that means there is some synchronization problems ?



Tx, a lot, any help would be appreciated..





public long getNextOId(Class oidObjectClass) {

JwtTransaction tx = jwtImpl.newJwtTransaction();

tx.begin();

JwtDatabase db = jwtImpl.getJwtDatabase(null);



PersistenceBroker broker = ((HasBroker) tx).getBroker();

broker.beginTransaction();



long result = -1;



try {

Query query = new QueryByCriteria(oidObjectClass, null);



IObject oidObject = (IObject) broker.getObjectByQuery(query);



// Check and increment the Oid ID

result = oidObject.getId();



// Delete the old oidObject

db.deletePersistent(oidObject);



// Create a new OidObject

oidObject  newOidObject = new oidObject ();



// Lock the nextObject for write access

tx.lock(newOidObject, WRITE);   ///FAILED ON THE SECOND CALL



// Set the modification

oidObject.setId(result+1);



} catch (Exception e) {

// rollback in case of errors

   tx.abort();

   System.err.println("[BOjects] " + e.getMessage());

   e.printStackTrace();

}



broker.commitTransaction();

tx.commit();



return result;

}





-
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]



RE: Questions re. mapping of associations...

2003-06-17 Thread Charles Anthony
Hi,

[snip]

>As I said, I have to move away from the JDO-managed situation 
>(until there is a sufficiently high-quality open-source JDO 
>implementation). I'll have to
>go to the ODMG-managed situation. Only I don't like that I 
>have to change my code in several places now to explicitly use DList
instead of 
>java.util.List and it's standard implementations.

I don't think you will have to change your code; the org.odmg.DList extends
java.util.List
so you (and hence OJB) should be able to assign an instance of DListImpl to
a List attribute.

It's in the repository.xml where you specify which collection to use.

It should be the same for Maps, too.

I've never had to do this, though, so I could be talking complete rubbish.

Cheers,
Charles


This email and any attachments are strictly confidential and are intended
solely for the addressee. If you are not the intended recipient you must
not disclose, forward, copy or take any action in reliance on this message
or its attachments. If you have received this email in error please notify
the sender as soon as possible and delete it from your computer systems.
Any views or opinions presented are solely those of the author and do not
necessarily reflect those of HPD Software Limited or its affiliates.

 At present the integrity of email across the internet cannot be guaranteed
and messages sent via this medium are potentially at risk.  All liability
is excluded to the extent permitted by law for any claims arising as a re-
sult of the use of this medium to transmit information by or to 
HPD Software Limited or its affiliates.



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Lock bug ??

2003-06-17 Thread Mahler Thomas
Hi Emmanuel,

don't call
broker.commitTransaction();

what does jwtImpl.newJwtTransaction(); do?
does it really instantiate a *new* transaction?

I have the impression that you work on the same transaction instance and try
to re-use the already closed broker transaction...

cheers,
thomas

> -Original Message-
> From: Emmanuel Dupont [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 17, 2003 12:53 PM
> To: OJB Users List
> Subject: Lock bug ??
> 
> 
> Hi all,
> 
>  
> 
> Can someone tell me what is wrong with this piece of code ?? 
> I'm using OJB,
> rc1.
> 
>  
> 
>  
> 
> When I call this method twice it failed on the second call on 
> the lock line.
> I have only one column in my table. IT is an OID table generator.
> 
> Whith :
> 
>  
> 
> [org.apache.ojb.odmg.TransactionImpl] INFO: Abort transaction 
> was called on
> tx [EMAIL PROTECTED], 
> associated PB was
> [EMAIL PROTECTED]
> 
> [org.apache.ojb.broker.accesslayer.ConnectionManagerImpl] 
> INFO: Rollback was
> called, do rollback on current connection
> [EMAIL PROTECTED]
> 
> [BOjects] null
> 
> java.lang.ClassCastException
> 
> TransactionImpl.lock(JwtTransactionImpl.java:86)
> 
> BOjects.getNextOId(BOjects.java:112)
> 
> org.apache.ojb.broker.TransactionNotInProgressException: 
> ConnectionManager
> is NOT in transaction
> 
>   at
> org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.commitTra
> nsaction(Persi
> stenceBrokerImpl.java:390)
> 
>   at
> org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.com
> mitTransaction
> (DelegatingPersistenceBroker.java:117)
> 
>   at BOjects.getNextOId(JwtBOjects.java:124)
> 
> Exception in thread "main"
> 
>  
> 
>  
> 
> When I try to parse the code in the debugger, I doesn't 
> failed ..??? Does
> that means there is some synchronization problems ?
> 
>  
> 
> Tx, a lot, any help would be appreciated..
> 
>  
> 
> 
> 
> public long getNextOId(Class oidObjectClass) {
> 
> JwtTransaction tx = jwtImpl.newJwtTransaction();
> 
> tx.begin();
> 
> JwtDatabase db = jwtImpl.getJwtDatabase(null);
> 
>  
> 
> PersistenceBroker broker = ((HasBroker) tx).getBroker();
> 
> broker.beginTransaction();
> 
>  
> 
> long result = -1;
> 
>  
> 
> try {
> 
> Query query = new QueryByCriteria(oidObjectClass, null);
> 
>  
> 
> IObject oidObject = (IObject) broker.getObjectByQuery(query);
> 
>  
> 
> // Check and increment the Oid ID
> 
> result = oidObject.getId();
> 
>  
> 
> // Delete the old oidObject   
> 
> db.deletePersistent(oidObject);
> 
>  
> 
> // Create a new OidObject
> 
> oidObject  newOidObject = new oidObject ();
> 
>  
> 
> // Lock the nextObject for write access 
> 
> tx.lock(newOidObject, WRITE);   ///FAILED ON THE SECOND CALL
> 
>  
> 
> // Set the modification
> 
> oidObject.setId(result+1);
> 
>  
> 
> } catch (Exception e) {
> 
> // rollback in case of errors
> 
>tx.abort();
> 
>System.err.println("[BOjects] " + e.getMessage());
> 
>e.printStackTrace();
> 
> }
> 
>  
> 
> broker.commitTransaction();
> 
> tx.commit();
> 
>  
> 
> return result;
> 
> }
> 
> 


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Questions re. mapping of associations...

2003-06-17 Thread Leeuw van der, Tim
Hi, thanks again for your clarifications.

[...]
> 
> > I looked at the order-by attribute of the reference 
> > descriptor, but I can't
> > use that. There is no attribute in my element-classes that I 
> > can sort on;
> > it's the order that I put them in the list that is relevant.
> 
> Mhh, In an RDBMS there is no notion of "position in a table". If you 
> want to
> have your elements to show up in a given sequence you have to use an
> additional column that can be used for sorting.
> This is not a restriction with OJB but with relational calculus in 
> general!

Yes, I understand this quite well... :-)
[...]

> You are right, the DListImpl provides such an indirection mechanism 
> (and
> also maintains order of the entries in the way that you'd like to see.
> 
> The only problem is that DListImpl & friends are coded to cooperate 
> with
> ODMG transaction manager.
> They lookup the current ODMG transaction and perform locks etc.
> 
> This won't be of any help in a JDO managed situation (could also cause
> errors).
> But it would be an option to reuse most of the DlistImpl code to write a
> collection class that does all your housekeeping, but does not try to >
work
> with ODMG transactions.

As I said, I have to move away from the JDO-managed situation (until there
is a sufficiently high-quality open-source JDO implementation). I'll have to
go to the ODMG-managed situation. Only I don't like that I have to change my
code in several places now to explicitly use DList instead of java.util.List
and it's standard implementations.
I want to keep my code independant of the actual persistence mechanism used,
so that in future I can switch back to a JDO managed solution.

It would be nice if there was a List implementation that is not
ODMG-specific but provides the same functionality, so that it can be used
transparently (to the largest degree possible) without modifications to the
domain objects. I guess that for a JDO implementation in OJB 2.0 such
proxy-objects for Set, List and Map will have to be created.

But since I don't have time now to do this myself, I'll have to change what
needs to be changed!

Thanks for the advice and explanations - Thomas, you're a great help to
everyone on the list. A big thanks.

--Tim

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Lock bug ??

2003-06-17 Thread Armin Waibel
Hi Emmanuel,

did you have tried without
broker.begin...
broker.commit...
statements?

regards,
Armin

- Original Message -
From: "Emmanuel Dupont" <[EMAIL PROTECTED]>
To: "OJB Users List" <[EMAIL PROTECTED]>
Sent: Tuesday, June 17, 2003 12:53 PM
Subject: Lock bug ??


Hi all,



Can someone tell me what is wrong with this piece of code ?? I'm using
OJB,
rc1.





When I call this method twice it failed on the second call on the lock
line.
I have only one column in my table. IT is an OID table generator.

Whith :



[org.apache.ojb.odmg.TransactionImpl] INFO: Abort transaction was called
on
tx [EMAIL PROTECTED], associated PB
was
[EMAIL PROTECTED]

[org.apache.ojb.broker.accesslayer.ConnectionManagerImpl] INFO: Rollback
was
called, do rollback on current connection
[EMAIL PROTECTED]

[BOjects] null

java.lang.ClassCastException

TransactionImpl.lock(JwtTransactionImpl.java:86)

BOjects.getNextOId(BOjects.java:112)

org.apache.ojb.broker.TransactionNotInProgressException:
ConnectionManager
is NOT in transaction

  at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.commitTransaction(P
ersi
stenceBrokerImpl.java:390)

  at
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.commitTransac
tion
(DelegatingPersistenceBroker.java:117)

  at BOjects.getNextOId(JwtBOjects.java:124)

Exception in thread "main"





When I try to parse the code in the debugger, I doesn't failed ..???
Does
that means there is some synchronization problems ?



Tx, a lot, any help would be appreciated..





public long getNextOId(Class oidObjectClass) {

JwtTransaction tx = jwtImpl.newJwtTransaction();

tx.begin();

JwtDatabase db = jwtImpl.getJwtDatabase(null);



PersistenceBroker broker = ((HasBroker) tx).getBroker();

broker.beginTransaction();



long result = -1;



try {

Query query = new QueryByCriteria(oidObjectClass, null);



IObject oidObject = (IObject) broker.getObjectByQuery(query);



// Check and increment the Oid ID

result = oidObject.getId();



// Delete the old oidObject

db.deletePersistent(oidObject);



// Create a new OidObject

oidObject  newOidObject = new oidObject ();



// Lock the nextObject for write access

tx.lock(newOidObject, WRITE);   ///FAILED ON THE SECOND CALL



// Set the modification

oidObject.setId(result+1);



} catch (Exception e) {

// rollback in case of errors

   tx.abort();

   System.err.println("[BOjects] " + e.getMessage());

   e.printStackTrace();

}



broker.commitTransaction();

tx.commit();



return result;

}





-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Questions re. mapping of associations...

2003-06-17 Thread Mahler Thomas
Hi again,

> Hi Thomas,
> 
> Thanks for your explanations. A couple of follow-up questions...
> 
> > 
> > -Original Message-
> > From: Thomas Mahler [mailto:[EMAIL PROTECTED]
> > Sent: maandag 16 juni 2003 21:46
> > To: OJB Users List
> > Subject: Re: Questions re. mapping of associations...
> > 
> > 
> > Hi Tim.
> > 
> > Leeuw van der, Tim wrote:
> > > Hello,
> > > 
> > > I'm trying to convert my existing JDO-metadata mappings to an OJB
> > > repository.xml ...
> > > 
> [...]
> 
> > > I couldn't find anywhere the use of such anonymous mappings.
> > 
> > It's a relatively new feature and the is not available with 
> RC3 or on 
> > the Website, but it is already in CVS:
> > 
> http://cvs.apache.org/viewcvs/db-ojb/xdocs/howto-use-anonymous
> -keys.xml
> > add the file to the xdocs folder of the source distro and 
> execute the 
> > ant target "xslt" and ready is your complete html docu on 
> this topic !
> > 
> 
> When you say that it's not available in RC3, do you mean that the
> documentation for it is not available in RC3? Or does the 
> feature itself not
> work yet in RC3?

the docs! the sentence should read "It's a relatively new feature and the
*documentation* is not available with RC3"
The feature itself is working fine in RC3 already!

> 
> > > 
> > > Another thing which is: With JDO, I defined several 
> java.util.List 
> > fields
> > > and specified that they should be stored/retrieved in order. I 
> > really need
> > > to maintain the order of elements in the list, but I would prefer 
> > not to
> > > have to manually do that housekeeping.
> > 
> > you can use the collection-descriptor attributes orderby 
> and sort to 
> > maintain order:
> > The orderby attribute may specify a field of the element class. The 
> > Collection or Array will be sorted according to the specified
> > attribute. 
> > The sort attribute may be used to specify ascending or descending 
> > order 
> > for this operation.
> > 
> > 
> > > Do I have to explicitly use odmg.DList in my code? Similar for a
> > > java.util.Map; do I have to explicitly use odmg.DMap?
> > 
> > Mhh, what do you want to achieve? using the ODMG persistent 
> > collections 
> > does not make much sense in JDO (may be I'm missing something).
> > 
> 
> Sorry for confusing you here. I have some existing mappings 
> for JDO but I
> will need to use OJB instead, achieving similar results. So I 
> won't be using
> JDO anymore, for the moment at least.
> With JDO I could use a plain java.util.List and tell the JDO 
> implementation
> to maintain for me the order of elements so that I read them 
> in the same
> order as I put them in the list.
> 
> I looked at the order-by attribute of the reference 
> descriptor, but I can't
> use that. There is no attribute in my element-classes that I 
> can sort on;
> it's the order that I put them in the list that is relevant.

Mhh, In an RDBMS there is no notion of "position in a table". If you want to
have your elements to show up in a given sequence you have to use an
additional column that can be used for sorting.
This is not a restriction with OJB but with relational calculus in general!

> My domain-model is a sort of graph, where each node in the 
> graph has links
> to multiple other nodes. I could potentially add a 
> sequence-number attribute
> to maintain order of the nodes for their ancestor.
> However, I also need to store a path over this graph, and 
> each node can be
> part of an unlimited number of paths. A node can even appear 
> multiple times
> in the same path.
> I need an indirection-table therefore, and my sequence-number 
> needs to go
> into the indicrection-table. It would be horribly 
> inconvenient to have to
> decompose the n:m mapping manually in source.
> 
> Therefore my question:
> With JDO I can achieve this with any implementation of the 
> java.util.List
> interface that I find convenient. Is the only way that I can 
> achieve this
> with OJB by using org.odmg.DList?

You are right, the DListImpl provides such an indirection mechanism (and
also maintains order of the entries in the way that you'd like to see.

The only problem is that DListImpl & friends are coded to cooperate with
ODMG transaction manager.
They lookup the current ODMG transaction and perform locks etc.

This won't be of any help in a JDO managed situation (could also cause
errors).
But it would be an option to reuse most of the DlistImpl code to write a
collection class that does all your housekeeping, but does not try to work
with ODMG transactions.

> 
> And if I want to store a java.util.Map in the database, does 
> it have to be a
> org.odmg.DMap instance?

there is currently no other persistent map shipping with OJB apart from
DMap. 
But for DMap you'll face the same probs as with DList...

> 
> I want to be sure of this before I change my code and dive 
> into how to use
> those things... I'm still in the stage of trying to find my 
> way with OJB.

Yes, there is  learning curve with OJB. It's definitely 

Any Oracle OJB Users in Production?

2003-06-17 Thread PWorth
I am currently evaluating the use of OJB for a new web application server 
framework for my company and would very much like to use OJB or some other 
object - relational framework.  I have had many problems and issues 
getting the OJB unit test scripts to work against my database however, so 
I don't have a great deal of confidence that OJB1.0 can be rolled out 
successfully in an enterprise production environment based upon Oracle 
8.1.7.

Can someone share with me any of their experiences with a working, 
production Oracle instance of OJB?  Does anyone have a working, functional 
OJB installation and configuration in production based upon an Oracle 
backend?  Can you send your config files that you use/used to successfully 
run junit?

thx in advance

Peter







[EMAIL PROTECTED]
06/13/2003 09:10 AM
Please respond to "OJB Users List"

 
To: "OJB Users List" <[EMAIL PROTECTED]>
cc: "OJB Users List" <[EMAIL PROTECTED]>
Subject:RE: Problem with junit testing on Oracle 8.1.7


Looks like I got around the class not found problem by converting the zip 
file into a jar and then putting it in the lib directory.  Now my junit 
output looks like:

junit-no-compile-no-prepare:
[junit] Running org.apache.ojb.broker.AllTests
[junit] Tests run: 209, Failures: 12, Errors: 66, Time elapsed: 97.977 

sec
[junit] TEST org.apache.ojb.broker.AllTests FAILED
[junit] Running org.apache.ojb.odmg.AllTests
[junit] [BOOT] INFO: OJB.properties: 
file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
[junit] Tests run: 156, Failures: 12, Errors: 57, Time elapsed: 16.604 

sec
[junit] TEST org.apache.ojb.odmg.AllTests FAILED
[junit] Running org.apache.ojb.soda.AllTests
[junit] [BOOT] INFO: OJB.properties: 
file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
[junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 5.758 sec
[junit] Running org.apache.ojb.otm.AllTests
[junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 5.859 sec


Doesn't give me a warm and fuzzy that this package is ready for prime time 

on Oracle 8i.

Peter






[EMAIL PROTECTED]
06/13/2003 07:55 AM
Please respond to "OJB Users List"

 
To: "OJB Users List" <[EMAIL PROTECTED]>
cc: 
Subject:RE: Problem with junit testing on Oracle 8.1.7


Thanks for the response Mahler.

There's the rub, its a zip file actually.  I have modified the build.bat 
script to incorporate the zip file in the JVM classpath argument as 
follows:

@echo off
REM Please let JAVA_HOME point to your JDK base directory
if "%JAVA_HOME%" == "" set JAVA_HOME=C:\jdk1.3.1_08

set JAVA=%JAVA_HOME%\bin\java
set cp=
for %%i in (lib\*.jar) do call bin\cp.bat %%i
set 
CP=..\target\classes;..\target\classestest;%JAVA_HOME%\lib\tools.jar;%CP%

set 
local_cp=c:\ora8i\jdbc\lib\classes12.zip;c:\websphere\appserver\lib\j2ee.jar;%CP%
echo JVM classpath is %local_cp%...

"%JAVA%" -classpath "%local_cp%" -Dant.home=lib org.apache.tools.ant.Main 
%1 %2 %3 %4 %5 %6 -buildfile build.xml

This seemed to work fine when I built the test db (bin\build 
prepare-testdb) but does not seem to work when I run the unit tests 
(bin\build junit)???  I'm a bit stumped.

Peter





Mahler Thomas <[EMAIL PROTECTED]>
06/13/2003 03:20 AM
Please respond to "OJB Users List"

 
To: "'OJB Users List'" <[EMAIL PROTECTED]>
cc: 
Subject:RE: Problem with junit testing on Oracle 8.1.7


Just place the drivers jar file in the OJB lib directory.

> -Original Message-
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Sent: Friday, June 13, 2003 12:13 AM
> To: OJB Users List
> Subject: Re: Problem with junit testing on Oracle 8.1.7
> 
> 
> It looks like the JVM that is executing the tests can't find 
> my driver 
> class, even though classes12.zip (the Oracle driver library) 
> is on the JVM 
> classpath when it executes.  Is there a specific 
> modification/configuration I need to make to force junit to 
> find my driver 
> class?
> 
> Here is a sample of the errors I am getting in target\test
> 
> thx in advance
> 
> Peter
> 
> 
> 
> Testsuite: org.apache.ojb.broker.AllTests
> Tests run: 209, Failures: 20, Errors: 150, Time elapsed: 60.805 sec
> - Standard Output ---
> [BOOT] INFO: OJB.properties: 
> file:/C:/db-ojb-1.0.rc3/target/test/ojb/OJB.properties
> [org.apache.ojb.broker.accesslayer.ConnectionFactoryPooledImpl] INFO: 
> Create new connection 
> pool:[EMAIL PROTECTED]
>   jcd-alias=default
>   default-connection=true
>   dbms=Oracle
>   jdbc-level=1.0
>   driver=oracle.jdbc.driver.OracleDriver
>   protocol=jdbc
>   sub-protocol=oracle
>   db-alias=oci8:@WBSP.WORLD
>   user=storefront
>   password=*
>   eager-release=false
>   ConnectionPoolDescriptor={whenExhaustedAction=0, maxIdle=-1, 
> maxActive=21, maxWait=5000, removeAbandoned=false, 
> numTestsPerEvictionRun=10, testWhileIdle=false, 
> minEvictableIdleTimeMillis=60,

Lock bug ??

2003-06-17 Thread Emmanuel Dupont
Hi all,

 

Can someone tell me what is wrong with this piece of code ?? I'm using OJB,
rc1.

 

 

When I call this method twice it failed on the second call on the lock line.
I have only one column in my table. IT is an OID table generator.

Whith :

 

[org.apache.ojb.odmg.TransactionImpl] INFO: Abort transaction was called on
tx [EMAIL PROTECTED], associated PB was
[EMAIL PROTECTED]

[org.apache.ojb.broker.accesslayer.ConnectionManagerImpl] INFO: Rollback was
called, do rollback on current connection
[EMAIL PROTECTED]

[BOjects] null

java.lang.ClassCastException

TransactionImpl.lock(JwtTransactionImpl.java:86)

BOjects.getNextOId(BOjects.java:112)

org.apache.ojb.broker.TransactionNotInProgressException: ConnectionManager
is NOT in transaction

  at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.commitTransaction(Persi
stenceBrokerImpl.java:390)

  at
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.commitTransaction
(DelegatingPersistenceBroker.java:117)

  at BOjects.getNextOId(JwtBOjects.java:124)

Exception in thread "main"

 

 

When I try to parse the code in the debugger, I doesn't failed ..??? Does
that means there is some synchronization problems ?

 

Tx, a lot, any help would be appreciated..

 



public long getNextOId(Class oidObjectClass) {

JwtTransaction tx = jwtImpl.newJwtTransaction();

tx.begin();

JwtDatabase db = jwtImpl.getJwtDatabase(null);

 

PersistenceBroker broker = ((HasBroker) tx).getBroker();

broker.beginTransaction();

 

long result = -1;

 

try {

Query query = new QueryByCriteria(oidObjectClass, null);

 

IObject oidObject = (IObject) broker.getObjectByQuery(query);

 

// Check and increment the Oid ID

result = oidObject.getId();

 

// Delete the old oidObject   

db.deletePersistent(oidObject);

 

// Create a new OidObject

oidObject  newOidObject = new oidObject ();

 

// Lock the nextObject for write access 

tx.lock(newOidObject, WRITE);   ///FAILED ON THE SECOND CALL

 

// Set the modification

oidObject.setId(result+1);

 

} catch (Exception e) {

// rollback in case of errors

   tx.abort();

   System.err.println("[BOjects] " + e.getMessage());

   e.printStackTrace();

}

 

broker.commitTransaction();

tx.commit();

 

return result;

}



RE: Questions re. mapping of associations...

2003-06-17 Thread Leeuw van der, Tim
Hi Thomas,

Thanks for your explanations. A couple of follow-up questions...

> 
> -Original Message-
> From: Thomas Mahler [mailto:[EMAIL PROTECTED]
> Sent: maandag 16 juni 2003 21:46
> To: OJB Users List
> Subject: Re: Questions re. mapping of associations...
> 
> 
> Hi Tim.
> 
> Leeuw van der, Tim wrote:
> > Hello,
> > 
> > I'm trying to convert my existing JDO-metadata mappings to an OJB
> > repository.xml ...
> > 
[...]

> > I couldn't find anywhere the use of such anonymous mappings.
> 
> It's a relatively new feature and the is not available with RC3 or on 
> the Website, but it is already in CVS:
> http://cvs.apache.org/viewcvs/db-ojb/xdocs/howto-use-anonymous-keys.xml
> add the file to the xdocs folder of the source distro and execute the 
> ant target "xslt" and ready is your complete html docu on this topic !
> 

When you say that it's not available in RC3, do you mean that the
documentation for it is not available in RC3? Or does the feature itself not
work yet in RC3?

> > 
> > Another thing which is: With JDO, I defined several java.util.List 
> fields
> > and specified that they should be stored/retrieved in order. I 
> really need
> > to maintain the order of elements in the list, but I would prefer 
> not to
> > have to manually do that housekeeping.
> 
> you can use the collection-descriptor attributes orderby and sort to 
> maintain order:
> The orderby attribute may specify a field of the element class. The 
> Collection or Array will be sorted according to the specified
> attribute. 
> The sort attribute may be used to specify ascending or descending 
> order 
> for this operation.
> 
> 
> > Do I have to explicitly use odmg.DList in my code? Similar for a
> > java.util.Map; do I have to explicitly use odmg.DMap?
> 
> Mhh, what do you want to achieve? using the ODMG persistent 
> collections 
> does not make much sense in JDO (may be I'm missing something).
> 

Sorry for confusing you here. I have some existing mappings for JDO but I
will need to use OJB instead, achieving similar results. So I won't be using
JDO anymore, for the moment at least.
With JDO I could use a plain java.util.List and tell the JDO implementation
to maintain for me the order of elements so that I read them in the same
order as I put them in the list.

I looked at the order-by attribute of the reference descriptor, but I can't
use that. There is no attribute in my element-classes that I can sort on;
it's the order that I put them in the list that is relevant.

My domain-model is a sort of graph, where each node in the graph has links
to multiple other nodes. I could potentially add a sequence-number attribute
to maintain order of the nodes for their ancestor.
However, I also need to store a path over this graph, and each node can be
part of an unlimited number of paths. A node can even appear multiple times
in the same path.
I need an indirection-table therefore, and my sequence-number needs to go
into the indicrection-table. It would be horribly inconvenient to have to
decompose the n:m mapping manually in source.

Therefore my question:
With JDO I can achieve this with any implementation of the java.util.List
interface that I find convenient. Is the only way that I can achieve this
with OJB by using org.odmg.DList?

And if I want to store a java.util.Map in the database, does it have to be a
org.odmg.DMap instance?


I want to be sure of this before I change my code and dive into how to use
those things... I'm still in the stage of trying to find my way with OJB.


> cheers,
> thomas
> 
> > 
> > With regards,
> > 
> > --Tim van der Leeuw
> > 
> > 
> > 

Thanks a lot,

--Tim van der Leeuw

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: how to update a collection reference

2003-06-17 Thread oliver . matz
Hej Shane,

> -Original Message-
> From: Shane Mingins [mailto:[EMAIL PROTECTED]

> I am using the ODMG API.

[..]

> It would be nice to be able to add and remove the objects from the
> collection, persist the object holding the collection (the '1' in the
> 1->n)and have the state of each object in the collection 
> reflected in the

That does not work?  What a pity. Which collection do you use?
If it is one of the java.util.* classes, it cannot work.
You should use one of the ODMG collections, such as 
org.apache.ojb.odmg.collections.DListImpl

> This is what I would have thought would naturally happen but 
> as it does not
> I was wondering if there is some other logical reason as to 
> why it does not?

No, I agree that the behaviour you expect is correct wrt. to
the ODMG specification.

Olli

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: OJB XDoclet module

2003-06-17 Thread Mahler Thomas
Hi Dougall,

sorry for the previous "preempted" post, I'm a bit trigger happy today...

The source is already made available at
http://opensource.atlassian.com/projects/xdoclet/secure/ViewIssue.jspa?key=X
DT-514. 
But I have no idea how long it will take to have it integrated in the
offical CVS.
But Thomas Dudziak we'll keep us updated.

cheers,
thomas

> -Original Message-
> From: Dougall Squair [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 17, 2003 10:34 AM
> To: 'OJB Users List'
> Subject: OJB XDoclet module
> 
> 
> 
> Hi, 
> 
> Will the sourece code for the XDoclet OJB module be included 
> within standard
> 
> XDoclet distribution?
> 
> 
> Dougall
> 
> 
> -
> 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]



RE: OJB XDoclet module

2003-06-17 Thread Mahler Thomas


> -Original Message-
> From: Dougall Squair [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 17, 2003 10:34 AM
> To: 'OJB Users List'
> Subject: OJB XDoclet module
> 
> 
> 
> Hi, 
> 
> Will the sourece code for the XDoclet OJB module be included 
> within standard
> 
> XDoclet distribution?
> 
> 
> Dougall
> 
> 
> -
> 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]



OJB XDoclet module

2003-06-17 Thread Dougall Squair

Hi, 

Will the sourece code for the XDoclet OJB module be included within standard

XDoclet distribution?


Dougall


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: how to update a collection reference

2003-06-17 Thread Shane Mingins
Hi Olli 

I am using the ODMG API.

When I wish to "edit" an object that contains a collection (representing my
1->n relationship); if I add or remove any objects from the collection I
must call either makePersistent or deletePersistent for each of those
objects.  

It would be nice to be able to add and remove the objects from the
collection, persist the object holding the collection (the '1' in the
1->n)and have the state of each object in the collection reflected in the
database automatically.  It does this when the object is persisted for the
first time.

This is what I would have thought would naturally happen but as it does not
I was wondering if there is some other logical reason as to why it does not?

Cheers
Shane

-Original Message-
From: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: 17/06/2003 6:22 p.m.
Subject: RE: how to update a collection reference

Hello Shane,

> -Original Message-
> From: Shane Mingins [mailto:[EMAIL PROTECTED]


> If OJB is meant to provide the persistence mechanism for my 
> application so
> that I can then just code against Objects, why shouldn't I 
> expect to be able
> to persist an Object that holds a collection of other Objects 
> (1->n) and
> have the state of my Object reflected in the persistence 
> operation without
> micro-managing the 'n' side of the relationship?

OJB can do this for you.  When I wrote "Why would you expect that to
happen?"
I was referring to your expectation that objects get removed from
the database when you remove them from a particular collection.
This is not was I would expect.  (But I think even that
is possible with the 'RemovalAwareCollection').

> It seems that the original persistence of the Object supports our
> expectations but subsequent operations do not.

May I ask which API you use?  The ODMG API contains more 
magic, so might be more happy with it than with the 
PersistenecBroker API. 

If you use the PB API nevertheless, you might try to set 
auto-update attribute in the collection-descriptor to true,
it might do what you want.
There are some other attributes that control the behaviour
of references and collections.  See
http://db.apache.org/ojb/repository.html
for details.

> > My problem is that the objects B I remove from the list of 
> > objects B are not deleted in the database when I update the 
> object A.
> 
> Why would you expect that to happen? When you wish to delete an
> item b from the database, you have to explicitly delete it with the
> suitable API call, e.g.
>   broker.delete(x);  // PersistenceBroker
> or
>   database.deletePersistent(x);  // ODMG

Olli

-
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]



Re: OJB is updating read-only columns

2003-06-17 Thread David Warnock
Jakob,

do you still have problems with updated readonly fields ?
We have not had chance to upgrade OJB and re-test yet. I am away al week 
so am not sure yet when I will be able to test this.

Dave
--
David Warnock, Sundayta Ltd. http://www.sundayta.com
iDocSys for Document Management. VisibleResults for Fundraising.
Development and Hosting of Web Applications and Sites.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: Problem with Criteria and Alias

2003-06-17 Thread Michael Schulze
On Tue, 2003-06-17 at 08:25, Michael Hart wrote:
> This problem has been fixed in the latest CVS sources as far as I can tell.
> 
> There have been a number of messages about this problem and their 
> various workarounds in the past month, so just have a hunt around the 
> mail archives.

It works with the latest sources from CVS.

thanks,
Michael



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]