Hi, You shouldn't rely on changes on your method’s parameters when working with EJBs. For example, imagine that you are calling…
MyEntity myEntity = new MyEntity(); myEntity.setName(“Thiago”); myEntity.setNickName(“Boto”); mySessionBean.createEntity(myEntity); System.println(myEntity.getId()); The result of the println method above depends on from where you are calling the ejb. If it is a remote ejb, it will be null… if it is local, it will be your bean id. That’s because you should return the value from the “createEntity” method. So, to fix it, you should change the code above from... mySessionBean.createEntity(myEntity); to… myEntity = mySessionBean.createEntity(myEntity); Could you check it? []s, Thiago. On Wed, Feb 16, 2011 at 2:42 PM, [email protected] <chaminda.sl@ gmail.com> wrote: > > > Hi Guys, > > I have a Stateless SB with @Remote interface which calls > em.persist(entity). > Entity implements Serialization and Identity as the id generation Type. > > Issue is em.persist runs without any exception (in mysql, HSQL and JavaDB) > and saves the entity to db but it does not set the generated id to entity. > > Interesting thing is if I change the @Remote to @Local em sets the > generated > id to entity fine. > > This can be reproduce easily in OpenEJB example as well... > > Thanks > -- > View this message in context: > http://openejb.979440.n4.nabble.com/Remote-Interface-with-JPA-Issue-tp3309594p3309594.html > Sent from the OpenEJB User mailing list archive at Nabble.com. >
