OK, believe it or not, I did just that and *still* cannot get it to work.
Here's my Form class:private static class EditProductForm extends Form
{
public EditProductForm(String name, Product product)
{
super(name, new CompoundPropertyModel(product));
//get collection of Category items
IModel catsModel = new LoadableDetachableModel()
{
protected Object load()
{
return ProductProxy.getAllCategories(); //via proxy
}
};
//add form components
add(new TextField("productCode").add(RequiredValidator.getInstance()));
add(new TextField("name").add(RequiredValidator.getInstance()));
add(new TextArea("summary").add( RequiredValidator.getInstance()));
add(new TextArea("description").add(RequiredValidator.getInstance()));
add(new TextField("unitPrice"));
add(new TextField("weight"));
add(new TextField("height"));
add(new TextField("width"));
add(new TextField("length"));
add(new TextField("insuredValue"));
add(new CheckBox("freeShipping"));
add(new TextField("thumbnail").add(RequiredValidator.getInstance()));
add(new TextField("photo").add(RequiredValidator.getInstance ()));
//add reset button
add(new Button("cancelButton")
{
public void onSubmit()
{
setResponsePage(new EditProduct());
}
}.setDefaultFormProcessing(false));
//add reset button
add(new Button("saveButton"){
public void onSubmit()
{
//save form values, redirect
Product product = (Product)getModelObject();
ProductProxy.addProduct(product);
setResponsePage(new EditProduct());
}
});
}
}
The cancel button works now but the save button is now throwing an exception:
wicket.WicketRuntimeException : Method public abstract void wicket.markup.html.form.IFormSubmitListener.onFormSubmitted () of interface java.lang.reflect.Method threw an exception ...
...
Caused by: java.lang.reflect.InvocationTargetException ...
...
Caused by: wicket.WicketRuntimeException: OGNL Exception: expression='saveButton'; path='4:editProductForm:saveButton'
...
Caused by: ognl.NoSuchPropertyException: com.myapp.model.Product.saveButton
...
Here's the form HTML just in case I'm goofing something there:
...
What's wrong w/ this?
Thanks!