[ https://issues.apache.org/jira/browse/WICKET-700?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michel Wichers reopened WICKET-700: ----------------------------------- I have just forgotten to add the Palette to a Form - the issue i was trying to describe can be reproduced by the latest quickstart i will add. The main problem seems to be that the Palette does not work if you add a CompoundPropertyModel to the Form. e.g.: List<ColumnLabel> columnChoices = new ArrayList<ColumnLabel>(); String[] strings = { "LabelA", "LabelB", "LabelB", "LabelC", "LabelA" }; for (String string : strings) { ColumnLabel columnLabel = new ColumnLabel(string); columnChoices.add(columnLabel); } TestModel testModel = new TestModel(columnChoices); IModel model = new Model(testModel); IChoiceRenderer renderer = new ChoiceRenderer("label", "label"); Form f = new Form("form", new CompoundPropertyModel(model)); Palette palette = new Palette("paletteID", new PropertyModel(testModel, "selection"), new PropertyModel(testModel, "columnChoices"), renderer, 10, true); f.add(palette); add(f); does not work and comes up with the following Exception: WicketMessage: No get method defined for class: class org.apache.wicket.quickstart.TestModel expression: recorder Root cause: org.apache.wicket.WicketRuntimeException: No get method defined for class: class org.apache.wicket.quickstart.TestModel expression: recorder at org.apache.wicket.util.lang.PropertyResolver.getGetAndSetter(PropertyResolver.java:391) at org.apache.wicket.util.lang.PropertyResolver.getObjectAndGetSetter(PropertyResolver.java:266) at org.apache.wicket.util.lang.PropertyResolver.getPropertyClass(PropertyResolver.java:144) at org.apache.wicket.model.AbstractPropertyModel.getObjectClass(AbstractPropertyModel.java:199) at org.apache.wicket.markup.html.form.AbstractTextComponent.getModelType(AbstractTextComponent.java:119) at org.apache.wicket.markup.html.form.AbstractTextComponent.onBeforeRender(AbstractTextComponent.java:107) at org.apache.wicket.extensions.markup.html.form.palette.component.Recorder.onBeforeRender(Recorder.java:76) at org.apache.wicket.Component.beforeRender(Component.java:846) at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1449) at org.apache.wicket.Component.beforeRender(Component.java:856) at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1449) at org.apache.wicket.Component.beforeRender(Component.java:856) at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1449) at org.apache.wicket.Component.beforeRender(Component.java:856) at org.apache.wicket.Page.renderPage(Page.java:885) at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.respond(BookmarkablePageRequestTarget.java:225) at org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:103) at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1037) at org.apache.wicket.RequestCycle.step(RequestCycle.java:1107) at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1176) at org.apache.wicket.RequestCycle.request(RequestCycle.java:499) at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:257) at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:127) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) at org.mortbay.jetty.Server.handle(Server.java:281) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:751) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475) > Palette, Recorder Issue > ----------------------- > > Key: WICKET-700 > URL: https://issues.apache.org/jira/browse/WICKET-700 > Project: Wicket > Issue Type: Bug > Components: wicket-extensions > Affects Versions: 1.3.0-beta2 > Reporter: Michel Wichers > Attachments: wicket-quickstart.tar.gz.tgz > > > Hi All! > I experienced a Problem with the Palette component in the Wicket version > 1.3.0-SNAPSHOT. When I use a PropertyModel as Choices for the Palette, I > get the following Error (see below). This Problem did'n exist in the > 1.2.6-SNAPSHORT. > I attached an ZIP of the wicket-quickstart where I used the Palette in > the Index.java Class. > ERROR: > WicketMessage: Could not find Form parent for [MarkupContainer > [Component id = recorder, page = org.apache.wicket.quickstart.Index, > path = 0:paletteID:recorder.Palette$1, isVisible = true, isVersioned = > false]] > Root cause: > org.apache.wicket.WicketRuntimeException: Could not find Form parent for > [MarkupContainer [Component id = recorder, page = > org.apache.wicket.quickstart.Index, path = > 0:paletteID:recorder.Palette$1, isVisible = true, isVersioned = false]] > at > org.apache.wicket.markup.html.form.FormComponent.getForm(FormComponent.j > ava:565) > at > org.apache.wicket.extensions.markup.html.form.palette.component.Recorder > .onBeforeRender(Recorder.java:78) > at org.apache.wicket.Component.beforeRender(Component.java:846) > at > org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer > .java:1449) > at org.apache.wicket.Component.beforeRender(Component.java:856) > at > org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer > .java:1449) > at org.apache.wicket.Component.beforeRender(Component.java:856) > at org.apache.wicket.Page.renderPage(Page.java:885) > at > org.apache.wicket.request.target.component.BookmarkablePageRequestTarget > .respond(BookmarkablePageRequestTarget.java:225) > at > org.apache.wicket.request.AbstractRequestCycleProcessor.respond(Abstract > RequestCycleProcessor.java:103) > at > org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java > :1037) > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1107) > at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1176) > at org.apache.wicket.RequestCycle.request(RequestCycle.java:499) > at > org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:257 > ) > at > org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java: > 127) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHan > dler.java:1065) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:1 > 85) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > at org.mortbay.jetty.Server.handle(Server.java:285) > at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457) > at > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConne > ction.java:751) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357) > at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: > 329) > at > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.ja > va:475) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.