Hi again,

Guido Beutler wrote:

Hi Armin,

Armin Waibel wrote:

Hi again,

all ejb-example tests pass (odmg- and PB-Tests) on JBoss 3.2.2 and MaxDB. Maybe I forget to write a test for object update ;-).

Do you remember our DataSource problem with 3.2.2.RC3 with missing results?
Maybe that the behavior is different to JBoss 3.2.3., just to have is said. :-)


> Does ist help? I can not see your Methods at the stack trace. Is it
> possible, that the cache is never checked?
You can't see one of these methods in your stack trace, bacause these methods maybe generate a wrong value for boolean 'doInsert' in your case.
The change made between rc5 to rc6 is a new check
serviceBrokerHelper().hasNullPKField(cld, obj);
and the
deletedDuringTransaction.contains(oid);
check. Is it possible that you pass a nullified PK field (declared in decriptor) when you update an object? In that case OJB try to insert the object.


I think you have two possibilities:
- remote debugging of this part of PBImpl class to see if a wrong boolean value was set - signals insert instead of update.
- Put some System.out.println to check the boolean or/and comment out the new stuff and see what's going on.



I reduced my test to get some objects at a collection and store the same objects again (without any modification).
The test immediately fails at the first insert. Because the select returns the expected result and the objects are
returned by OJB I think I can be sure that the objects are filled correctly.
I'll add some code to store the values before returning them to the client but I don't think that this will make any difference.



If I select a collection by OJB and store ist at the same EJB Method (and transaction) a insert instead of update is generated.
The PK Fields are filled correctly and are not modified during the test.


best regards,

Guido


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



Reply via email to