hi martin, that static block need not be copied to make it work,since it's a static block, it will get executed when the Panel class gets loaded, the Panel class will get loaded by PanelMarkupSourcingStrategy itself since it's referring a constant of panel . yes but i agree not a very nice code flow so should be improved ,i always used to think they are doing this in a very weird way :-)
On Tue, May 14, 2013 at 1:48 AM, Martin Grigorov <[email protected]>wrote: > Hi, > > > On Mon, May 13, 2013 at 10:02 PM, Paul Bors <[email protected]> wrote: > > > Get rid of your newMarkupSourcingStrategy() override and place the HTML > > right next to the Java source code and you'll be fine. > > > > This will not work because usually Link component has no its own markup > file. > > See Panel.java. It has: > > static > { > // register "wicket:panel" > WicketTagIdentifier.registerWellKnownTagName(PANEL); > } > > Just add this to your class and it should work. > > I think this is a bug in Wicket though - this piece of code should be > executed by PanelMarkupSourcingStrategy, not by Panel itself. > > Feel free to file a bug report. > > > > > > If you do not like the default location of the HTML next to your Java > > classes, then read Chapter 4 of the Wicket user guide you can get for > free > > from wicket's website at: > > http://wicket.apache.org/learn/books/ > > > > ~ Thank you, > > Paul Bors > > > > -----Original Message----- > > From: Andy Van Den Heuvel [mailto:[email protected]] > > Sent: Monday, May 13, 2013 2:04 PM > > To: [email protected] > > Subject: Unknown tag name with Wicket namespace: 'panel' > > > > I get an exception and it's not very clear to me what I'm doing wrong. > > > > This is the exception: > > Last cause: Unknown tag name with Wicket namespace: 'panel'. Might be you > > haven't installed the appropriate resolver? '<wicket:panel>' (line 3, > > column > > 2) > > > > I'm trying to override the markupSourcingStrategy because i want this > class > > to have it's own html file. Anybody an idea? I use wicket-core 6.7.0. > > > > > > This is my java file: > > public class ExtBookMarkablePageLink<T> extends BookmarkablePageLink<T> { > > > > private final Component label; > > public <C extends Page> ExtBookMarkablePageLink(String id, Class<C> > > pageClass) { > > this(id, pageClass, new PageParameters()); } public <C extends Page> > > ExtBookMarkablePageLink(String id, Class<C> pageClass, final > PageParameters > > parameters) { super(id, pageClass, parameters); add(label = > > newLabel("label")); } > > protected Component newLabel(final String markupId) { > > return new Label(markupId, new > > Model<String>("")).setRenderBodyOnly(true); > > } > > > > @Override > > protected IMarkupSourcingStrategy newMarkupSourcingStrategy() { return > new > > PanelMarkupSourcingStrategy(true); > > } > > > > public ExtBookMarkablePageLink<T> setLabel(IModel<?> label) { > > this.label.setDefaultModel(label); > > return this; > > } > > > > } > > > > and this my html file: > > <!doctype html> > > <html xmlns:wicket="http://wicket.apache.org"> > > <wicket:panel> > > <span wicket:id="label"></span> > > </wicket:panel> > > </html> > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [email protected] > > For additional commands, e-mail: [email protected] > > > > > > > -- > Martin Grigorov > Wicket Training & Consulting > http://jWeekend.com <http://jweekend.com/> > -- regards, Vineet Semwal
