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]
