Re: Hibernate problem with OGNL

2013-03-27 Thread Lukasz Lenart
2013/3/26 Markus Demetz mar...@demetz.eu:
 Hi,

 I don't know if this is the right place to ask, but maybe there is anyone
 who has experienced the same problem.

 I'm using Struts2 (latest version), with Hibernate (latest version)
 My database models all have getId().

 I have situations, where the getId() method of my model class returns null
 when navigating through OGNL e.g. when
 calling s:property value=#user.gallery.id/.

Have you tried s:property value=user.gallery.id/ or s:property
value=%{user.gallery.id}/

 When I call getId() from the method in my action class (e.g. UserListAction
 iterating though users and calling user.getGallery().getId()), it returns
 the id as expected.
 If I do that first in my action class, then also my s:property.../ renders
 the id as expected; so I thought about a lazy loading issue... all my
 getId() methods are public, NOT final, and the Long id members are
 protected.

 I also tried to add a getMyId() method in the model which calls getId() from
 within the same class.
 getMyId() { return getId(); }

 This surprisingly works and outputs the correct id when calling s:property
 value=#user.gallery.myId/

You know, HHH uses all that magic with proxies, baytecode manipulation
and so ;-)


Regards
Ł

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



Re: Hibernate problem with OGNL

2013-03-27 Thread Markus Demetz

Hi,


I have situations, where the getId() method of my model class returns null
when navigating through OGNL e.g. when
calling s:property value=#user.gallery.id/.


Have you tried s:property value=user.gallery.id/ or s:property
value=%{user.gallery.id}/

No luck :-(
I also tried with JSTL now without success.
It's very strange, since sometimes it works and then it reappears again.
I'll ask at the hibernate forum.

Regards,
Markus

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



Re: Hibernate problem with OGNL

2013-03-27 Thread Steve Higham

On 27/03/2013 10:42, Markus Demetz wrote:

Hi,


I have situations, where the getId() method of my model class returns 
null

when navigating through OGNL e.g. when
calling s:property value=#user.gallery.id/.


Have you tried s:property value=user.gallery.id/ or s:property
value=%{user.gallery.id}/

No luck :-(
I also tried with JSTL now without success.
It's very strange, since sometimes it works and then it reappears again.
I'll ask at the hibernate forum.

Regards,
Markus

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org


I've seen this behavior on newly created instances. Hibernate doesn't 
know the ID until the object is persisted to the DB. Hibernate tries to 
delay this as long as possible to minimise DB writes. You would have 
thought a request for the ID would force a DB write but Hibernate 
doesn't seem to implement this behavior. If you want the ID you need to 
force the DB write first.


Steve

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



Re: Hibernate problem with OGNL

2013-03-27 Thread Markus Demetz

Hi,

I think I've found the problem.
I had javassist 3.17.1 (latest) in my project but hibernate 4.2 ships 
with version 3.15.0

Now it seems to work!

Thank you, and sorry for misplacing my question here!

Regards,
Markus



Am 27.03.2013 17:23, schrieb Steve Higham:

On 27/03/2013 10:42, Markus Demetz wrote:

Hi,


I have situations, where the getId() method of my model class returns 
null

when navigating through OGNL e.g. when
calling s:property value=#user.gallery.id/.


Have you tried s:property value=user.gallery.id/ or s:property
value=%{user.gallery.id}/

No luck :-(
I also tried with JSTL now without success.
It's very strange, since sometimes it works and then it reappears again.
I'll ask at the hibernate forum.

Regards,
Markus

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org


I've seen this behavior on newly created instances. Hibernate doesn't 
know the ID until the object is persisted to the DB. Hibernate tries 
to delay this as long as possible to minimise DB writes. You would 
have thought a request for the ID would force a DB write but Hibernate 
doesn't seem to implement this behavior. If you want the ID you need 
to force the DB write first.


Steve

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org




-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org



Re: Hibernate problem with OGNL

2013-03-27 Thread Lukasz Lenart
2013/3/27 Markus Demetz mar...@demetz.eu:
 I think I've found the problem.
 I had javassist 3.17.1 (latest) in my project but hibernate 4.2 ships with
 version 3.15.0
 Now it seems to work!

Yeah... this version is buggy :P I have tried update Ognl 3 to it but
no luck ;-)


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

-
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org