> in the end it will be the panel-solution I think.
> but is there a way to diable the check?

Not really for those components. Though if you take a look at their
sources, they are not real difficult components. TextArea for
instance:

public class TextArea extends AbstractTextComponent
{
        public TextArea(final String id)
        {
                super(id);
        }

        public TextArea(final String id, final IModel model)
        {
                super(id, model);
        }

        protected final void onComponentTagBody(final MarkupStream markupStream,
                        final ComponentTag openTag)
        {
                checkComponentTag(openTag, "textarea");
                replaceComponentTagBody(markupStream, openTag, getValue());
        }
}

If you just create your own class based on this, and remove the
checkComponentTag line, you have what you want. Or you could even do
something like this:

        public class TextAreaOrHiddenField extends AbstractTextComponent
        {
                private boolean isHiddenField;

                public TextAreaOrHiddenField(final String id, final IModel 
model)
                {
                        super(id, model);
                }

                @Override
                protected void onComponentTag(ComponentTag tag)
                {
                        if (!isHiddenField)
                        {
                                tag.setName("textarea");
                        }
                        else
                        {
                                tag.setName("input");
                                tag.put("type", "hidden");
                                tag.put("value", getValue());
                        }

                        super.onComponentTag(tag);
                }

                protected final void onComponentTagBody(final MarkupStream 
markupStream,
                                final ComponentTag tag)
                {
                        if (!isHiddenField)
                        {
                                replaceComponentTagBody(markupStream, tag, 
getValue());
                        }
                        else
                        {
                                super.onComponentTagBody(markupStream, tag);
                        }
                }
        }


Eelco

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to