there is also a bug report in jira for formchoice..behavior, see if
that affects you...
-igor
On Thu, Mar 20, 2008 at 11:08 AM, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> in onupdate you should be calling getmodelobject()
>
> -igor
>
>
> On Thu, Mar 20, 2008 at 10:55 AM, Zhubin Salehi
>
>
> <[EMAIL PROTECTED]> wrote:
> > OK, now I changed my code to this:
> >
> > add(nanp = new RadioChoice("nanp", new PropertyModel(this,
> > "phoneNumber.nanp"), Arrays.asList(new String[] {
> > "true", "false" })));
> > nanp.add(new AjaxFormComponentUpdatingBehavior("onclick") {
> >
> >
> > private static final long serialVersionUID =
> > -1406454064553153207L;
> >
> > @Override
> >
> > protected void onUpdate(AjaxRequestTarget target) {
> > nanp.processInput();
> > target.addComponent(areaCode);
> > target.addComponent(countryDialingCode);
> > target.addComponent(routingDialingCode);
> > }
> > });
> >
> > What I don't understand is that when I click on a radio button and
> > onUpdate() gets called, RadioChoice.convertedInput is null.
> >
> >
> > -----Original Message-----
> > From: Zhubin Salehi [mailto:[EMAIL PROTECTED]
> >
> > Sent: Thursday, March 20, 2008 1:17 PM
> > To: [email protected]
> >
> >
> > Subject: RE: Problem with using RadioGorup and AjaxEventBehavior in a
> > FormComponentPanel
> >
> > I added the AjaxFormChoiceComponentUpdatingBehavior to Radio objects and I
> > got a runtime exception (can only be added to...), then I added it to the
> > RadioGroup and nothing happens when I change the selection!
> >
> > -----Original Message-----
> > From: Igor Vaynberg [mailto:[EMAIL PROTECTED]
> > Sent: Thursday, March 20, 2008 1:07 PM
> > To: [email protected]
> > Subject: Re: Problem with using RadioGorup and AjaxEventBehavior in a
> > FormComponentPanel
> >
> > right. see AjaxFormChoiceComponentUpdatingBehavior
> >
> > -igor
> >
> >
> > On Thu, Mar 20, 2008 at 10:02 AM, Zhubin Salehi
> > <[EMAIL PROTECTED]> wrote:
> > > I'm adding AjaxFormComponentUpdatingBehavior to RadioGroup. If I add it
> to
> > > Radio I get a runtime exception that says
> > AjaxFormComponentUpdatingBehavior
> > > can only be added to a FormComponent.
> > >
> > >
> > > -----Original Message-----
> > > From: Igor Vaynberg [mailto:[EMAIL PROTECTED]
> > >
> > >
> > > Sent: Thursday, March 20, 2008 12:59 PM
> > > To: [email protected]
> > > Subject: Re: Problem with using RadioGorup and AjaxEventBehavior in a
> > > FormComponentPanel
> > >
> > > are you adding the bheavior to Radio or RadioGroup, it needs to go to
> > > Radio components
> > >
> > > -igor
> > >
> > > On Thu, Mar 20, 2008 at 6:21 AM, Zhubin Salehi <[EMAIL PROTECTED]>
> > > wrote:
> > > > Ok, I noticed when I use AjaxFormComponentUpdatingBehavior, no
> > JavaScript
> > > gets added to radio buttons.
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Zhubin Salehi [mailto:[EMAIL PROTECTED]
> > > > Sent: Thursday, March 20, 2008 9:18 AM
> > > > To: [email protected]
> > > >
> > > >
> > > > Subject: RE: Problem with using RadioGorup and AjaxEventBehavior in a
> > > FormComponentPanel
> > > >
> > > > onclick doesn't work either.
> > > >
> > > > -----Original Message-----
> > > > From: Igor Vaynberg [mailto:[EMAIL PROTECTED]
> > > > Sent: Thursday, March 20, 2008 1:56 AM
> > > > To: [email protected]
> > > > Subject: Re: Problem with using RadioGorup and AjaxEventBehavior in
> a
> > > FormComponentPanel
> > > >
> > > > also, for what its worth, onclick works a lot better for this sort
> of
> > > > thing when dealing with check/readio html components
> > > >
> > > > -igor
> > > >
> > > >
> > > > On Wed, Mar 19, 2008 at 10:55 PM, Igor Vaynberg
> > <[EMAIL PROTECTED]>
> > > wrote:
> > > > > i dont think browsers support an "onschange" event :)
> > > > >
> > > > > -igor
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > On Wed, Mar 19, 2008 at 7:24 PM, Zhubin Salehi
> > > <[EMAIL PROTECTED]> wrote:
> > > > > > So now I wrote this code:
> > > > > >
> > > > > > nanp.add(new Radio("nanpTrue", new Model(new
> > > Boolean(true))));
> > > > > > nanp.add(new Radio("nanpFalse", new Model(new
> > > Boolean(false))));
> > > > > > nanp.add(new
> > > AjaxFormComponentUpdatingBehavior("onschange") {
> > > > > >
> > > > > >
> > > > > > private static final long
> > serialVersionUID =
> > > -1406454064553153207L;
> > > > > >
> > > > > > protected void
> onUpdate(AjaxRequestTarget
> > > target) {
> > > > > >
> > > > > > nanp.processInput();
> > > > > > target.addComponent(areaCode);
> > > > > >
> > > target.addComponent(countryDialingCode);
> > > > > >
> > > target.addComponent(routingDialingCode);
> > > > > > }
> > > > > > });
> > > > > >
> > > > > > But onUpdate() method is not called when I change selection.
> > What
> > > should I do?
> > > > > >
> > > > > > Thanks,
> > > > > > Zhubin
> > > > > >
> > > > > >
> > > > > >
> > > > > > -----Original Message-----
> > > > > > From: Igor Vaynberg [mailto:[EMAIL PROTECTED]
> > > > > > Sent: Wednesday, March 19, 2008 6:04 PM
> > > > > > To: [email protected]
> > > > > > Subject: Re: Problem with using RadioGorup and
> AjaxEventBehavior
> > in
> > > a FormComponentPanel
> > > > > >
> > > > > > ajax event behavior does not send over input. try
> > > > > > ajaxformcomponentupdatingbehavior.
> > > > > >
> > > > > > -igor
> > > > > >
> > > > > >
> > > > > > On Wed, Mar 19, 2008 at 2:19 PM, Zhubin Salehi
> > > <[EMAIL PROTECTED]> wrote:
> > > > > > > Hi all,
> > > > > > >
> > > > > > > I'm trying to update some TextFields in a
> FormComponentPanel
> > > when the user selects a radio button from a RadioGroup.
> > > > > > >
> > > > > > > Here is a fragment of my code that created Radio and
> > RadioGroup
> > > objects:
> > > > > > >
> > > > > > > add(nanp = new RadioGroup("nanp", new
> > > PropertyModel(this, "phoneNumber.nanp")));
> > > > > > > nanp.add(new Radio("nanpTrue", new Model(new
> > > Boolean(true))).add(new AjaxEventBehavior("onchange") {
> > > > > > >
> > > > > > > private static final long
> serialVersionUID =
> > > -1406454064553153207L;
> > > > > > >
> > > > > > > protected void onEvent(AjaxRequestTarget
> > > target) {
> > > > > > > nanp.processInput();
> > > > > > > target.addComponent(areaCode);
> > > > > > >
> > target.addComponent(countryDialingCode);
> > > > > > >
> > target.addComponent(routingDialingCode);
> > > > > > > }
> > > > > > > }));
> > > > > > > nanp.add(new Radio("nanpFalse", new Model(new
> > > Boolean(false))).add(new AjaxEventBehavior("onchange") {
> > > > > > >
> > > > > > > private static final long
> serialVersionUID =
> > > 6475950784724594836L;
> > > > > > >
> > > > > > > protected void onEvent(AjaxRequestTarget
> > > target) {
> > > > > > > nanp.processInput();
> > > > > > > target.addComponent(areaCode);
> > > > > > >
> > target.addComponent(countryDialingCode);
> > > > > > >
> > target.addComponent(routingDialingCode);
> > > > > > > }
> > > > > > > }));
> > > > > > >
> > > > > > > The problem is that as soon as I click on one of the radio
> > > buttons, I get the following exception:
> > > > > > >
> > > > > > > WicketMessage: Can't convert null value to a primitive
> class:
> > > boolean for setting it on [EMAIL PROTECTED]
> > > > > > >
> > > > > > > Root cause:
> > > > > > >
> > > > > > > org.apache.wicket.util.convert.ConversionException: Can't
> > > convert null value to a primitive class: boolean for setting it on
> > > [EMAIL PROTECTED]
> > > > > > > at
> > >
> >
> org.apache.wicket.util.lang.PropertyResolver$MethodGetAndSet.setValue(Proper
> > > tyResolver.java:1079)
> > > > > > > at
> > >
> >
> org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.setValue(Pro
> > > pertyResolver.java:576)
> > > > > > > at
> > >
> >
> org.apache.wicket.util.lang.PropertyResolver.setValue(PropertyResolver.java:
> > > 130)
> > > > > > > at
> > >
> >
> org.apache.wicket.model.AbstractPropertyModel.setObject(AbstractPropertyMode
> > > l.java:164)
> > > > > > > at
> > > org.apache.wicket.Component.setModelObject(Component.java:2880)
> > > > > > > at
> > >
> >
> org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.j
> > > ava:1052)
> > > > > > > at
> > >
> >
> org.apache.wicket.markup.html.form.FormComponent.processInput(FormComponent.
> > > java:934)
> > > > > > > at
> > >
> >
> com.route1.mobi.map3.web.panels.PhoneNumberPanel$2.onEvent(PhoneNumberPanel.
> > > java:125)
> > > > > > > at
> > >
> >
> org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:161)
> > > > > > > at
> > >
> >
> org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefault
> > > AjaxBehavior.java:288)
> > > > > > > at
> > >
> >
> org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.pr
> > > ocessEvents(BehaviorRequestTarget.java:100)
> > > > > > > at
> > >
> >
> org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(Abstra
> > > ctRequestCycleProcessor.java:91)
> > > > > > > at
> > >
> >
> org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:116
> > > 6)
> > > > > > > at
> > > org.apache.wicket.RequestCycle.step(RequestCycle.java:1243)
> > > > > > > at
> > > org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
> > > > > > > at
> > > org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
> > > > > > > at
> > >
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:358)
> > > > > > > at
> > >
> >
> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:124)
> > > > > > > at
> > > javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> > > > > > > at
> > > javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> > > > > > > at
> > >
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> > > FilterChain.java:269)
> > > > > > > at
> > >
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> > > ain.java:188)
> > > > > > > at
> > >
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> > > va:213)
> > > > > > > at
> > >
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> > > va:174)
> > > > > > > at
> > >
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127
> > > )
> > > > > > > at
> > >
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117
> > > )
> > > > > > > at
> > >
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> > > :108)
> > > > > > > at
> > >
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
> > > > > > > at
> > >
> > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
> > > > > > > at
> > >
> >
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processC
> > > onnection(Http11BaseProtocol.java:665)
> > > > > > > at
> > >
> >
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.jav
> > > a:528)
> > > > > > > at
> > >
> >
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWo
> > > rkerThread.java:81)
> > > > > > > at
> > >
> >
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
> > > a:689)
> > > > > > > at java.lang.Thread.run(Thread.java:595)
> > > > > > > It looks like the model in RadioGroup is not updated when
> > > nanp.processInput() is called. Any idea what I have done wrong?
> > > > > > >
> > > > > > > By the way I'm using Wicket 1.3.2, JDK 1.5.0_15, Tomcat
> > 5.5.26
> > > and Firefox 2.0.0.12
> > > > > > >
> > > > > > > Thanks,
> > > > > > > Zhubin
> > > > > > > Zhubin Salehi
> > > > > > > Senior Software Engineer
> > > > > > > Route1, Inc.
> > > > > > > Phone: (416) 848-8391 Ext. 2262 * Fax: (416) 848-8394
> > > > > > > [EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]> *
> > > www.route1.com<blocked::http://www.route1.com/>
> > > > > > > This electronic mail transmission contains information from
> > > Route1, Inc that is for the sole use of the intended recipient and may
> > > contain confidential, privileged or proprietary information. If you are
> > not
> > > the intended recipient, please be aware that any disclosure, copying,
> > > distribution or use of this message, its contents, or any attachment is
> > > prohibited. Any wrongful interception of this message is punishable as
> a
> > > federal crime. If you have received this message in error, please
> return
> > a
> > > copy to the sender by electronic mail indicating the error. Then,
> please
> > > destroy the original message and any copies from your computer. Thank
> > you.
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > ---------------------------------------------------------------------
> > > > > > 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]
> > > >
> > > >
> > > >
> ---------------------------------------------------------------------
> > > > 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]
> > >
> > >
> >
> > ---------------------------------------------------------------------
> > 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]