You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Peter Thomas (JIRA)" <ji...@apache.org> on 2007/04/01 07:39:25 UTC

[jira] Reopened: (WICKET-440) wicket:message attribute broken - Unable to find component with id '-message_attr' - 1.3.0 snapshot

     [ https://issues.apache.org/jira/browse/WICKET-440?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Peter Thomas reopened WICKET-440:
---------------------------------


I just tried wicket-1.3.0-incubating-SNAPSHOT.jar - Sun, 01 Apr 2007 00:43:53 GMT

WicketMessage: No get method defined for class: class info.jtrac.wicket.LoginPage$LoginForm expression: -message_attr6

Root cause:

wicket.WicketRuntimeException: No get method defined for class: class info.jtrac.wicket.LoginPage$LoginForm expression: -message_attr6
at wicket.util.lang.PropertyResolver.getGetAndSetter(PropertyResolver.java:320)
at wicket.util.lang.PropertyResolver.getObjectAndGetSetter(PropertyResolver.java:198)
at wicket.util.lang.PropertyResolver.getValue(PropertyResolver.java:85)
at wicket.model.AbstractPropertyModel.getObject(AbstractPropertyModel.java:100)
at wicket.Localizer.substitutePropertyExpressions(Localizer.java:224)
at wicket.Localizer.getString(Localizer.java:180)
at wicket.Localizer.getString(Localizer.java:94)
at wicket.Component.getString(Component.java:1157)
at wicket.Component.getString(Component.java:1144)
at wicket.markup.parser.filter.WicketMessageTagHandler$AttributeLocalizer.onComponentTag(WicketMessageTagHandler.java:169)
at wicket.Component.renderComponentTag(Component.java:2897)
at wicket.Component.renderComponent(Component.java:1670)
at wicket.markup.html.WebComponent.onRender(WebComponent.java:60)
at wicket.Component.render(Component.java:1504)
at wicket.Component.render(Component.java:1470)
at wicket.MarkupContainer.autoAdd(MarkupContainer.java:219)
at wicket.markup.parser.filter.WicketMessageTagHandler.resolve(WicketMessageTagHandler.java:195)
at wicket.MarkupContainer.renderNext(MarkupContainer.java:1186)
at wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1329)
at wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1264)
at wicket.markup.html.form.Form.onComponentTagBody(Form.java:828)
at wicket.Component.renderComponent(Component.java:1679)
at wicket.MarkupContainer.onRender(MarkupContainer.java:1274)
at wicket.markup.html.form.Form.onRender(Form.java:914)
at wicket.Component.render(Component.java:1504)
at wicket.MarkupContainer.renderNext(MarkupContainer.java:1159)
at wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1329)
at wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1264)
at wicket.Component.renderComponent(Component.java:1679)
at wicket.MarkupContainer.onRender(MarkupContainer.java:1274)
at wicket.Component.render(Component.java:1504)
at wicket.MarkupContainer.renderNext(MarkupContainer.java:1159)
at wicket.MarkupContainer.renderAll(MarkupContainer.java:1291)
at wicket.Page.onRender(Page.java:983)
at wicket.Component.render(Component.java:1504)
at wicket.Page.renderPage(Page.java:388)
at wicket.request.target.component.BookmarkablePageRequestTarget.respond(BookmarkablePageRequestTarget.java:225)
at wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:102)
at wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:992)
at wicket.RequestCycle.step(RequestCycle.java:1059)
at wicket.RequestCycle.steps(RequestCycle.java:1138)
at wicket.RequestCycle.request(RequestCycle.java:474)
at wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:248)
at wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:122)

=====================================================

Markup is <input type="submit" wicket:message="value:submit"/>

Maybe this is the right time to also ask about the change in IStringResourceLoader.  Here is a snip from my Application:

        // delegate wicket i18n support to spring i18n
        getResourceSettings().addStringResourceLoader(new IStringResourceLoader() {
            public String loadStringResource(Class clazz, String key, Locale locale, String style) {
                try {
                    return applicationContext.getMessage(key, null, locale);
                } catch(Exception e) {
                    // have to return null so that wicket can try to resolve again
                    // e.g. without prefixing component id etc.
                    return null;
                }
            }
            public String loadStringResource(Component component, String key) {
                Class clazz = component == null ? null : component.getClass();
                return loadStringResource(clazz, key, Session.get().getLocale(), null);
            }            
        });

============================

I'm wondering about the new method loadStringResource(Component component, String key) because it does not take a Locale parameter.  So I am doing Session.get().getLocale() - is this ok - or do you think it may impact performance in case this happens for resolving of all message instances.

> wicket:message attribute broken - Unable to find component with id '-message_attr' - 1.3.0 snapshot
> ---------------------------------------------------------------------------------------------------
>
>                 Key: WICKET-440
>                 URL: https://issues.apache.org/jira/browse/WICKET-440
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.3
>            Reporter: Peter Thomas
>         Assigned To: Igor Vaynberg
>            Priority: Critical
>             Fix For: 1.3
>
>
> I'm using wicket-1.3.0-incubating-SNAPSHOT.jar Sat, 31 Mar 2007 16:45:30 GMT
> The error I get is:
> WicketMessage: Unable to find component with id '-message_attr' in [MarkupContainer [...]]
> The markup is:
> <input type="submit" wicket:message="value=search"/>
> This is kind of a blocker for me, I have this problem on almost every page.  Let me know if you need more information.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.