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(PropertyResolver.java:1079)
>      at 
> org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.setValue(PropertyResolver.java:576)
>      at 
> org.apache.wicket.util.lang.PropertyResolver.setValue(PropertyResolver.java:130)
>      at 
> org.apache.wicket.model.AbstractPropertyModel.setObject(AbstractPropertyModel.java:164)
>      at org.apache.wicket.Component.setModelObject(Component.java:2880)
>      at 
> org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java: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(AbstractDefaultAjaxBehavior.java:288)
>      at 
> org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:100)
>      at 
> org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:91)
>      at 
> org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1166)
>      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(ApplicationFilterChain.java:269)
>      at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>      at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>      at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java: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.processConnection(Http11BaseProtocol.java:665)
>      at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
>      at 
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
>      at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java: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]

Reply via email to