headerPanel:session:session:loginForm:email

this textfield? has a null model, so wicket cannot push the submitted value.

-igor

On Tue, Jun 1, 2010 at 11:04 AM, Todd Nine <[email protected]> wrote:
> Ok, I solved the initial problem.  I didn't specify a container for the
> fragment, I missed that in the examples.  I changes my template to contain
> this extra div.
>
>
> <div wicket:id="session"></div>
>
> Then I specify my panels with
>
> if(session.isSignedIn()){
> add(new LogoutFragment("session", "logout", this));
> }else{
> add(new LoginFragment("session", "login", this));
> }
>
> Everything is rendering, but if I try to submit my form, I receive this
> error
>
> WicketMessage: Method onFormSubmitted of interface
> org.apache.wicket.markup.html.form.IFormSubmitListener targeted at component
> [MarkupContainer [Component id = loginForm]] threw an exception
>
> Root cause:
>
> java.lang.IllegalStateException: Attempt to set model object on null model
> of component: headerPanel:session:session:loginForm:email
>     at
> org.apache.wicket.Component.setDefaultModelObject(Component.java:3033)
>     at
> org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java:1168)
>     at
> org.apache.wicket.markup.html.form.Form$FormModelUpdateVisitor.component(Form.java:227)
>     at
> org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:514)
>     at
> org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)
>     at
> org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrder(FormComponent.java:465)
>     at
> org.apache.wicket.markup.html.form.Form.internalUpdateFormComponentModels(Form.java:2081)
>     at
> org.apache.wicket.markup.html.form.Form.updateFormComponentModels(Form.java:2049)
>     at org.apache.wicket.markup.html.form.Form.process(Form.java:1004)
>     at org.apache.wicket.markup.html.form.Form.process(Form.java:931)
>     at
> org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:896)
>
> If I have my form in it's own panel it seems to work.  I've changed it's
> paret class to to be the following
>
> public class LoginForm extends Form<LoginForm>
>
> Any ideas?
>
> Thanks,
> Todd
>
>
>
> On 2 June 2010 05:15, Todd Nine <[email protected]> wrote:
>
>> Sorry, forgot that. 1.4.9
>>
>>
>> On 2 June 2010 03:03, Jeremy Thomerson <[email protected]> wrote:
>>
>>> what version of wicket?
>>>
>>> On Tue, Jun 1, 2010 at 3:37 AM, Todd Nine <[email protected]>
>>> wrote:
>>>
>>> > Hi all,
>>> >  I'm new to Wicket, so if I've done something obviously wrong, please
>>> point
>>> > it out.  I have 2 ways the user could log in to our site.  One if via
>>> the
>>> > full page login form, the other is via  quick login in the header.
>>>  Since
>>> > I'll need to gather the same form data in multiple places, I've created
>>> a
>>> > reusable form object below.
>>> >
>>> > http://pastie.org/private/7v1vnmyb4kefamu8q1tnfw
>>> >
>>> > Now, I'm working on my "SessionPanel".  This is the panel at the top
>>> right
>>> > of my header.  If the user is logged in, it shows a logout link.  If
>>> > they're
>>> > an anonymous user, it shows the login form.  I have this for my panel
>>> code.
>>> >
>>> > http://www.pastie.org/private/bw5vvzddtrcruemnobjg
>>> >
>>> > And here is my html
>>> >
>>> > http://www.pastie.org/private/o9gzhxeqfcbu8vpohr1uvw
>>> >
>>> > Whenever I try to render the page, I always receive this error.
>>> >
>>> >
>>> > Root cause:
>>> >
>>> > org.apache.wicket.markup.MarkupException: Expected close tag for
>>> > <wicket:fragment wicket:id="login">
>>> > [markup =
>>> >
>>> >
>>> file:/Users/toddnine/development/aviator-services/logbook/target/classes/com/spidertracks/aviator/logbook/panel/SessionPanel.html
>>> > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
>>> >   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
>>> >
>>> > <html xmlns="http://www.w3.org/1999/xhtml";
>>> > xmlns:wicket="http://wicket.sourceforge.net/"; xml:lang="en" lang="en">
>>> > <body>
>>> > <wicket:panel>
>>> > <wicket:fragment wicket:id="login">
>>> > <form wicket:id="loginForm">
>>> > <p>keep me logged in:
>>> > <input type="checkbox" wicket:id="rememberMe"/>
>>> > </p>
>>> > <p> email: <input type="text" wicket:id="email"/>
>>> > password: <input type="password" wicket:id="password"/>
>>> > <input type="submit" value="Login" />
>>> > </p>
>>> > </form>
>>> > </wicket:fragment>
>>> >
>>> >
>>> > <wicket:fragment wicket:id="logout">
>>> > <p><a href="#" wicket:id="logout">logout</a></p>
>>> > </wicket:fragment>
>>> > </wicket:panel>
>>> > </body>
>>> > </html>, index = 5, current = '<form wicket:id="loginForm">' (line 9,
>>> > column
>>> > 3)]
>>> >    at
>>> >
>>> >
>>> org.apache.wicket.markup.MarkupStream.throwMarkupException(MarkupStream.java:474)
>>> >    at
>>> >
>>> org.apache.wicket.Component.renderClosingComponentTag(Component.java:4318)
>>> >    at org.apache.wicket.Component.renderComponent(Component.java:2627)
>>> >    at
>>> org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1512)
>>> >    at org.apache.wicket.Component.render(Component.java:2450)
>>> >    at
>>> > org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1414)
>>> >    at
>>> >
>>> >
>>> org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1577)
>>> >    at
>>> >
>>> >
>>> org.apache.wicket.MarkupContainer.renderAssociatedMarkup(MarkupContainer.java:675)
>>> >    at
>>> >
>>> >
>>> org.apache.wicket.markup.html.panel.Panel.onComponentTagBody(Panel.java:114)
>>> >    at org.apache.wicket.Component.renderComponent(Component.java:2619)
>>> >
>>> > My XHtml seems well formed, what am I doing wrong?
>>> >
>>> > Thanks,
>>> > Todd
>>> >
>>>
>>>
>>>
>>> --
>>> Jeremy Thomerson
>>> http://www.wickettraining.com
>>>
>>
>>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to