Yup, two angles on the same stuff. It does not change the clone /
initialize technique.
I guess I could put in a wiki tip on this?
James Carman wrote:
I don't typically use CompoundPropertyModel (we've discussed this
offline before) because it's too "magicy." I find that explicitly
creating my models helps me keep track of what's going on better. I
do use PropertyModels, though. I just like to explicitly know the
"base" that I'm dealing with when I'm using property models.
On Tue, Nov 25, 2008 at 6:50 AM, Nino Saturnino Martinez Vazquez Wael
<[EMAIL PROTECTED]> wrote:
I guess not much if you do the initialize, but it has some issues with
collections (like you need to add to collections instead of setting them I
think). And you will end up doing initialize anyhow so using clone and a
simple compound property model are just as fine plus more simple..
James Carman wrote:
So, what's wrong with using "shadow" models and letting them
eventually write into the real model (which is a LDM) at the very end?
On Tue, Nov 25, 2008 at 2:25 AM, Nino Saturnino Martinez Vazquez Wael
<[EMAIL PROTECTED]> wrote:
Hi Guys
I've been having a little trouble with hibernate and a multipage wizard,
I
finally cracked the nut. And heres my solution:
In the link that refers to the wizard use a loadable detachable model..
Onclick you initialize all proper collections and CLONE the object, after
the wizard are done you merge the clone..
codesniplet:
Link<Event> linkEdit = new Link<Event>("edit",
item.getModel()) {
@Override
public void onClick() {
LoadableDetachableEventModel model=new
LoadableDetachableEventModel(eventRepository,this.getModelObject());
Hibernate.initialize(((Event)model.getObject())
.getLinks());
Hibernate.initialize(((Event)model.getObject())
.getDateStart());
Hibernate.initialize(((Event)model.getObject())
.getDateEnd());
Hibernate.initialize(((Event)model.getObject())
.getTags());
Model<Event> eventModel = new Model<Event>(
(Event) SerializationHelper.clone((Event)
model.getObject()));
CompoundPropertyModel<Event> e = new
CompoundPropertyModel<Event>(
eventModel);
EventWizard newWizard = new EventWizard(eventWizard
.getId(), e) {
@Override
public void onFinish() {
eventRepository.update(eventModel.getObject());
eventWizard.setVisible(false);
}
};
newWizard.setVisible(true);
eventWizard.getPage().addOrReplace(newWizard);
eventWizard = newWizard;
}
};
--
-Wicket for love
Nino Martinez Wael
Java Specialist @ Jayway DK
http://www.jayway.dk
+45 2936 7684
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
-Wicket for love
Nino Martinez Wael
Java Specialist @ Jayway DK
http://www.jayway.dk
+45 2936 7684
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
-Wicket for love
Nino Martinez Wael
Java Specialist @ Jayway DK
http://www.jayway.dk
+45 2936 7684
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]