instead of using fragments you can use panels, which would make the
editors reusable across projects/pages.

as far as "why" the checks are there...

add(new TextField("foo"));
<div wicket:id="foo"/>

will end up with

<div wicket:id="foo" value="bar"/> <== not a very useful textbox

wicket does not mutate markup by default, so it will not mutate div
tag to input tag.

it also adds a level of error checking, making sure you add the right
components to the right places.

-igor


On Jan 20, 2008 1:50 PM, James Carman <[EMAIL PROTECTED]> wrote:
> So, the key is to use Fragments?  This is very similar to how we did
> it in Trails.  I would like to make this somewhat reusable in other
> projects so that they can define their own "editors" without having to
> change this framework code.  I'm somewhat new to Wicket, so maybe I
> just don't understand this all yet, but it seems to me like this
> framework will only be able to use Fragments defined within the
> current markup (the BeanEditPanel.html file).  Is that true?  In
> Trails, we had the concept of a "component address" that  you would
> use to locate the editor component you want to use.  So, it could be
> defined in another page supplied by the user.  Trails comes with a
> default page containing all of its editors as "Blocks" (similar to a
> Fragment).  The default behavior returns components from this page as
> the editors for properties.  However, any client application could
> define their own editor component blocks on some page and use those
> also.
>
>
> On 1/20/08, Gerolf Seitz <[EMAIL PROTECTED]> wrote:
> > have you seen Al's "Bean Editor" [0]?
> > this might give you a hint in the right direction.
> >
> > regards,
> >   gerolf
> >
> > [0] http://herebebeasties.com/2007-08-17/wicket-bean-editor/
> >
> > On Jan 20, 2008 10:17 PM, James Carman <[EMAIL PROTECTED]> wrote:
> >
> > > Is there any reason that components require that they be applied to
> > > specific tag types in the markup files?  I'm writing a little utility
> > > which calculates at runtime what "editor" to use based on the property
> > > type (a la Trails).  So, I have no idea what type of tag to use.  I
> > > thought I'd just do this (the actual component is a TextField in this
> > > case):
> > >
> > > <div wicket:id="editor" />
> > >
> > > But, I get the following error message:
> > >
> > > org.apache.wicket.markup.MarkupException: Component editor must be
> > > applied to a tag of type 'input', not '<div wicket:id="editor">' (line
> > > 0, column 0)
> > >
> > > If I change my markup to:
> > >
> > > <input type="text" wicket:id="editor" />
> > >
> > > then it works.  But, suppose a certain property requires a more
> > > complicated "editor" component (maybe rich text, so I'd use something
> > > like FCKEditor).  Would that component be complaining that it's being
> > > applied to an <input> tag?  Is there any generic way to do this so
> > > that all components will be happy at runtime with the markup?  Is
> > > there any way to relax that restriction?
> > >
> > > James
> > >
> > > ---------------------------------------------------------------------
> > > 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]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to