Sorry for my stupidity. I think i got it now. I have to provide an "accessor
chain" based on the page model assigned. So i don't have to get the objects
in the model. Instead i have to specify the "path to object'.
Code below is working now.
public HomePage(final PageParameters parameters) {
OrderModel m = OrderModelFactory.create();
IModel model = new CompoundPropertyModel(m);
setModel(model);
Panel pnlOrder = new OrderPanel("pnlOrder",
new PropertyModel(model, "order"));
pnlOrder.setOutputMarkupId(true);
add(pnlOrder);
Panel pnlShipTo = new PersonPanel("pnlShipTo",
new PropertyModel(model, "shipTo"));
pnlShipTo.setOutputMarkupId(true);
add(pnlShipTo);
add(new AjaxLink("lnkNext") {
public void onClick(AjaxRequestTarget target) {
OrderModel m2 = OrderModelFactory2.create();
HomePage.this.setModelObject(m2);
target.addComponent(HomePage.this.get("pnlOrder"));
target.addComponent(HomePage.this.get("pnlShipTo"));
}
});
}
public class OrderPanel extends Panel {
/**
* Constructor of OrderPanel.
*/
public OrderPanel(String id, IModel m) {
super(id);
add(new Label("orderId", new PropertyModel(m, "orderId")));
add(new Label("orderDate", new PropertyModel(m, "orderDate")));
}
}
public class OrderModel implements Serializable {
private Order order = null;
public Order getOrder() {
return order;
}
public void setOrder(Order pOrder) {
order = pOrder;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]