Yes, you did mention that - should help narrow down the problem ;-)

I tried your code with both HSQLDB and Postgresql with the same result on both. org.apache.openejb.persistence.JtaEntityManager is the class that gets injected into _entityManager in your Session bean, and this is a wrapper around the OpenJPA entity manager. I'm wondering whether we're setting something up differently to how you're using OpenJPA on its own. I'm currently checking out OpenJPA to delve into this further.

Cheers

Jon


coloradoflyer wrote:
Hi Jon,

Thanks for your help.  I'm not sure if I mentioned this or not, but I did
try this out in a test case using only openjpa and I did not see the same
behavior.  I did not try it using any other database, but I don't think this
is a problem in that part of the code. I did look at the sql generated, and
it looks like all of the columns are being selected.  One other thing I did,
I downloaded the openejb source, and started looking through it, but I'm not
familiar with the code at all and was hoping the problem would manifest
itself in my code somewhere....  Thanks for your help, please let me know
when you find the problem.

-chris


Jonathan Gallimore-2 wrote:
I've managed to reproduce the issue with your code (many thanks for that!). I'm not sure why its happening, your code looks ok to me, so I'm going to dig deeper to try and figure out what's going on.

Cheers

Jon


coloradoflyer wrote:
Hi Jon/all,

I attached a jar with the test case.  Basically, there are 5 source files
in
here and a sql script to create the entities.
The interface for the stateless session bean, the concrete class for it.
The 2 Entites, and the Test case.  Its pretty small.

If you take a look at the test case, if it passes, that in itself
displays
the problem. The test case is TestAudioServices, and the line that
**should** fail is line 40, it looks for null for the name of the status
(which should never be null).  The proof that this case displays the
problem, is on line 43, basically line 42 reloads the entity by its id,
and
then checks to see if the status now is not null, one of those 2 lines
(41
or 43) should fail.

These are the lines in question:
         file = stateless.update(file);
assertNull(file.getAudioFileStatus().getName()); file = stateless.findById(file.getId());
         assertNotNull(file.getAudioFileStatus().getName());

Thanks for looking into this, I keep thinking I'm going to find something
wrong in my code, but I'm not seeing it so far, and its relatively
trivial
now.
http://www.nabble.com/file/p22509703/testerror.jar testerror.jar -chris



Reply via email to