RE: validation query for connection failed

2004-11-15 Thread Ribi Roland
Hi,

I also had problems with the broker and now I'm realised, that only if I
define the connection Pool in both files where it is possible
(OJB.properties AND reposistory.xml), it works like we want.

I tried many settings and tested it with JMeter and produced havy laod on
the web application.

The connection pool didn't grow over 21 connections to the db. Only with
setting of maxActive=100 and maxIdle=20 in repository.xml and OJB.properties
it growed over 21 connection on havy load. I don't know why but now it works
fine now.

I searched in the source of OJB and found the default settings in
org.apache.ojb.broker.util.pooling.PoolConfiguration. 

Try to make the settings in both files.

Roland Ribi


> -Original Message-
> From: Thomas Franke [mailto:[EMAIL PROTECTED]
> Sent: Monday, November 15, 2004 5:26 PM
> To: OJB Users List
> Subject: Re: validation query for connection failed
> 
> 
> Ribi Roland wrote:
> 
> Thanks for your help, Roland.
> 
> > http://www.websina.com/bugzero/kb/oracle-connection.html
> This is not our problem, because we almost always get a 
> connection. The 
> problem only occurs sometimes. But to often.
> 
> > An other problem could be that some Broker stay open after 
> use. I had this
> > behavior in my tomcat-application. After I checked the code where a
> > PersistenceBroker is used and implemented the call of the 
> close method
> > correctly at the end of any request (also if it throws an 
> exception!), it
> > works fine.
> We found one method, where the broker wasn't closed. Now all 
> the brokers 
> are definitely being closed in a finally block but our 
> problem is still 
> there.
> 
> regards
> 
> Thomas
> 
> -- 
> Mit freundlichen Grüßen
> 
> Thomas Franke
> 
> Geschäftsführer softEnergy GmbH
> 
> The energy for a better world
> 
> softEnergy GmbH
> Platz der Freundschaft 1
> 18059 Rostock
> 
> fon: +49 381 40 587 535
> fax: +49 381 40 587 555
> mobil: +49 1715222015
> 
> http://www.softenergy.de
> 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: FW: Tx handling in managed environment

2004-11-15 Thread Armin Waibel
Hi Norbert,
[EMAIL PROTECTED] wrote:
hmm yep, assume I know the reason for the failure (I promise 
in OJB 1.1 
this kind of "exotic" configuration won't be such a pain ;-)).
The problem is the used ConnectionFactory implementation.

In managed environments it's not allowed to do 
connection.commit/rollback/autoCommit calls, so the 
ConnectionFactoryManagedImpl should be used in managed environments. 
This class wraps the connection handle from the DataSource and ignore 
calls to this methods. But you want to use both kinds of connections 
(managed, non-managed) and in non-managed environments another 
ConnectionFactory implementation should be used.

But the class which use the connection.commit/rollback/autoCommit 
methods is ConnectionManagerImpl (CM). So we should make this 
class more 
sophisticated. When CM knows that a connection was used in a managed 
environment, then this class could ignore the "banned" 
methods calls and
ConnectionFactoryManagedImpl will became superfluously.

It seems a better solution to handle this kind of connection 
"management" in ConnectionManager implementation. What do you think?


I agree that the connection managers should be smarter.
I expected this ;-)
I'm not so familiar with the entire OJB architecture, but to me it looks as 
follows:
The root cause of the problem is that the connection factory deals with two 
jobs: Pooling (i.e. connection lifecycle management)
and connection behaviour (managed or non-managed, i.e. some functional 
management).
agree, when using ConnectionFactoryManagedImpl the separation of 
services is repealed.


If this is correctly split, things should get much simpler and more obvious. 
Let one group of classes deal with connection lifecycle (includes pooling), and 
another one with functional behaviour (tx-handling etc.) of the connection.
ConnectionFactory:
The task of the factory is connection management in terms of lifecycle.
I'd propose to outsource any required information to the connection descriptors 
(instead of settings in OJB.properties), they should make the scope (since they 
describe different, independent connections, this is meaningful). The 
connection descriptors shall contain information about the connection 
(naturally), as well as the desired pooling behaviour.
The connection factory then creates one connection environment (provides mainly 
the pooling behaviour) per connection descriptor (lazy initialization), and 
uses it for connections created as described in the connection descriptor. It 
shall not be any smarter (no sublclasses or alternative implementations of 
ConnectionFactory).
Note: connection here means a ConnectionManager.
ConnectionManager:
The task of connection managers is connection management in terms of functional 
behaviour.
The connection manager is a wrapper of jdbc-Connection objects. It has the 
knowledge about the functional behaviour, i.e. it knows if it is inside a 
transaction, in batch mode, if the underlaying connection is managed or not, 
and which database it operates on (it could be that here is another abstraction 
required). The connection factory instantiates the correct manager depending on 
the information provided by the connection descriptor. Therefore he could use 
some properties (as it is now, e.g. if a datasource or jdbc connection 
information is provided), or better a dedicated attribute 
'connection-manager-class'.
As a summary: there is one connection factory (not configurable), and several 
connection managers. Pools are used by the factory as needed (i.e. as 
configured) per connection descriptor.
Nothing remains to configure in OJB.properties file, because all information is 
provided by the connection descriptor (looks reasonable, what shall be the 
meaning of global settings here?).
The changes are not so big, only responsibilities of the involved classes are 
separated and resources are scoped by connection descriptors.
Looks quite simple - what are the pitfalls?
Can't find any pitfalls (but I'm sure there will be ;-)). In OJB1.1 (CVS 
head) the ConnectionFactory is declared in jdbc-connection-descriptor 
(instead of OJB.properties), so this work is done already.
See the new (preliminary) declaration
http://cvs.apache.org/viewcvs.cgi/db-ojb/src/test/org/apache/ojb/repository_database.xml?rev=1.26&view=markup

> It shall not be any smarter (no sublclasses or alternative
> implementations of ConnectionFactory).
I think we should allow alternative implementations of this class (e.g. 
user with proprietary connection pooling-api need their own implementation).
But it will be possible to reduce the existing implementations. 
ConnectionManagerManagedImpl will be superfluous after refactoring of 
ConnectionManagerImpl, ConnectionFactoryNotPooledImpl is superfluous, 
because we can introduce a flag that prevent ConnectionFactoryPooledImpl 
from pooling of connections. So, I suggest a new 
ConnectionFactoryDefaultImpl which will be able to handle all kind of 
connection manage

Query by criteria and collection proxies

2004-11-15 Thread Ashish Rangole
Hi!
I am using ojb 1.0.1. I use PB API for querying with in
a ODMG transaction. I use collection proxies for my referenced
collections (by setting proxy="true" in collection descriptor)
and do not use any auto setting explicitly.
When I query a certain type of objects and use Criteria for
specifying objects with what attributes should be retrieved,
I get the desired objects but the referenced collections
do not get populated. Although on calling List.iterator()
method on the collection objects, I see all the members of collection
getting retrieved in spy.log.
Could somebody please tell me what I am doing wrong?
Thanks in advance for your help.
Ashish
--
--
Ashish Rangole
Vexcel Corporation - Image Information Engineering
1690 38th Street, Boulder CO 80301, USA
phone: 303-583-0286 fax: 303-583-0246
Vexcel's home page: http://www.vexcel.com
--
"What hobbyist can put 3-man years into programming, finding all bugs,
 documenting his product and distribute for free?"
-- Bill Gates, An Open Letter to Hobbyists, 1976
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: How to markup for xdoclet inheritance structure?

2004-11-15 Thread Thomas Dudziak
Gelhar, Wallace Joseph wrote:
I am trying to use xdoclet to map an inheritance hierarchy as follows,
but it fails to include any inherited fields.  Any ideas?
The generate-table-info="false" setting disables generation of 
field/reference/collection entries. See here for details:

http://db.apache.org/ojb/docu/guides/xdoclet-module.html#ojb.class
You should also put the ojb.field tags at the getter or setter methods 
in the interfaces because this will cause their definition to be 
inherited in all implementing classes.

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


How to markup for xdoclet inheritance structure?

2004-11-15 Thread Gelhar, Wallace Joseph
I am trying to use xdoclet to map an inheritance hierarchy as follows,
but it fails to include any inherited fields.  Any ideas?


PersistenctObjectImpl (Abstract) implements PersistentObject (Interface)

Foo (Interface) extends PersistentObject (Interface)

FooImpl (Concrete) extends PersistentObjectImpl (Abstract) implements
Foo (Interface)

/**
 * @ojb.class generate-table-info="false"
 *determine-extents="true"
 */
public interface PersistentObject {

public Integer getId();
public void setId(Integer id);
...
}


/**
 * @ojb.class generate-table-info="false"
 *determine-extents="true"
 *include-inherited="true"
 */
public abstract class PersistentObjectImpl implements PersistentObject {

/*
 * @ojb.field column="ID"
 *jdbc-type="INTEGER"
 *primarykey="true"
 */
protected Integer id;
...
}

/**
 * @ojb.class generate-table-info="false"
 *determine-extents="true"
 *include-inherited="true"
 */
public interface ReportParameterValue extends PersistentObject {
public String getValue();
public void setValue(String value);
}

/**
 * @ojb.class table="FooTable"
 *include-inherited="true"
 */
public class FooImpl extends PersistentObjectImpl implements Foo {
/*
 * @ojb.field column="StringValueColumn"
 */
protected String value;
...
}

This is the repository it produces:















Re: [SUGGESTION] - S01 - Website.MainPage & QuickStarts

2004-11-15 Thread Thomas Dudziak
Ilias Lazaridis wrote:
The below document is a draft-version proposal for the main-page of the 
OJB website.

It focuses on two points:
  - getting visitors to try it!
  - pointing out OJB's major top-level strenghts!
The suggested quick-starts would allow:
  - newcomers : to use OJB to quickly explore real JAVA OOAD
in conjunction with IDE's like NetBeans.
  - evaluators: to check OJB quickly without affection
of the running developement system
I can create those quick-start-projects. Assistance from OJB-team 
needed: mostly a few answers to questions which I raise during the 
creation process [within the user list].

The main goal is to make the tutorials modular (stepwise increase of 
complexity), transparent (newcomer-safe, e.g. no domain-knowledge 
necessary) and efficient (quick introduction).
We always welcome enhancements, especially when it comes to the 
documentation, so please post whatever you've got :-)
Btw, best is either textual or in the Forrest format (is really easy, 
see the OJB documentation source).

[A question: is it possible to retrieve older versions of the OJB 
website, e.g. to track changes?]
Yes, sort of. You've got to check out OJB for a particular date or use 
one of the earlier versions (there is a link in the download area) and 
build the documentation new ("ant docs").

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


Re: join with ojb

2004-11-15 Thread Thomas Franke
[EMAIL PROTECTED] wrote:
If the cardinality is as following:
Addressen 1:n Adressen_adressart_typ 1:n Adressartandtyp 1:n
Right you are, this is our cardinality.
Then you can have several instances of the same Adress.
Exactly.
You can ensure (force) the outer joins with query.setPathOuterJoin(".")
for example.
O.K.
Thanks. :)
regards
Thomas
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [QUICKSTART] - A OJB quickstart similar to hibernate

2004-11-15 Thread Jakob Braeuchi
hi ilias,
this is correct!
cp.bat is only used add all jars to the classpath
jakob
Ilias Lazaridis schrieb:
Jakob Braeuchi wrote:
[...]
this is tha batch file i use:
@echo off
set cp=
for %%i in (lib\*.jar) do call cp.bat %%i
set CP=classes;%CP%
java -cp %CP% org.apache.ojb.tutorial1.Application

=> missing cp.bat

content of cp.bat
set CP=%CP%;%1
.
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [QUICKSTART] - A OJB quickstart similar to hibernate

2004-11-15 Thread Ilias Lazaridis
Jakob Braeuchi wrote:
[...]
this is tha batch file i use:
@echo off
set cp=
for %%i in (lib\*.jar) do call cp.bat %%i
set CP=classes;%CP%
java -cp %CP% org.apache.ojb.tutorial1.Application
=> missing cp.bat
content of cp.bat
set CP=%CP%;%1
.
--
http://lazaridis.com
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


[SUGGESTION] - S01 - Website.MainPage & QuickStarts

2004-11-15 Thread Ilias Lazaridis
[please, if you like to comment on this, write inline within the contex]
-
The below document is a draft-version proposal for the main-page of the 
OJB website.

It focuses on two points:
  - getting visitors to try it!
  - pointing out OJB's major top-level strenghts!
The suggested quick-starts would allow:
  - newcomers : to use OJB to quickly explore real JAVA OOAD
in conjunction with IDE's like NetBeans.
  - evaluators: to check OJB quickly without affection
of the running developement system
I can create those quick-start-projects. Assistance from OJB-team 
needed: mostly a few answers to questions which I raise during the 
creation process [within the user list].

The main goal is to make the tutorials modular (stepwise increase of 
complexity), transparent (newcomer-safe, e.g. no domain-knowledge 
necessary) and efficient (quick introduction).

-
[A question: is it possible to retrieve older versions of the OJB 
website, e.g. to track changes?]

-
OJB
ObJectRelationalBridge - Scalable Transparent Persistence for Java Objects
OJB is easy:
  - Don't read documentations - start with trying it:
  - The OJB team cares about your time
- 5 min: download 
  - self-contained: everything needed within one folder
- no affection on current development system
  - evaluate OJB without risk
  - run the samples and explore its sources
- netbeans 4.0 project included
- eclipse 3.0 project included
- 10min: create your first real application
  - define a java class
  - declare it as persistent
  - build *everything*, including database, with a single command
- within your IDE
- or from the command line
  - run your first application
- create, retrieve, update, erase objects
- 20min: extend your first app with relations (1:1, n:1, 1:n, m:n)
  - explore real OOAD with JAVA & OJB
  - stepwise define 4 more java classes
  - attach them to the first class
  - explore incremental design capabilities of OJB
- watch OJB's schema update mechanisms do the work for you
- 10min: migrate you first app to another database (MySQL)
  - watch OJB's schema migration mechanisms work for you
OJB is pure:
  - pure java
  - enables pure OOAD
OJB is scalable:
  - use it withing embedded applications
  - up to enterprise scale distributed applications
OJB is powerfull:
  - fine-tune your application, with high detail grade of control
  - field proven Cache & distributed systems
OJB is flexible in RDBMS
  - HSQL (already bundled), MySQL, ...
OJB is flexible in API's [does not bind you to proprietary technology]:
- full ODMG 3.0 compliant API
  - later migration to ODMG driven OODBMS systems is possible
- full ODMG 3.0 standard OQL (Object Query Language)
  - later migration to major OODBMS systems, without change of OQL code
  - ODMG available for other OO languages, too (e.g. C++)
- allows design of highly speed-critical code with C++/ASM bridge
  - [disclosure: ]
- full JDO 1.0 compliant API
  - later migration to JDO (RDBMS/OODBMS) systems is possible
  - based on JDO Reference Implementation
- highest compatibility
  - [disclosure: performancy penalty of ~XX%, see performance notes]
  - native implementations sheduled for OJB 2.0
- an OTM API (ODMG / JDO common functionality)
  - if you are still undecided which one to use
- a low-level OJB API (PersistenceBroker)
  - all other api's are based on this
  - allows definition of your in-house API's
- e.g. when creating specific Frameworks.
.
--
http://lazaridis.com
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [QUICKSTART] - A OJB quickstart similar to hibernate

2004-11-15 Thread Jakob Braeuchi
it's in bin\
Ilias Lazaridis schrieb:
Jakob Braeuchi wrote:
hi ilias,
this is tha batch file i use:
@echo off
set cp=
for %%i in (lib\*.jar) do call cp.bat %%i
set CP=classes;%CP%
java -cp %CP% org.apache.ojb.tutorial1.Application

=> missing cp.bat
.
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [QUICKSTART] - A OJB quickstart similar to hibernate

2004-11-15 Thread Ilias Lazaridis
Jakob Braeuchi wrote:
hi ilias,
this is tha batch file i use:
@echo off
set cp=
for %%i in (lib\*.jar) do call cp.bat %%i
set CP=classes;%CP%
java -cp %CP% org.apache.ojb.tutorial1.Application
=> missing cp.bat
.
--
http://lazaridis.com
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: Solved! Re: ojb 1.0.1 ant junit fails, but absolutey sure, that setup is correct

2004-11-15 Thread Thomas Dudziak
[EMAIL PROTECTED] wrote:
Thank you, Thomas!
Exactly that was the problem...
:-)
hmmm MANY Errors with oracle 8 and ojb :-(
 

I think you have to tweak the settings so that Oracle plays nicely. You 
should check the mailing list archives for more info.

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


Re: [QUICKSTART] - A OJB quickstart similar to hibernate

2004-11-15 Thread Jakob Braeuchi
hi ilias,
this is tha batch file i use:
@echo off
set cp=
for %%i in (lib\*.jar) do call cp.bat %%i
set CP=classes;%CP%
java -cp %CP% org.apache.ojb.tutorial1.Application
hth
jakob
Ilias Lazaridis schrieb:
Jakob Braeuchi wrote:
hi all,
i commited the new quick-start to 1.0.x branch.
please check it out !

this sounds good, but does not help me.
I still need the commandline / ant-target new addition to start the 
tutorial (see the other messages).

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


Solved! Re: ojb 1.0.1 ant junit fails, but absolutey sure, that setup is correct

2004-11-15 Thread f.rub

Thank you, Thomas!

Exactly that was the problem...
:-)

hmmm MANY Errors with oracle 8 and ojb :-(

best regards
Frank

Thomas Dudziak <[EMAIL PROTECTED]> schrieb am 15.11.2004, 17:43:16:
> [EMAIL PROTECTED] wrote:
> 
> >Hi all,
> >
> >my problem is that I want to try the ant jnuit test with my oracle8 and
> >ojb 1.0.1, ant 1.6.2 (binary), current jdo from java.sun.com
> >ant in path
> >
> >the build runs fine 
> >with compile and macke tables on database (connection is running)
> >tables created.
> >(no errors at all)
> >
> >but afterwards I try to run: ant junit-no-compile-no-prepare
> >and the standard error msg pops up:
> >-
> >D:\db-ojb-1.0.1-bin\db-ojb-1.0.1-src\db-ojb-1.0.1>ant
> >junit-no-compile-no-prepare
> >Buildfile: build.xml
> >
> >junit-no-compile-no-prepare:
> >
> >BUILD FAILED
> >D:\db-ojb-1.0.1-bin\db-ojb-1.0.1-src\db-ojb-1.0.1\build.xml:979: Could
> >not creat
> >e task or type of type: junit.
> >
> >Ant could not find the task or a class this task relies upon.
> >
> >This is common and has a number of causes; the usual
> >solutions are to read the manual pages then download and
> >install needed JAR files, or fix the build file:
> >...
> >
> >is there any idea?
> >because i try to run this test because of problems with my oracle8 db
> >and ojb 1.0.1 (drescribed earlier in another email)
> >thank you in advance.
> >  
> >
> There is probably no junit jar for Ant to use (it doesn't ship with 
> one). So copy the junit jar from OJB's lib folder to the Ant lib folder 
> and all should work fine..
> 
> Tom
> 
> 
> -
> 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: Timestamp and caching?

2004-11-15 Thread jecrotea
I used TIMESTAMP JDBC type for my column, and java.sql.Timestamp for my
Java entity. That's what you like to know?

-

Jean-Francois Croteau
Services Informatiques
IBM Canada Ltée (Bromont)
E-mail : [EMAIL PROTECTED]
Tél. : (450) 534-6556




   
 [EMAIL PROTECTED] 
 c.eu.int  
To
 2004-11-15 11:48  [EMAIL PROTECTED]  
cc
   
 Please respond to Subject
 "OJB Users List"  RE: Timestamp and caching?  
   
   
   
   
   
   




Hi Jean-Francois,

What is your mapping ?
It seems that there is a truncate somewhere, but it seems to be at the
field-descriptor level.
It seems that the precision of the object used for primary key (and then
caching) does not go further than the second.
Personally, I use the TIMESTAMP jdbc type, with a conversion class that
converts my timestamp into a Date.

David WIESZTAL.


-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Monday, November 15, 2004 4:45 PM
To: [EMAIL PROTECTED]
Subject: Timestamp and caching?


Hi everyone.
  I have a DB2 table that has a Timestamp column as primary key. My OJB
code was just right with the OJB 1.0.0 version. I've tried to upgrade the
OJB to the 1.0.1 version. For some reason (I suspect caching), my select
query doesn't work anymore. Here is some data:

Here is the DB2 table. See that in 2 differents seconds, we have 6 events:
4 in the first second and 2 in the second.

EVENT_TMST (Primary Key)   USERID EVENT_MSG
-- --
--
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.760608 SLALIBER   Message #2
2004-11-05 11:08:21.798037 TITI   Message #3
2004-11-05 11:08:21.829017 TOTO   Message #4
2004-11-05 11:08:22.080724 TYTY   Message #5
2004-11-05 11:08:22.180625 TUTU   Message #5

If I use my OJB version 1.0.1 query , I obtain this result :
EVENT_TMST (Primary Key)   USERID EVENT_MSG
-- --
--
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:22.080724 TYTY   Message #5
2004-11-05 11:08:22.080724 TYTY   Message #5

I red this in the changes.txt file from version 1.0.1:

CHANGES:
- Performance improvement in RsIterator, first only map PK values from the
  result set and check against the cache. If no match map all field values
  from result set to internal Map class (old version always maps all values
  from the result set to the internal Map class).

So I tried to add "another" primary key in my repository.xml file and it
worked. So I guess something is truncated in the caching hashmap. Any
though on this?



-

Jean-Francois Croteau
IBM Canada Ltée (Bromont)


-
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: Timestamp and caching?

2004-11-15 Thread David . WIESZTAL
Hi Jean-Francois,

What is your mapping ?
It seems that there is a truncate somewhere, but it seems to be at the
field-descriptor level.
It seems that the precision of the object used for primary key (and then
caching) does not go further than the second.
Personally, I use the TIMESTAMP jdbc type, with a conversion class that
converts my timestamp into a Date.

David WIESZTAL.


-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: Monday, November 15, 2004 4:45 PM
To: [EMAIL PROTECTED]
Subject: Timestamp and caching?


Hi everyone.
  I have a DB2 table that has a Timestamp column as primary key. My OJB
code was just right with the OJB 1.0.0 version. I've tried to upgrade the
OJB to the 1.0.1 version. For some reason (I suspect caching), my select
query doesn't work anymore. Here is some data:

Here is the DB2 table. See that in 2 differents seconds, we have 6 events:
4 in the first second and 2 in the second.

EVENT_TMST (Primary Key)   USERID EVENT_MSG
-- --
--
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.760608 SLALIBER   Message #2
2004-11-05 11:08:21.798037 TITI   Message #3
2004-11-05 11:08:21.829017 TOTO   Message #4
2004-11-05 11:08:22.080724 TYTY   Message #5
2004-11-05 11:08:22.180625 TUTU   Message #5

If I use my OJB version 1.0.1 query , I obtain this result :
EVENT_TMST (Primary Key)   USERID EVENT_MSG
-- --
--
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:22.080724 TYTY   Message #5
2004-11-05 11:08:22.080724 TYTY   Message #5

I red this in the changes.txt file from version 1.0.1:

CHANGES:
- Performance improvement in RsIterator, first only map PK values from the
  result set and check against the cache. If no match map all field values
  from result set to internal Map class (old version always maps all values
  from the result set to the internal Map class).

So I tried to add "another" primary key in my repository.xml file and it
worked. So I guess something is truncated in the caching hashmap. Any
though on this?


-

Jean-Francois Croteau
IBM Canada Ltée (Bromont)


-
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: join with ojb

2004-11-15 Thread Thomas Franke
Danilo Tommasina wrote:
Ok, then try something like this:
Criteria crit = new Criteria();
crit.addEqualTo( "..addressart", new Integer( 1 ) );
 is a collection. Can I do this with a 
collection? I try it. The reference in our address mapping looks like this:


 

regards
Thomas
--
Mit freundlichen Grüßen
Thomas Franke
Geschäftsführer softEnergy GmbH

The energy for a better world

softEnergy GmbH
Platz der Freundschaft 1
18059 Rostock

fon: +49 381 40 587 535
fax: +49 381 40 587 555
mobil: +49 1715222015
http://www.softenergy.de
mail: [EMAIL PROTECTED]

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


Re: ojb 1.0.1 ant junit fails, but absolutey sure, that setup is correct

2004-11-15 Thread Thomas Dudziak
[EMAIL PROTECTED] wrote:
Hi all,
my problem is that I want to try the ant jnuit test with my oracle8 and
ojb 1.0.1, ant 1.6.2 (binary), current jdo from java.sun.com
ant in path
the build runs fine 
with compile and macke tables on database (connection is running)
tables created.
(no errors at all)

but afterwards I try to run: ant junit-no-compile-no-prepare
and the standard error msg pops up:
-
D:\db-ojb-1.0.1-bin\db-ojb-1.0.1-src\db-ojb-1.0.1>ant
junit-no-compile-no-prepare
Buildfile: build.xml
junit-no-compile-no-prepare:
BUILD FAILED
D:\db-ojb-1.0.1-bin\db-ojb-1.0.1-src\db-ojb-1.0.1\build.xml:979: Could
not creat
e task or type of type: junit.
Ant could not find the task or a class this task relies upon.
This is common and has a number of causes; the usual
solutions are to read the manual pages then download and
install needed JAR files, or fix the build file:
...

is there any idea?
because i try to run this test because of problems with my oracle8 db
and ojb 1.0.1 (drescribed earlier in another email)
thank you in advance.
 

There is probably no junit jar for Ant to use (it doesn't ship with 
one). So copy the junit jar from OJB's lib folder to the Ant lib folder 
and all should work fine..

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


ojb 1.0.1 ant junit fails, but absolutey sure, that setup is correct

2004-11-15 Thread f.rub

Hi all,

my problem is that I want to try the ant jnuit test with my oracle8 and
ojb 1.0.1, ant 1.6.2 (binary), current jdo from java.sun.com
ant in path

the build runs fine 
with compile and macke tables on database (connection is running)
tables created.
(no errors at all)

but afterwards I try to run: ant junit-no-compile-no-prepare
and the standard error msg pops up:
-
D:\db-ojb-1.0.1-bin\db-ojb-1.0.1-src\db-ojb-1.0.1>ant
junit-no-compile-no-prepare
Buildfile: build.xml

junit-no-compile-no-prepare:

BUILD FAILED
D:\db-ojb-1.0.1-bin\db-ojb-1.0.1-src\db-ojb-1.0.1\build.xml:979: Could
not creat
e task or type of type: junit.

Ant could not find the task or a class this task relies upon.

This is common and has a number of causes; the usual
solutions are to read the manual pages then download and
install needed JAR files, or fix the build file:
...

is there any idea?
because i try to run this test because of problems with my oracle8 db
and ojb 1.0.1 (drescribed earlier in another email)
thank you in advance.

best regards

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



RE: join with ojb

2004-11-15 Thread David . WIESZTAL
Hi Thomas and Danilo,

What Thomas is proposing works fine.
But be careful with the result.
If the cardinality is as following:
Addressen 1:n Adressen_adressart_typ 1:n Adressartandtyp 1:n
Then you can have several instances of the same Adress.
You will have to make the "distinct" manually.
Be also aware that ojb will do its best to create the joins.
You can ensure (force) the outer joins with query.setPathOuterJoin(".")
for example.

David WIESZTAL.


-Original Message-
From: Danilo Tommasina [mailto:[EMAIL PROTECTED] 
Sent: Monday, November 15, 2004 5:16 PM
To: OJB Users List
Subject: Re: join with ojb



Ok, then try something like this:

Criteria crit = new Criteria();
crit.addEqualTo( "..addressart", new Integer( 1 ) );

QueryByCriteria query = new QueryByCriteria( Adressen.class, crit, true );

PersistenceBroker pb = null;
try {
   pb = PersistenceBrokerFactory.defaultPersistenceBroker();

   Collection results = pb.getCollectionByQuery( query );

   // The Collection now contains instances of class Adressen

} catch ( Exception e ) {
   // Do exception handling
} finally {
   if ( pb != null ) {
  pb.close();
   }
}


> Danilo Tommasina wrote:
> 
> Thanks a lot for your help.
> 
>> With the PersistenceBroker API you can use a ReportQueryByCriteria
> 
> O.K., but we want as result a collection with 'Address' objects. The 
> 'name' attribute is an exampel only. Sorry, my question was not clear 
> enough. We don't know the right mapping and how to build the 'Criteria' 
> object.
> 
> regards
> 
> Thomas
> 


-
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: validation query for connection failed

2004-11-15 Thread Thomas Franke
Ribi Roland wrote:
Thanks for your help, Roland.
http://www.websina.com/bugzero/kb/oracle-connection.html
This is not our problem, because we almost always get a connection. The 
problem only occurs sometimes. But to often.

An other problem could be that some Broker stay open after use. I had this
behavior in my tomcat-application. After I checked the code where a
PersistenceBroker is used and implemented the call of the close method
correctly at the end of any request (also if it throws an exception!), it
works fine.
We found one method, where the broker wasn't closed. Now all the brokers 
are definitely being closed in a finally block but our problem is still 
there.

regards
Thomas
--
Mit freundlichen Grüßen
Thomas Franke
Geschäftsführer softEnergy GmbH

The energy for a better world

softEnergy GmbH
Platz der Freundschaft 1
18059 Rostock

fon: +49 381 40 587 535
fax: +49 381 40 587 555
mobil: +49 1715222015
http://www.softenergy.de
mail: [EMAIL PROTECTED]

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


Re: join with ojb

2004-11-15 Thread Danilo Tommasina
Ok, then try something like this:
Criteria crit = new Criteria();
crit.addEqualTo( "..addressart", new Integer( 1 ) );
QueryByCriteria query = new QueryByCriteria( Adressen.class, crit, true );
PersistenceBroker pb = null;
try {
  pb = PersistenceBrokerFactory.defaultPersistenceBroker();
  Collection results = pb.getCollectionByQuery( query );
  // The Collection now contains instances of class Adressen
} catch ( Exception e ) {
  // Do exception handling
} finally {
  if ( pb != null ) {
 pb.close();
  }
}

Danilo Tommasina wrote:
Thanks a lot for your help.
With the PersistenceBroker API you can use a ReportQueryByCriteria
O.K., but we want as result a collection with 'Address' objects. The 
'name' attribute is an exampel only. Sorry, my question was not clear 
enough. We don't know the right mapping and how to build the 'Criteria' 
object.

regards
Thomas

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


Re: [QUICKSTART] - A OJB quickstart similar to hibernate

2004-11-15 Thread Ilias Lazaridis
Jakob Braeuchi wrote:
hi all,
i commited the new quick-start to 1.0.x branch.
please check it out !
this sounds good, but does not help me.
I still need the commandline / ant-target new addition to start the 
tutorial (see the other messages).

.
--
http://lazaridis.com
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: join with ojb

2004-11-15 Thread Thomas Franke
Danilo Tommasina wrote:
Thanks a lot for your help.
With the PersistenceBroker API you can use a ReportQueryByCriteria
O.K., but we want as result a collection with 'Address' objects. The 
'name' attribute is an exampel only. Sorry, my question was not clear 
enough. We don't know the right mapping and how to build the 'Criteria' 
object.

regards
Thomas
--
Mit freundlichen Grüßen
Thomas Franke
Geschäftsführer softEnergy GmbH

The energy for a better world

softEnergy GmbH
Platz der Freundschaft 1
18059 Rostock

fon: +49 381 40 587 535
fax: +49 381 40 587 555
mobil: +49 1715222015
http://www.softenergy.de
mail: [EMAIL PROTECTED]

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


Timestamp and caching?

2004-11-15 Thread jecrotea
Hi everyone.
  I have a DB2 table that has a Timestamp column as primary key. My OJB
code was just right with the OJB 1.0.0 version. I've tried to upgrade the
OJB to the 1.0.1 version. For some reason (I suspect caching), my select
query doesn't work anymore. Here is some data:

Here is the DB2 table. See that in 2 differents seconds, we have 6 events:
4 in the first second and 2 in the second.

EVENT_TMST (Primary Key)   USERID EVENT_MSG
-- --
--
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.760608 SLALIBER   Message #2
2004-11-05 11:08:21.798037 TITI   Message #3
2004-11-05 11:08:21.829017 TOTO   Message #4
2004-11-05 11:08:22.080724 TYTY   Message #5
2004-11-05 11:08:22.180625 TUTU   Message #5

If I use my OJB version 1.0.1 query , I obtain this result :
EVENT_TMST (Primary Key)   USERID EVENT_MSG
-- --
--
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:21.603950 JECROTEA   Message #1
2004-11-05 11:08:22.080724 TYTY   Message #5
2004-11-05 11:08:22.080724 TYTY   Message #5

I red this in the changes.txt file from version 1.0.1:

CHANGES:
- Performance improvement in RsIterator, first only map PK values from the
  result set and check against the cache. If no match map all field values
  from result set to internal Map class (old version always maps all values
  from the result set to the internal Map class).

So I tried to add "another" primary key in my repository.xml file and it
worked. So I guess something is truncated in the caching hashmap. Any
though on this?

-

Jean-Francois Croteau
IBM Canada Ltée (Bromont)


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



Re: [QUICKSTART] - A OJB quickstart similar to hibernate

2004-11-15 Thread Ilias Lazaridis
Łukasz Korzybski wrote:
Dnia niedziela, 14 listopada 2004 21:29, Thomas Dudziak napisał:
Ilias Lazaridis wrote:
[...]
NB 4.0 uses ant natively for its projects. To run obj-blank in NB:
New Project -> Java Project with Existing Ant Script
We need to choose project location and select build.xml
After creation, in project properties we can select build, deploy etc. 
targets.

Open build.xml and add run target:






thank you [note: the ant-target "run" works from the command-line, too]
Please use this slight corrected version for Tutorial 1:






And everything should fly.
problem:
[root]/build.xml
[root]/build/classes
[root]/build/resources
the application runs withing [root].
the application needs to access files within /build/resources
Can one make the necessary modification to the above ant-target "run"?
.
--
http://lazaridis.com
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: join with ojb

2004-11-15 Thread Danilo Tommasina
Hi,
What you are doing is using inner joins with legacy Oracle or Sybase syntax 
(and probably several other DBs).
With the PersistenceBroker API you can use a ReportQueryByCriteria
something like this:
Criteria crit = new Criteria();
crit.addEqualTo( "..addressart", new Integer( 1 ) );
ReportQueryByCriteria query = new ReportQueryByCriteria( Adressen.class, new String [] { 
"name" }, crit, true );
PersistenceBroker pb = null;
try {
  pb = PersistenceBrokerFactory.defaultPersistenceBroker();
  Iterator results = pb.getReportQueryIteratorByQuery( query );
  // Extract the value you need before closing the PersistenceBroker
  // The Iterator entries are Object [] containing a single String representing 
the name
  // String name = (String) ((Object []) results.next())[ 0 ];
} catch ( Exception e ) {
  // Do exception handling
} finally {
  if ( pb != null ) {
 pb.close();
  }
}
Modify the addEqualTo( ... ) statement according to your repository.xml, 
without this file i cannot help more.
bye
Danilo

Hallo there,
I want to do this with ojb but I can't find a good and straight forward 
way.

SELECT DISTINCT A.name
FROM adressen A, adressen_adressart_typ B, adressartandtyp C
WHERE A.adressen_id = B.adressen_id
AND B.adressart_id = C.adressart_id
AND C.adressart = 1;
Could anyone give me a simple solution?
Thanks in advance.
regards
Thomas


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


Re: [QUICKSTART] - A OJB quickstart similar to hibernate

2004-11-15 Thread Ilias Lazaridis
Ilias Lazaridis wrote:
Ilias Lazaridis wrote:
Thomas Dudziak wrote:
[...]
If you just want to run something, then drop in the source files and do
I want to run and explore it.
ant build
ant setup-db
cd build/resources
java -classpath "the;classpath" whatever.you.main.class.is
ok, will try.
I've compiled the code within netbeans, but i'm not able to start within 
the IDE.

can you please give me the exact command line for the tutorial 1?
My project resides on:
J:\pj\ojbeval\ojb-blank\src\java\org\apache\ojb\tutorial1
Can one please give me the exact command-line i have to use for the 
tutorial 1?

.
--
http://lazaridis.com
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


join with ojb

2004-11-15 Thread Thomas Franke
Hallo there,
I want to do this with ojb but I can't find a good and straight forward way.
SELECT DISTINCT A.name
FROM adressen A, adressen_adressart_typ B, adressartandtyp C
WHERE A.adressen_id = B.adressen_id
AND B.adressart_id = C.adressart_id
AND C.adressart = 1;
Could anyone give me a simple solution?
Thanks in advance.
regards
Thomas
--
Mit freundlichen Grüßen
Thomas Franke
Geschäftsführer softEnergy GmbH

The energy for a better world

softEnergy GmbH
Platz der Freundschaft 1
18059 Rostock

fon: +49 381 40 587 535
fax: +49 381 40 587 555
mobil: +49 1715222015
http://www.softenergy.de
mail: [EMAIL PROTECTED]

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


ojb 1.0.1 does'nt uses ?

2004-11-15 Thread Ribi Roland
Hi,

Is it correct that ojb 1.0.1 does'nt uses the  settings
from repository.xml and uses the defaults in OJB.properties instead?

I had the following settings but it did'nt used it:



I tried many settings and I had always the same Exceptions at a specific
amount of request on my tomcat application. Now I tried to set this settings
in the OJB.properties and it works ...

Is it a bug or a feature?  :)


Roland Ribi

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



Bug identified (was RE: SQLExcpetion)

2004-11-15 Thread Daniel Perry
I believe that I have solved this problem, and that there is a bug in OJB.
I cannot be sure, but with the fix, the app has been running for 10 days now
with no reported errors.

It seems that in certain circumstances an old connection will be reused, and
it will not be validated (or checked for being alive).

The following conditions are required for the error to occur :
1. An object is cached (it will only happen with a long term cache - eg
ObjectCacheDefaultImpl)
2. The object has been cached for long enough for the database connection
that was used to load it has expired
3. The object was loaded from outside a transaction (or possibly also inside
a very long living transaction)
4. A collection proxy (not sure if it affects other proxies) is materialised
from within this
object

What seems to happen, is the connection which was used to load the object is
held onto, and when the collection is materialised it reuses this stale
connection and crashes out.  It might also be caused if it has already been
materialised and refresh=true - not sure how that works though.

This bug will only affect people using OJB in accordance with the above
criteria.  ObjectCachePerBrokerImpl shouldn't be affected.  Also the bug
wont apply if using transactions - as when it is closed it drops the
connection.

The solution is in ConnectionManagerImpl.getConnection method.  The code is
already there, but commented out:
>
> // if (con == null || !isAlive(con))
> // isAlive check, how do we react if false and we in tx?
> // create a new connection isn't the right way I think.
> if (con == null)

I think this code should be applied - or at the very least, should be
modified and applied if not inside a transaction:

if (con == null || (!isInLocalTransaction() && !isAlive(con)) )

Daniel.

> -Original Message-
> From: Daniel Perry [mailto:[EMAIL PROTECTED]
> Sent: 02 November 2004 11:14
> To: OJB Users List
> Subject: RE: SQLExcpetion
>
>
> Once again our app has started getting these errors (see trace below). It
> seems to be happening after several days of operation.
>
> The problem always seems to happen when iterating over a proxied
> collection
> in a jsp (using jakarta JSTL c:forEach tag).
>
> See comments below:
>
> > Is the error always caused by the same class
> >
> >  at
> >  org.apache.taglibs.standard.tag.common.core.ForEachSupport.toForE
> >  >>>
> >  >>>achIterator
> >
> > or always caused when materialized a proxied collection?
>
> Yes it's caused by that same class, but not always from the same jsp.
>
> But it's also always when proxied collections are materialised.
>
> >
> > Does the error occur when OJB materialize a class with clob/blob or
> > binary/object field?
> >
>
> Dont think so.
>
> > > Is there a way for me to clear the connection pool?
> >
> > You can try
> > ConnectionFactoryFactory.createConnectionFactory().releaseAllResources()
> > CFF is a singleton. This call clear the used pool and close all
> > connections of the pool (connections in use will be ignored AFAIK)
> >
> > Or extend ConnectionFactoryPooledImpl and add your own
> monitoring methods.
>
>
> I've tried clearing the connection pool every hour, so the connections
> should be fine.  I havnt tried clearing the cache...
>
> How are connections obtained when cached objects have their proxied
> collections materialised? (note no transactions are being used)
>
> I think an object is being loaded, and stuck in the cache.  Days later the
> object is being used and is having a proxied collection materialised, and
> this is using the origional connection.
>
> From what i can see in the code, a collection proxy obtains a broker, the
> broker obtains a connection - but (and i might have got the code
> wrong here)
> it should reuse the broker it used when it was initally loaded,
> and then the
> broker reuses the conenction without checking it isnt closed :
> ConnectionManagerImpl.getConnection
>
> // if (con == null || !isAlive(con))
> // isAlive check, how do we react if false and we in tx?
> // create a new connection isn't the right way I think.
> if (con == null)
>
> This only checks if it has a connection, not if the connection is valid.
> Maybe i should reinstate the (con == null || !isAlive(con)) ???
>
> Could this be the cause of my problem? or am i way off track!
>
> Daniel.
>
> Stack trace:
>
> org.apache.jasper.JasperException:
> org.apache.ojb.broker.PersistenceBrokerException:
> org.apache.ojb.broker.PersistenceBrokerSQLException:
> java.sql.SQLException:
> No operations allowed after connection closed.
>
> Connection was closed due to the following exception:
>
> ** BEGIN NESTED EXCEPTION **
>
> java.sql.SQLException
> MESSAGE: Communication link failure: java.io.IOException,
> underlying cause:
> Unexpected end of input stream
>
> ** BEGIN NESTED EXCEPTION **
>
> java.io.IOException
> MESSAGE: Unexpected end of input stream
>
> STACKTRACE:
>
> java.io.IOExceptio

auto-retrieve="false" and retrieving that

2004-11-15 Thread Joose Vettenranta
Hi,
I have a collection which has auto-retrieve="false". Now I need that 
information, how can I make it to retrieve it?

I tried using broker.getAllReferences (obj) but it didn't work.
or do I just have to use getCollectionByQuery?
Using ojb101
Thanks,
Joose
--
"Always remember that you are unique, just like everyone else!"
* http://iki.fi/joose/ * [EMAIL PROTECTED] * +358 44 561 0270 *
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


BUG(?): 2 classes, same table name, different database

2004-11-15 Thread Joose Vettenranta
So, is this a bug in OJB?
So one software,
2 database
2 classes
2 different kind of table, but they are both named same
=> table <-> class mapping is not working
- Joose
12.11.2004 kello 09:43, Joose Vettenranta kirjoitti:
 I forgot to say, that I have different dbuser and different connection 
for both of dabases. And both connection is described with 
jdbc-connection-descriptor -element and using :






Thanks,
Joose
12.11.2004 kello 09:33, Joose Vettenranta kirjoitti:
 Hi,
I have 2 databases, let's call them db1 and db2
in db1 I have table called admin
in db2 I have also table called admin
but they are not like each other, they have different kind of table 
structure.

for db1 I have a class to access table admin, let's call it 
net.vettenranta.db1.AdminImpl;
for db2 I have a class to access table admin, let's call it 
net.vettanranta.db2.Admin;

Now, here is the problem:
when I try to get data from db2 it tries also get db1's fields (most 
likely same happens to db1 class, but have not tried yet) which 
causes error: Caused by: java.sql.SQLException: ERROR:  No such 
attribute a0.uid

So, is it possible to tell ojb that "heyy, it's this db2.Admin 
reference you have to use from repository, not db1.AdminImpl"?

Using ojb1.0.1
Thanks, Joose

--
"Always remember that you are unique, just like everyone else!"
* http://iki.fi/joose/ * [EMAIL PROTECTED] * +358 44 561 0270 *
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: NullPointerException in OjbStorePMF.getStoreManager

2004-11-15 Thread Magnus Strand
Thanks Armin, the fix worked.
regards,
Magnus
Armin Waibel wrote:
Hi Magnus,
> Caused by: java.lang.NullPointerException
>at
> 
org.apache.ojb.broker.util.logging.LoggerFactoryImpl.getLogger(LoggerFactoryImpl.java:163) 

>
>at
> 
org.apache.ojb.broker.util.logging.LoggerFactory.getLogger(LoggerFactory.java:74) 

> Could it be that the file OJB.properties couldn't be read?
Think you are right. Assume the NPE (will fix this CVS) was caused by 
the logger class and this class will be 'null' when OJB could not read 
the configuration.

regards,
Armin
Magnus Strand wrote:
Hi,
I use db-ojb1.0.1 (JDO) from an MDB (SUN Java System app server 
2004Q4beta on Windows XP SP2).

When I call the java code from the command line it works fine.
I have added c:\myclasses to the app servers CLASSPATH-suffix and in 
this folder I have all the JARs
neeeded and OJB.properties and repository.xml etc.

in my MDB's onMessage-method:
   PersistenceManagerFactory factory = new OjbStorePMF();
   UCEnterNewPerson enp = new UCEnterNewPerson(factory);
   enp.createPerson();
...
   public void createPerson()
   {
   inti;
   // read in all relevant information and fill the new 
object:
   PersistenceManager manager = factory.getPersistenceManager();
   Transactiontx  = manager.currentTransaction();

   // 1. this will be our new object
   Person newPerson = new Person();
   newPerson.setFirstname("J");
   newPerson.setLastname("Lo");
   tx.begin(); // this line I think throws the exception
   manager.makePersistent(newPerson);
   // commit transaction
   tx.commit();
   manager.close();
   // now perform persistence operations
   }
...
Could it be that the file OJB.properties couldn't be read?
Any help will be appreciated.
Regards
Magnus Strand
[#|2004-11-05T14:33:47.448+0100|INFO|sun-appserver-pe8.1|javax.enterprise.system.stream.out|_ThreadID=11;| 

MESSAGE BEAN v.2: Message received: This is message 1|#]
[#|2004-11-05T14:33:48.019+0100|VARNING|sun-appserver-pe8.1|javax.enterprise.system.stream.err|_ThreadID=11;|org.apache.ojb.jdori.sql.OjbStoreFatalInternalException: 
org.apache.ojb.jdori.sql.OjbStorePMF.getStoreManager
NestedThrowables:
java.lang.NullPointerException
   at 
org.apache.ojb.jdori.sql.OjbStorePMF.getStoreManager(OjbStorePMF.java:272) 

   at 
com.sun.jdori.common.PersistenceManagerImpl.getStoreManager(Unknown 
Source)
   at com.sun.jdori.common.TransactionImpl.getConnector(Unknown Source)
   at com.sun.jdori.common.TransactionImpl.beginInternal(Unknown Source)
   at com.sun.jdori.common.TransactionImpl.begin(Unknown Source)
   at org.apache.ojb.tutorial5.UCEnterNewPerson.createPerson(Unknown 
Source)
   at samples.ejb.mdb.simple.ejb.SimpleMessageBean.onMessage(Unknown 
Source)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 

   at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 

   at java.lang.reflect.Method.invoke(Method.java:324)
   at 
com.sun.enterprise.security.SecurityUtil$2.run(SecurityUtil.java:149)
   at java.security.AccessController.doPrivileged(Native Method)
   at 
com.sun.enterprise.security.application.EJBSecurityManager.doAsPrivileged(EJBSecurityManager.java:950) 

   at 
com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:154)
   at 
com.sun.ejb.containers.MessageBeanContainer.deliverMessage(MessageBeanContainer.java:956) 

   at 
com.sun.ejb.containers.MessageBeanListenerImpl.deliverMessage(MessageBeanListenerImpl.java:42) 

   at 
com.sun.enterprise.connectors.inflow.MessageEndpointInvocationHandler.invoke(MessageEndpointInvocationHandler.java:130) 

   at $Proxy13.onMessage(Unknown Source)
   at 
com.sun.messaging.jms.ra.OnMessageRunner.run(OnMessageRunner.java:166)
   at com.sun.enterprise.connectors.work.OneWork.doWork(OneWork.java:45)
   at 
com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:398) 

Caused by: java.lang.NullPointerException
   at 
org.apache.ojb.broker.util.logging.LoggerFactoryImpl.getLogger(LoggerFactoryImpl.java:163) 

   at 
org.apache.ojb.broker.util.logging.LoggerFactory.getLogger(LoggerFactory.java:74) 

   at 
org.apache.ojb.jdori.sql.OjbStoreManager.(OjbStoreManager.java:57)
   at 
org.apache.ojb.jdori.sql.OjbStorePMF.getStoreManager(OjbStorePMF.java:262) 

   ... 21 more
NestedThrowablesStackTrace:
java.lang.NullPointerException
   at 
org.apache.ojb.broker.util.logging.LoggerFactoryImpl.getLogger(LoggerFactoryImpl.java:163) 

   at 
org.apache.ojb.broker.util.logging.LoggerFactory.getLogger(LoggerFactory.java:74) 

   at 
org.apache.ojb.jdori.sql.OjbStoreManager.(OjbStoreManager.java:57)
   at 
org.apache.ojb.jdori.sql.OjbStorePMF.getStoreManager(OjbStorePMF.java:262) 

   at 
com.sun.jdori.common.PersistenceManagerImpl.getStoreManager(Unknown 
Source)