How about setOutputMarkupPlaceholderTag(true)?

On Mon, Dec 8, 2008 at 9:20 PM, Jeremy Thomerson
<[EMAIL PROTECTED]> wrote:
>
> There's another method that you need to set true on construction - I can't 
> remember the exact name now, but it's something like 
> setTransparentPlaceholder or something.  Basically it's because the feedback 
> panel isn't visible on the first rendering because there's no messages.  
> Therefore, it's not in the HTML.  This puts an empty placeholder in it's 
> place so that it can be added to ajax responses.
>
>
> Jeremy Thomerson
> http://www.wickettraining.com
> -- sent from a wireless device
>
>
> -----Original Message-----
> From: novotny <[EMAIL PROTECTED]>
> Sent: Monday, December 08, 2008 7:43 PM
> To: [email protected]
> Subject: Component with id [[feedback]] a was not found while trying to 
> perform markup update. Make sure you called component.setOutputMarkupId(true) 
> on the component whose markup you are trying to update.
>
>
> Hi,
>
> I have a modal dialog (a stateless form) with a feedback panel. The code
> looks like:
>
> public final class SignInForm extends StatelessForm {
>
> private FeedbackPanel feedback;
>
> public SignInForm(final String id) {
>            // sets a compound model on this form, every component without
> an
>            // explicit model will use this model too
>            super(id, new CompoundPropertyModel(new ValueMap()));
>
>            feedback = new FeedbackPanel("feedback");
>            feedback.setOutputMarkupId(true);
>            feedback.setMarkupId("feedback");
>            add(feedback);
>
>            add(new AjaxButton("submit", this) {
>
>                protected void onSubmit(AjaxRequestTarget target, Form<?>
> form) {
>                        .....
>                        error(getLocalizer().getString("exception.login",
> this,
>                                "Illegal username password combo"));
>                        feedback.setOutputMarkupId(true);
>                        feedback.setMarkupId("feedback");
>                        target.addComponent(feedback);
>                }
>
>                @Override
>                protected void onError(AjaxRequestTarget target, Form<?>
> form)
>                {
>                    // repaint the feedback panel so errors are shown
>                    super.onError(target, form);
>                    feedback.setOutputMarkupId(true);
>                    feedback.setMarkupId("feedback");
>                    target.addComponent(feedback);
>                }
>            });
>
> and my HTML looks like:
>
> <form id="signInForm" method="post" wicket:id="signInForm">
>        <div id="feedback" wicket:id="feedback" class="error"></div>
>        <fieldset>
>            <legend>Sign In to Your Account</legend>
>            <ol>
>                <li>
>                    <label>Username</label>
>                    <input type="text" id="username" wicket:id="username"/>
>                </li>
>                <li>
>                    <label>Password</label>
>                    <input type="password" id="password"
> wicket:id="password"/>
>                </li>
>            </ol>
>            <button wicket:id="submit">Sign In</button>
>        </fieldset>
>    </form>
>
> but it never renders the feedback panel. I get:
>  Component with id [[feedback]] a was not found while trying to perform
> markup update. Make sure you called component.setOutputMarkupId(true) on the
> component whose markup you are trying to update.
> in my "Wicket Ajax Debug" window...  what can I be missing?
>
> Thanks, Jason
> --
> View this message in context: 
> http://www.nabble.com/Component-with-id---feedback---a-was-not-found-while-trying-to-perform-markup-update.-Make-sure-you-called-component.setOutputMarkupId%28true%29-on-the-component-whose-markup-you-are-trying-to-update.-tp20907226p20907226.html
> Sent from the Wicket - User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> 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]
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to