I'm not a Hibernate advanced user, but you're using a XML and Entity class 
annotations to configure your Entity?

Anyways... If you want your app to automatically increment your ID before 
saving it, you shouldn't use the:
    
    <generator class="assigned" />

That tells hibernate that you want to programatically set the ID.

I guess you should use...

    <generator class="identity" />

...instead. Try it out, i guess it will work.


- Everton



________________________________
De: Genís Pujol <gpu...@ngeografics.com>
Para: Tapestry users <users@tapestry.apache.org>
Enviadas: Quarta-feira, 9 de Junho de 2010 4:12:31
Assunto: Re: Res: Res: session.persist saves object with id 0

Hello list,

Thanks for all the replies :)

I've actually created the entities and the xml + annotations mappings using the 
eclipse hibernate plugin, I've just added the tapestry annotations.

For example for the user entity:

http://dpaste.com/205037/

Hibernate xml mapping file:

http://dpaste.com/205038/

CRUD code:
@Inject
Session session

@Component
private Usuario _user;

@CommitAfter
    Object onSuccess()
    {
                try {
               session.persist(_user);
                }
                catch (RuntimeException e) {
                    throw e;
                }
                return this;
            }

thank you people!

greetings,

Genis


Al 08/06/2010 14:35, En/na Everton Agner ha escrit:
> And I forgot to mention it...
> 
> Yes, the @CommitAfter annotation tells Tapestry to wrap that method in a 
> Transaction when it will call it... So, is enough to just .persist() it. ;)
> 
> ------------------------------------------------------------------------
> *De:* Everton Agner <everton_ag...@yahoo.com.br>
> *Para:* Tapestry users <users@tapestry.apache.org>; gpu...@ngeografics.com
> *Enviadas:* Terça-feira, 8 de Junho de 2010 9:32:36
> *Assunto:* Res: session.persist saves object with id 0
> 
> Could you show us how you mapped your Entity?** And regardless if it was by 
> XML or Annotations, show your Entity class code too.*
> 
> 
> De:* Peter Stavrinides <p.stavrini...@albourne.com>
> *Para:* Tapestry users <users@tapestry.apache.org>; gpu...@ngeografics.com
> *Enviadas:* Terça-feira, 8 de Junho de 2010 5:39:14
> *Assunto:* Re: session.persist saves object with id 0
> 
> Perhaps the type is a primitive, so instead of null a default value will be 
> 0? just a guess.
> 
> Peter
> 
> 
> ----- Original Message -----
> From: "Genís Pujol" <gpu...@ngeografics.com <mailto:gpu...@ngeografics.com>>
> To: "Tapestry users" <users@tapestry.apache.org 
> <mailto:users@tapestry.apache.org>>
> Sent: Tuesday, 25 May, 2010 18:30:10 GMT +02:00 Athens, Beirut, Bucharest, 
> Istanbul
> Subject: session.persist saves object with id 0
> 
> Hello,
> 
> After checking the tutorial I was trying to do a basic crud app, but
> somehow after submiting the form (beaneditform) the new object is saved
> into the database with id 0.
> 
> I'm also new to hibernate so I don't know why in the tapestry tutorial
> is enough with session.persist(object), what happened to the factory,
> session.commit, session.close and the Transaction object? is that all
> included with the @CommitAfter annotation?
> 
> 
> Any idea why a new object would be saved with id 0?
> 
> regards,
> 
> Genis
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org 
> <mailto:users-unsubscr...@tapestry.apache.org>
> For additional commands, e-mail: users-h...@tapestry.apache.org 
> <mailto:users-h...@tapestry.apache.org>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org 
> <mailto:users-unsubscr...@tapestry.apache.org>
> For additional commands, e-mail: users-h...@tapestry.apache.org 
> <mailto:users-h...@tapestry.apache.org>
> 
> 
> 


      

Reply via email to