Okay, I am a bit confused how the EJB3 session beans + Seam + Seam managed 
entity managers work. I have looked at the examples, and none seem to do this.

What I am doing:
I am creating a registration site for a conference. The registration process is 
a wizard invovling 3-x number of steps. On the first step, I am creating a 
Registration object and adding it to my Conference object (collections mapped 
via one-to-many). The registration has several children objects called 
BreakoutSessionRegistration, and the Conference has several children of type 
BreakoutSession.

On the beginRegistration:
        @Begin(join=true)
  |     @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
  |     public String beginRegistration()
  |     {
  |             this.registration = new Registration();
  |             this.registration.setConference(conference);
  |             this.conference.getRegistrations().add(registration);
  |             for (BreakoutSession bs : this.conference.getBreakoutSessions())
  |             {
  |                     BreakoutSessionRegistration bsr = new 
BreakoutSessionRegistration();
  |                     bsr.setRegistration(registration);
  |                     bsr.setSession(bs);
  |                     bsr.setNumberOfAttendees((short)0);
  |                     
bsr.getRegistration().getBreakoutRegistrations().add(bsr);
  |                     bsr.getSession().getRegistrations().add(bsr);
  |             }
  |             
  |             return "beginRegistration";
  |     }
  | 

So now, I want the user to continue to edit this registration object and 
breakout sessions over several pages of a wizard.

I also want to have a cancel button:

  |     @End
  |     public String cancel()
  |     {
  |             // what to do here?
  |             return "canceled";
  |     }
  | 
I don't want anything committed to the database until my save() method is 
called. I also want the cancel button to undo its changes. In this same 
"action" class, I have a list of all the registrations for the current user and 
a list of all the conferences. I get this list before I ever being a 
conversation.

My beginRegistration method starts the conversation. The problem is that the 
conversation is dirty and therefore so is the list of my conversations. When 
the user cancels, I want to restore the "virgin" state of the conferences and 
registrations. 

Is this possible? I tried entityManager.refresh(Object) on the conference, but 
it did not like the fact that the registration was not in the database (null 
identifier error).

I'm really having a hard time with getting a good grasp of how to use the 
extended persistence manager, long running conversations and the ability to 
cancel or save.

Thanks in advance, I'm really at a loss.
Andrew



View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3938048#3938048

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3938048


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to