the types of form and button do not have to correlate. furthremore the
model of the button dictates the value attribute, so it should really
be class ajaxbutton extends button<string>
-igor
On Sun, Jun 22, 2008 at 2:18 PM, Stefan Lindner <[EMAIL PROTECTED]> wrote:
> Yes, I know that the wicket developers are rethinking Generics. But I
> think the current 1.4M2 implementation of AjaxButton is not very
> helpful. The AjaxButton componet is the replacement for AjaxsubmitButton
> (written down in the JavaDoc).
>
> Now I have a Form
>
> MyForm<X> {
> ...
> new AjaxButon<X> {
> onSubmit(AjaxRequestTarget target, Form<?> form) {
> }
> }
> }
>
> Why is the Form in the onSubmit method marked as <?> ? Why is the method
> in the M2 implementation
>
> public abstract class AjaxButton<T> extends Button<T> {
> ...
> public AjaxButton(String id, final Form< ? > form)
> ...
> }
>
> Should the implementaion not be
>
> public abstract class AjaxButton<T> extends Button<T> {
> ...
> public AjaxButton(String id, final Form<T> form)
> ...
> onSubmit(AjaxRequestTarget target, Form<?> form)
> ...
> }
>
> so that the onSubmit method can be overrritten like
>
> @Override
> onSubmit(AjaxRequestTarget target, Form<X> form) {
> X modelObject = form.getModelObject();
> }
>
> Currently the situation is
>
> @Override
> onSubmit(AjaxRequestTarget target, Form<?> form) {
> Object modelObject = form.getModelObject();
> }
>
> and a typecat is needed.
>
> Stefan
>