yes then you give the component for which it can get a localizer.
But i fixed it already in trunk anyway. toString() won't try to construct
the message
johan
On 8/30/07, Martin Bednář <[EMAIL PROTECTED]> wrote:
>
> Johan Compagner napsal(a):
> > thats odd
> > on your production machine you have enabled debugging:
> > if (log.isDebugEnabled())
> > {
> > log.debug("detaching " + this + " for requestCycle " +
> > RequestCycle.get());
> > }
> >
> > and that code is not executed for development machine?
> > Thats a bit the reverse what it should be..
> >
> > But the problem is that StringResourceModel.toString() calls getString()
> > thats wrong it shouldn't do that.
> >
>
> OK, what's the preferred way to localize data in ListView.populateItem
>
> I found this on wicket wiki item.add(new Label("name", new
> StringResourceModel(wrapper.getValue(), null, null)));
> after changing to new StringResourceModel(wrapper.getValue(), this,
> null) it's working on production server too.
>
> Martin
> > johan
> >
> >
> > On 8/29/07, Martin Bednář <[EMAIL PROTECTED]> wrote:
> >
> >> I use code below, it works on my development machine (linux, jetty6)
> but
> >> don't work on production server (linux,tomcat-5, tomcat 5.5).
> >> Any advice ?
> >>
> >> public LanguageCheckBoxPanel(String id) {
> >> super(id);
> >> for (LanguageSelectOption languageOption :
> >> LanguageModel.languages) {
> >> languages.add(new CheckBoxLanguageWrapper(languageOption));
> >> }
> >>
> >> add(new ListView("languageList", languages) {
> >> protected void populateItem(ListItem item) {
> >> CheckBoxLanguageWrapper wrapper =
> >> (CheckBoxLanguageWrapper) item
> >> .getModelObject();
> >>
> >> //On this line code fails
> >> item.add(new Label("name", new
> StringResourceModel(wrapper
> >> .getValue(), null, null)));
> >>
> >> item.add(new CheckBox("check", new
> PropertyModel(wrapper,
> >> "selected")));
> >> }
> >> });
> >>
> >> }
> >>
> >>
> >> Stack trace
> >>
> >> WicketMessage: Exception in rendering component: [Component id = name,
> >> page = cz.triax.marathon.statistics.BatchPrintPage, path =
> >> 2:navomaticBorder:form:languagePanel:languageList:0:name.Label,
> >> isVisible = true, isVersioned = false]
> >>
> >> Root cause:
> >>
> >> java.lang.IllegalStateException: No localizer has been set at
> >> wicket.model.StringResourceModel.getString(StringResourceModel.java
> :397)
> >> at
> >> wicket.model.StringResourceModel.toString(StringResourceModel.java:464)
> >> at java.lang.String.valueOf(String.java:2827) at
> >> java.lang.StringBuffer.append(StringBuffer.java:219) at
> >> wicket.model.AbstractDetachableModel.attach(
> AbstractDetachableModel.java
> >> :60)
> >> at
> >> wicket.model.AbstractDetachableModel.getObject(
> >> AbstractDetachableModel.java:101)
> >> at wicket.Component.getModelObject(Component.java:983) at
> >> wicket.Component.getModelObjectAsString(Component.java:998) at
> >> wicket.markup.html.basic.Label.onComponentTagBody(Label.java:113) at
> >> wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.markup.html.WebComponent.onRender(WebComponent.java:61) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:917)
> >> at wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.markup.html.list.ListView.renderItem(ListView.java:676) at
> >> wicket.markup.html.list.ListView.onRender(ListView.java:637) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at
> >> wicket.MarkupContainer.renderAssociatedMarkup(MarkupContainer.java:571)
> >> at wicket.markup.html.panel.Panel.onComponentTagBody(Panel.java:108) at
> >> wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:917)
> >> at wicket.markup.html.form.Form.onComponentTagBody(Form.java:779) at
> >> wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.markup.html.form.Form.onRender(Form.java:850) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.markup.html.border.Border.renderBodyComponent(Border.java
> :300)
> >> at wicket.markup.html.border.Border.resolve(Border.java:215) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1345) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.markup.html.border.Border.renderBodyComponent(Border.java
> :300)
> >> at wicket.markup.html.border.Border.resolve(Border.java:215) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1345) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at
> >> wicket.MarkupContainer.renderAssociatedMarkup(MarkupContainer.java:571)
> >> at wicket.markup.html.border.Border.onComponentTagBody(Border.java:244)
> >> at wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at
> >> wicket.MarkupContainer.renderAssociatedMarkup(MarkupContainer.java:571)
> >> at wicket.markup.html.border.Border.onComponentTagBody(Border.java:244)
> >> at wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:917)
> >> at wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderAll(MarkupContainer.java:944) at
> >> wicket.Page.onRender(Page.java:860) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.Page.renderPage(Page.java:408) at
> >> wicket.protocol.http.WebRequestCycle.redirectTo(WebRequestCycle.java
> :160)
> >> at
> >> wicket.request.target.component.PageRequestTarget.respond(
> >> PageRequestTarget.java:60)
> >> at
> >> wicket.request.compound.DefaultResponseStrategy.respond(
> >> DefaultResponseStrategy.java:49)
> >> at
> >> wicket.request.compound.AbstractCompoundRequestCycleProcessor.respond(
> >> AbstractCompoundRequestCycleProcessor.java:66)
> >> at wicket.RequestCycle.doProcessEventsAndRespond(RequestCycle.java:902)
> >> at wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:929)
> at
> >> wicket.RequestCycle.step(RequestCycle.java:1010) at
> >> wicket.RequestCycle.steps(RequestCycle.java:1084) at
> >> wicket.RequestCycle.request(RequestCycle.java:454) at
> >> wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:219) at
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at
> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> >> ApplicationFilterChain.java:237)
> >> at
> >> org.apache.catalina.core.ApplicationFilterChain.doFilter(
> >> ApplicationFilterChain.java:157)
> >> at
> >> org.apache.catalina.core.StandardWrapperValve.invoke(
> >> StandardWrapperValve.java:214)
> >> at
> >> org.apache.catalina.core.StandardValveContext.invokeNext(
> >> StandardValveContext.java:104)
> >> at
> >> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> >> :520)
> >> at
> >> org.apache.catalina.core.StandardContextValve.invokeInternal(
> >> StandardContextValve.java:198)
> >> at
> >> org.apache.catalina.core.StandardContextValve.invoke(
> >> StandardContextValve.java:152)
> >> at
> >> org.apache.catalina.core.StandardValveContext.invokeNext(
> >> StandardValveContext.java:104)
> >> at
> >> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> >> :520)
> >> at
> >> org.apache.catalina.core.StandardHostValve.invoke(
> StandardHostValve.java
> >> :137)
> >> at
> >> org.apache.catalina.core.StandardValveContext.invokeNext(
> >> StandardValveContext.java:104)
> >> at
> >> org.apache.catalina.valves.ErrorReportValve.invoke(
> ErrorReportValve.java
> >> :118)
> >> at
> >> org.apache.catalina.core.StandardValveContext.invokeNext(
> >> StandardValveContext.java:102)
> >> at
> >> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> >> :520)
> >> at
> >> org.apache.catalina.core.StandardEngineValve.invoke(
> >> StandardEngineValve.java:109)
> >> at
> >> org.apache.catalina.core.StandardValveContext.invokeNext(
> >> StandardValveContext.java:104)
> >> at
> >> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java
> >> :520)
> >> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java
> :929)
> >> at
> >> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
> >> at
> >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
> :799)
> >> at
> >>
> >>
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection
> >> (Http11Protocol.java:705)
> >> at
> >> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
> :577)
> >> at
> >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> >> ThreadPool.java:683)
> >> at java.lang.Thread.run(Thread.java:619)
> >>
> >> Complete stack:
> >>
> >> wicket.WicketRuntimeException: Exception in rendering component:
> >> [Component id = name, page =
> >> cz.triax.marathon.statistics.BatchPrintPage, path =
> >> 2:navomaticBorder:form:languagePanel:languageList:0:name.Label,
> >> isVisible = true, isVersioned = false] at
> >> wicket.Component.renderComponent(Component.java:1739) at
> >> wicket.markup.html.WebComponent.onRender(WebComponent.java:61) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:917)
> >> at wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.markup.html.list.ListView.renderItem(ListView.java:676) at
> >> wicket.markup.html.list.ListView.onRender(ListView.java:637) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at
> >> wicket.MarkupContainer.renderAssociatedMarkup(MarkupContainer.java:571)
> >> at wicket.markup.html.panel.Panel.onComponentTagBody(Panel.java:108) at
> >> wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:917)
> >> at wicket.markup.html.form.Form.onComponentTagBody(Form.java:779) at
> >> wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.markup.html.form.Form.onRender(Form.java:850) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.markup.html.border.Border.renderBodyComponent(Border.java
> :300)
> >> at wicket.markup.html.border.Border.resolve(Border.java:215) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1345) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.markup.html.border.Border.renderBodyComponent(Border.java
> :300)
> >> at wicket.markup.html.border.Border.resolve(Border.java:215) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1345) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at
> >> wicket.MarkupContainer.renderAssociatedMarkup(MarkupContainer.java:571)
> >> at wicket.markup.html.border.Border.onComponentTagBody(Border.java:244)
> >> at wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at
> >> wicket.MarkupContainer.renderAssociatedMarkup(MarkupContainer.java:571)
> >> at wicket.markup.html.border.Border.onComponentTagBody(Border.java:244)
> >> at wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:982)
> >> at wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:917)
> >> at wicket.Component.renderComponent(Component.java:1712) at
> >> wicket.MarkupContainer.onRender(MarkupContainer.java:927) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.MarkupContainer.renderNext(MarkupContainer.java:1334) at
> >> wicket.MarkupContainer.renderAll(MarkupContainer.java:944) at
> >> wicket.Page.onRender(Page.java:860) at
> >> wicket.Component.render(Component.java:1526) at
> >> wicket.Page.renderPage(Page.java:408) at
> >> wicket.protocol.http.WebRequestCycle.redirectTo(WebRequestCycle.java
> :160)
> >> at
> >> wicket.request.target.component.PageRequestTarget.respond(
> >> PageRequestTarget.java:60)
> >> at
> >> wicket.request.compound.DefaultResponseStrategy.respond(
> >> DefaultResponseStrategy.java:49)
> >> at
> >> wicket.request.compound.AbstractCompoundRequestCycleProcessor.respond(
> >> AbstractCompoundRequestCycleProcessor.java:66)
> >> at wicket.RequestCycle.doProcessEventsAndRespond(RequestCycle.java:902)
> >> at wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:929)
> at
> >> wicket.RequestCycle.step(RequestCycle.java:1010) at
> >> wicket.RequestCycle.steps(RequestCycle.java:1084) at
> >> wicket.RequestCycle.request(RequestCycle.java:454) at
> >> wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:219)
> >>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> 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]
>
>