Sorry, override isTransparentResolver. The set method is only on Border. -- Jeremy Thomerson http://www.wickettraining.com
On Sun, Mar 21, 2010 at 8:00 PM, Steve Mactaggart < steve.mactagg...@gmail.com> wrote: > Excellent, > > My simple test now seems to work if I do a getForm(). > Although I really like the thought of setTransparentResolver(), but as > with Josh, I can't find it in 1.4.7.. > > I also have this problem with a Border object, I'll have to look into > seeing if I can get around the same problem by doing a getBorder(). > > Steve > > On Mon, Mar 22, 2010 at 11:40 AM, Jeremy Thomerson > <jer...@wickettraining.com> wrote: > > you need to be adding the components to the form. you're currently > adding > > them to the page itself. the component hierarchy is thus broken. on > your > > child page, either do getForm().add(foo) [you'll need to expose a getForm > > method that returns the form from the parent page] or else on your parent > > page (BaseEditPage), setTransparentResolver(true) on the form and add the > > form children to the page then. > > > > -- > > Jeremy Thomerson > > http://www.wickettraining.com > > > > > > > > On Sun, Mar 21, 2010 at 7:35 PM, Steve Mactaggart < > st...@whitesquaresoft.com > >> wrote: > > > >> Hi all, > >> > >> Before I go to far trying to prove I have a bug, I thought i'd crowd > >> source an answer. > >> > >> We have a lot of "Edit" pages that have a lot of simmilar structure, > >> and what I wanted to do is create a BaseEditPage that contains the > >> form, the save/cancel buttons, some layout stuff and a FeedbackPanel, > >> then extend it into UserEditPage that just adds the fields that are > >> editable. > >> > >> I can get this working as long as I put all the HTML into the > >> UserEditPage.html file. > >> > >> Lets make this simple. Lets say that BaseEditPage extends > >> StandardPage, where StandardPage provides a standard header, footer > >> and so all we have to worry about in the BaseEditPage is the "content" > >> of the page. > >> > >> My BaseEditPage html will look like: > >> > >> <wicket:extend> > >> <form wicket:id="form"> > >> <div wicket:id="feedback"/> > >> <wicket:child/> > >> > >> <input type="button" wicket:id="save"/> > >> <input type="button" wicket:id="cancel"/> > >> </form> > >> </wicket:extend> > >> > >> And the BaseEditPage.java is like: > >> > >> public class BaseEditPage extends StandardPage { > >> > >> Form form; > >> SubmitLink saveButton; > >> SubmitLink cancelButton; > >> FeedbackPanel feedbackPanel; > >> > >> public BaseEditPage() { > >> super(); > >> > >> form = new Form("form"); > >> > >> saveButton = new SubmitLink("save"); //onSubmit excluded to keep > >> example simple. > >> cancelButton = new SubmitLink("cancel"); > >> > >> feedbackPanel = new FeedbackPanel("feedback"); > >> > >> add(form); > >> > >> form.add(saveButton); > >> form.add(cancelButton); > >> form.add(feedbackPanel); > >> } > >> } > >> > >> Now I create my UserEditPage > >> > >> public UserEditPage extends BaseEditPage { > >> > >> RequiredTextField username; > >> > >> public UserEditPage() { > >> username = new RequiredTextField<String>("username", new > >> Model("test-username")); > >> > >> add(username); > >> } > >> > >> } > >> > >> And create the HTML for the page like: > >> <wicket:extend> > >> Username: <input type="text" wicket:id="username"/> > >> </wicket:extend> > >> > >> > >> When I run this simple example I get a messsage stating: > >> Unable to find component with id 'username' in [MarkupContainer > >> [Component id = _extend4]]. > >> > >> My guess is this is an issue processing the sub class due to the fact > >> that the <form> tag is still open. > >> > >> Is there any way to do this, or is this outside the scope of Wicket? > >> > >> Cheers, > >> Steve > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > >> For additional commands, e-mail: users-h...@wicket.apache.org > >> > >> > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > For additional commands, e-mail: users-h...@wicket.apache.org > >