Hi Jacques, You're right I didn't specified what is not tested. What I meant is that I tested a few JS methods where I've applied the changes. Other methods aren't tested because I am not using them and didn't have time to see where they are used. Note that I've changed only the JS functions where ajax calls are invoked and I implemented the same logic for all of them, so they should work :)
Here is the list of these methods I haven't tested for sure: - getProductLineItemIndex - addPromoCode On Sun, Aug 28, 2011 at 10:49 AM, Jacques Le Roux < [email protected]> wrote: > Hi Jonatan, > > Your patch looks good at 1st glance, but you say below "not fully tested" > what do you mean by that? Do we need to test something which could be > specifically missing or has not been tested, or is it just a point in the > dark? > > Thanks > > Jacques > > > Jonatan Soto wrote: > >> Hi Atul, >> >> I've didn't got server error messages using what you said. Probably is >> something wrong in my code, but what I have noticed is that no matters >> what >> kind of response I set, the 'success' callback method is called. >> Anyway, how is handled the server response in this case? I mean, where can >> I >> find the code where the getServerError() JS function is called once we >> return the error response? >> >> Many thanks Atul. >> >> On Fri, Aug 26, 2011 at 7:32 PM, Atul Vani <[email protected]>** >> wrote: >> >> Jonatan, >>> >>> I think if you use >>> <response name="error" type="request" value="json"/> >>> (it is used in several places in ecommerce and other components' >>> controller.xml) >>> >>> and then use the getServerError() function >>> (used in specialpurpose/ecommerce/**webapp/ecommerce/images/** >>> profile.js) >>> to parse the JSON response, >>> then you should be able to retrieve the error message to display it to >>> the >>> user. >>> >>> I'm not sure if it will be helpful, I didn't got the problem completely >>> either ;-) >>> >>> >>> ----- Original Message ----- >>> From: "Jonatan Soto" <[email protected]> >>> To: [email protected] >>> Sent: Sunday, July 17, 2011 5:56:10 PM >>> Subject: Re: Issue with ajax and json response >>> >>> Done. Patch provided, not fully tested. >>> https://issues.apache.org/**jira/browse/OFBIZ-4342<https://issues.apache.org/jira/browse/OFBIZ-4342> >>> >>> <https://issues.apache.org/**jira/browse/OFBIZ-4342<https://issues.apache.org/jira/browse/OFBIZ-4342> >>> >**Regards, >>> >>> >>> On Sun, Jul 17, 2011 at 1:34 PM, Scott Gray <[email protected] >>> >>>> wrote: >>>> >>> >>> Yeah, checking for the _ERROR_MESSAGE* keys is the right way to go, >>>> would >>>> be great if you could create a jira issue so this doesn't get lost. >>>> >>>> Regards >>>> Scott >>>> >>>> HotWax Media >>>> http://www.hotwaxmedia.com >>>> >>>> On 17/07/2011, at 7:56 AM, Jonatan Soto wrote: >>>> >>>> Well, I did a little read on the jquery ajax documentation ( >>>>> http://api.jquery.com/jQuery.**ajax/<http://api.jquery.com/jQuery.ajax/>) >>>>> and some of my assertions were wrong. >>>>> It is definitively not related to >>>>> the CommonEvents#**jsonResponseFromRequestAttribu**tes. I felt stupid >>>>> when I >>>>> realized that the result the controller returns has nothing to do with >>>>> the >>>>> ajax callbacks :) >>>>> >>>>> According to this doc the error callback is: >>>>> "A function to be called if the request fails...." >>>>> >>>>> In the case I'm exposing, obviously the request is not failing so the >>>>> error >>>>> I'm getting should be handled in the success callback. Please, tell me >>>>> if >>>>> there is another way to do it. >>>>> I found a js function in the CheckoutProcess.js called >>>>> getServerError(...) >>>>> which is never invoked. I think it should be included in the success >>>>> callback like the following code: >>>>> >>>>> (chekoutProcess.js) >>>>> >>>>> // Check server side error >>>>> function getServerError(data) { >>>>> var serverErrorHash = []; >>>>> var serverError = ""; >>>>> if (data._ERROR_MESSAGE_LIST_ != undefined) { >>>>> serverErrorHash = data._ERROR_MESSAGE_LIST_; >>>>> jQuery.each(serverErrorHash, function(i, error) { >>>>> serverError += error.message + '<br/>'; >>>>> }); >>>>> } >>>>> if (data._ERROR_MESSAGE_ != undefined) { >>>>> serverError = data._ERROR_MESSAGE_; >>>>> } >>>>> return serverError; >>>>> } >>>>> >>>>> function createUpdateCustomerAndShippin**gAddress() { >>>>> var result = false; >>>>> jQuery.ajax({ >>>>> url: 'createUpdateShippingAddress', >>>>> type: 'POST', >>>>> dataType: 'json', >>>>> async: false, >>>>> data: jQuery('#shippingForm').**serialize(), >>>>> success: function(json) { >>>>> var serverError = getServerError(json); >>>>> if (!serverError) { >>>>> jQuery('#**shippingFormServerError').**fadeOut('fast'); >>>>> // Process Shipping data response. >>>>> jQuery('#shipToPartyId').val(**json.partyId); >>>>> jQuery('#billToPartyId').val(**json.partyId); >>>>> jQuery('#shipToContactMechId')**.val(json.contactMechId); >>>>> >>>>> jQuery('#**shipToPhoneContactMechId').**val(json.phoneContactMechId); >>>>> jQuery('#emailContactMechId').** >>>>> val(json.emailContactMechId); >>>>> >>>>> //jQuery('#**completedShippingMethod').** >>>>> html(json.shippingDescription)**; >>>>> updateShippingSummary(); >>>>> getShipOptions(); >>>>> result = true; >>>>> } else { >>>>> jQuery('#**shippingFormServerError').** >>>>> html(serverError); >>>>> >>>>> jQuery('#**shippingFormServerError').css(**"display","block"); >>> >>>> result = false; >>>>> } >>>>> }, >>>>> error: function(error) { >>>>> if (error != "") { >>>>> jQuery('#**shippingFormServerError').**html(error); >>>>> } >>>>> result = false; >>>>> } >>>>> }); >>>>> return result; >>>>> } >>>>> >>>>> Now with this modifications I am showing the server side error messages >>>>> correctly. >>>>> >>>>> >>>>> HTH >>>>> >>>>> >>>>> On Sat, Jul 16, 2011 at 8:28 PM, Jonatan Soto < >>>>> [email protected] >>>>> wrote: >>>>> >>>>> Hi BJ, >>>>>> >>>>>> The setAnonuserLogin is an ECA triggered before. The problem is after >>>>>> it if >>>>>> I'm not wrong. >>>>>> >>>>>> Look at: >>>>>> 2011-07-16 19:44:35,399 (http-0.0.0.0-8443-2) [ >>>>>> ServiceDispatcher.java:599:**INFO ] Sync service >>>>>> [traditional#JF/**createUpdateCustomerAndShippin**gAddress] finished >>>>>> in [112] >>>>>> milliseconds with response [{errorMessageList={Area code is missing, >>>>>> Falta >>>>>> Teléfono de Contacto}, responseMessage=error}] >>>>>> ... >>>>>> 2011-07-16 19:44:35,504 (http-0.0.0.0-8443-2) [ >>>>>> RequestHandler.java:639:INFO ] Ran Event >>>>>> [java:org.ofbiz.common.**CommonEvents#** >>>>>> jsonResponseFromRequestAttribu**tes] from >>>>>> [request], result is [success] >>>>>> >>>>>> The service that is called from ajax is returning 'error' but the >>>>>> chained >>>>>> json request is returning 'success'. I guess this is the problem. >>>>>> >>>>>> Thanks anyway! >>>>>> >>>>>> >>>>>> On Sat, Jul 16, 2011 at 8:18 PM, BJ Freeman <[email protected]> >>>>>> wrote: >>>>>> >>>>>> [traditional#JF/**setAnonUserLogin] finished in [105] milliseconds >>>>>>> with >>>>>>> response [{responseMessage=success}] >>>>>>> >>>>>>> it is evaluating a good lognin. this is where to debug. >>>>>>> >>>>>>> Jonatan Soto sent the following on 7/16/2011 10:59 AM: >>>>>>> >>>>>>>> Hi all, >>>>>>>> >>>>>>>> I am customizing the onePageCheckout (the anonymous part) and I >>>>>>>> found >>>>>>>> something strange. I've changed the client-side validation in order >>>>>>>> to allow >>>>>>>> the customer to only introduce the phone, cell phone or both. But on >>>>>>>> server-side I didn't change anything in the >>>>>>>> PartyContactMechMapProcs.xml >>>>>>>> yet. So, it is throwing an error of course, but the ajax handler >>>>>>>> does not >>>>>>>> consider it as an error. It always executes the success ajax >>>>>>>> handler! >>>>>>>> >>>>>>>> This is the stack trace: >>>>>>>> >>>>>>>> 2011-07-16 19:44:35,266 (http-0.0.0.0-8443-2) [ >>>>>>>> ControlServlet.java:141:INFO ] [[[**createUpdateShippingAddress] >>>>>>>> Request >>>>>>>> Begun, encoding=[UTF-8]- total:0.0,since last(Begin):0.0]] >>>>>>>> 2011-07-16 19:44:35,283 (http-0.0.0.0-8443-2) [ >>>>>>>> ConfigXMLReader.java:120:INFO ] controller loaded: 0.0030s, 281 >>>>>>>> requests, >>>>>>>> 96 views in jndi:/0.0.0.0/ecomm/**traditional/WEB-INF/** >>>>>>>> controller.xml<http://0.0.0.0/ecomm/traditional/WEB-INF/controller.xml> >>>>>>>> 2011-07-16 19:44:35,286 (http-0.0.0.0-8443-2) [ >>>>>>>> ServiceEcaRule.java:150:INFO ] Running Service ECA Service: >>>>>>>> setAnonUserLogin, triggered by rule on Service: >>>>>>>> createUpdateCustomerAndShippin**gAddress >>>>>>>> 2011-07-16 19:44:35,392 (http-0.0.0.0-8443-2) [ >>>>>>>> ServiceDispatcher.java:599:**INFO ] Sync service >>>>>>>> [traditional#JF/**setAnonUserLogin] finished in [105] milliseconds >>>>>>>> with >>>>>>>> response [{responseMessage=success}] >>>>>>>> 2011-07-16 19:44:35,396 (http-0.0.0.0-8443-2) [ >>>>>>>> TransactionUtil.java:374:WARN ] >>>>>>>> ---- exception report >>>>>>>> ------------------------------**---------------------------- >>>>>>>> [TransactionUtil.**setRollbackOnly] Calling transaction >>>>>>>> setRollbackOnly; this >>>>>>>> stack trace shows where this is happening: >>>>>>>> Exception: java.lang.Exception >>>>>>>> Message: Error in simple-method [Create/Update Customer, Shipping >>>>>>>> Address >>>>>>>> and other contact details. >>>>>>>> >>>>>>>> >>>>>>> >>>> [file:/home/jsoto/workspace/**ofbizcustom/applications/** >>> order/script/org/ofbiz/order/**order/CheckoutServices.xml#** >>> createUpdateCustomerAndShippin**gAddress]]: >>> >>>> ; {Area code is missing, Falta Teléfono de Contacto} >>>>>>>> ---- stack trace >>>>>>>> ------------------------------**------------------------------**--- >>>>>>>> java.lang.Exception: Error in simple-method [Create/Update Customer, >>>>>>>> Shipping Address and other contact details. >>>>>>>> >>>>>>>> >>>>>>> >>>> [file:/home/jsoto/workspace/**ofbizcustom/applications/** >>> order/script/org/ofbiz/order/**order/CheckoutServices.xml#** >>> createUpdateCustomerAndShippin**gAddress]]: >>> >>>> ; {Area code is missing, Falta Teléfono de Contacto} >>>>>>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.entity.transaction.**TransactionUtil.**setRollbackOnly(** >>> TransactionUtil.java:374) >>> >>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.entity.transaction.**TransactionUtil.rollback(** >>> TransactionUtil.java:316) >>> >>>> org.ofbiz.minilang.**SimpleMethod.exec(**SimpleMethod.java:870) >>>>>>>> >>>>>>>> org.ofbiz.minilang.**SimpleMethod.runSimpleMethod(** >>> SimpleMethod.java:160) >>> >>>> >>>>>>>> org.ofbiz.minilang.**SimpleMethod.runSimpleService(** >>>> SimpleMethod.java:142) >>>> >>>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.minilang.**SimpleServiceEngine.**serviceInvoker(** >>> SimpleServiceEngine.java:78) >>> >>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.minilang.**SimpleServiceEngine.runSync(** >>> SimpleServiceEngine.java:53) >>> >>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.service.**ModelServiceReader$**GenericInvokerImpl.runSync(** >>> ModelServiceReader.java:761) >>> >>>> >>>>>>>> >>>>>>> >>>> _$gen.file_58$.home.jsoto.**workspace.ofbizcustom.** >>> applications.order.servicedef.**services_95$checkout_46$xml_**35$** >>> createUpdateCustomerAndShippin**gAddress.runSync(file:/home/** >>> jsoto/workspace/ofbizcustom/**applications/order/servicedef/** >>> services_checkout.xml#**createUpdateCustomerAndShippin**gAddress:24) >>> >>>> >>>>>>>> org.ofbiz.service.**ServiceDispatcher.runSync(** >>>> ServiceDispatcher.java:399) >>>> >>>>> >>>>>>>> org.ofbiz.service.**ServiceDispatcher.runSync(** >>>> ServiceDispatcher.java:226) >>>> >>>>> >>>>>>>> org.ofbiz.service.**GenericDispatcher.runSync(** >>>> GenericDispatcher.java:165) >>>> >>>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.webapp.event.**ServiceEventHandler.invoke(** >>> ServiceEventHandler.java:336) >>> >>>> >>>>>>>> >>>>>>> org.ofbiz.webapp.control.**RequestHandler.runEvent(** >>>> RequestHandler.java:638) >>>> >>>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.webapp.control.**RequestHandler.doRequest(** >>> RequestHandler.java:384) >>> >>>> >>>>>>>> org.ofbiz.webapp.control.**ControlServlet.doGet(** >>> ControlServlet.java:224) >>> >>>> >>>>>>>> org.ofbiz.webapp.control.**ControlServlet.doPost(** >>> ControlServlet.java:87) >>> >>>> javax.servlet.http.**HttpServlet.service(**HttpServlet.java:637) >>>>>>>> javax.servlet.http.**HttpServlet.service(**HttpServlet.java:717) >>>>>>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**ApplicationFilterChain.**internalDoFilter(* >>> *ApplicationFilterChain.java:**290) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**ApplicationFilterChain.**doFilter(** >>> ApplicationFilterChain.java:**206) >>> >>>> >>>>>>>> org.ofbiz.webapp.control.**ContextFilter.doFilter(** >>>> ContextFilter.java:338) >>>> >>>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**ApplicationFilterChain.**internalDoFilter(* >>> *ApplicationFilterChain.java:**235) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**ApplicationFilterChain.**doFilter(** >>> ApplicationFilterChain.java:**206) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**StandardWrapperValve.invoke(** >>> StandardWrapperValve.java:233) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**StandardContextValve.invoke(** >>> StandardContextValve.java:191) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**StandardHostValve.invoke(** >>> StandardHostValve.java:127) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.valves.**ErrorReportValve.invoke(** >>> ErrorReportValve.java:102) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**StandardEngineValve.invoke(** >>> StandardEngineValve.java:109) >>> >>>> >>>>>>>> >>>>>>> org.apache.catalina.valves.**AccessLogValve.invoke(** >>>> AccessLogValve.java:554) >>>> >>>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.connector.**CoyoteAdapter.service(** >>> CoyoteAdapter.java:298) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.coyote.http11.**Http11Processor.process(** >>> Http11Processor.java:859) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.coyote.http11.**Http11Protocol$**Http11ConnectionHandler.** >>> process(Http11Protocol.java:**588) >>> >>>> >>>>>>>> org.apache.tomcat.util.net.**JIoEndpoint$Worker.run(** >>>> JIoEndpoint.java:489) >>>> >>>>> java.lang.Thread.run(Thread.**java:619) >>>>>>>> >>>>>>>> >>>>>>> >>>> ------------------------------**------------------------------** >>> -------------------- >>> >>>> >>>>>>>> 2011-07-16 19:44:35,397 (http-0.0.0.0-8443-2) [ >>>>>>>> ServiceDispatcher.java:543:**ERROR] Error in Service >>>>>>>> [**createUpdateCustomerAndShippin**gAddress]: Area code is missing, >>>>>>>> Falta >>>>>>>> Teléfono de Contacto >>>>>>>> 2011-07-16 19:44:35,397 (http-0.0.0.0-8443-2) [ >>>>>>>> TransactionUtil.java:338:**ERROR] >>>>>>>> ---- exception report >>>>>>>> ------------------------------**---------------------------- >>>>>>>> [TransactionUtil.rollback] >>>>>>>> Exception: java.lang.Exception >>>>>>>> Message: Stack Trace >>>>>>>> ---- stack trace >>>>>>>> ------------------------------**------------------------------**--- >>>>>>>> java.lang.Exception: Stack Trace >>>>>>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.entity.transaction.**TransactionUtil.rollback(** >>> TransactionUtil.java:337) >>> >>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.entity.transaction.**TransactionUtil.rollback(** >>> TransactionUtil.java:314) >>> >>>> >>>>>>>> org.ofbiz.service.**ServiceDispatcher.runSync(** >>>> ServiceDispatcher.java:547) >>>> >>>>> >>>>>>>> org.ofbiz.service.**ServiceDispatcher.runSync(** >>>> ServiceDispatcher.java:226) >>>> >>>>> >>>>>>>> org.ofbiz.service.**GenericDispatcher.runSync(** >>>> GenericDispatcher.java:165) >>>> >>>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.webapp.event.**ServiceEventHandler.invoke(** >>> ServiceEventHandler.java:336) >>> >>>> >>>>>>>> >>>>>>> org.ofbiz.webapp.control.**RequestHandler.runEvent(** >>>> RequestHandler.java:638) >>>> >>>>> >>>>>>>> >>>>>>> >>>> org.ofbiz.webapp.control.**RequestHandler.doRequest(** >>> RequestHandler.java:384) >>> >>>> >>>>>>>> org.ofbiz.webapp.control.**ControlServlet.doGet(** >>> ControlServlet.java:224) >>> >>>> >>>>>>>> org.ofbiz.webapp.control.**ControlServlet.doPost(** >>> ControlServlet.java:87) >>> >>>> javax.servlet.http.**HttpServlet.service(**HttpServlet.java:637) >>>>>>>> javax.servlet.http.**HttpServlet.service(**HttpServlet.java:717) >>>>>>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**ApplicationFilterChain.**internalDoFilter(* >>> *ApplicationFilterChain.java:**290) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**ApplicationFilterChain.**doFilter(** >>> ApplicationFilterChain.java:**206) >>> >>>> >>>>>>>> org.ofbiz.webapp.control.**ContextFilter.doFilter(** >>>> ContextFilter.java:338) >>>> >>>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**ApplicationFilterChain.**internalDoFilter(* >>> *ApplicationFilterChain.java:**235) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**ApplicationFilterChain.**doFilter(** >>> ApplicationFilterChain.java:**206) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**StandardWrapperValve.invoke(** >>> StandardWrapperValve.java:233) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**StandardContextValve.invoke(** >>> StandardContextValve.java:191) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**StandardHostValve.invoke(** >>> StandardHostValve.java:127) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.valves.**ErrorReportValve.invoke(** >>> ErrorReportValve.java:102) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.core.**StandardEngineValve.invoke(** >>> StandardEngineValve.java:109) >>> >>>> >>>>>>>> >>>>>>> org.apache.catalina.valves.**AccessLogValve.invoke(** >>>> AccessLogValve.java:554) >>>> >>>>> >>>>>>>> >>>>>>> >>>> org.apache.catalina.connector.**CoyoteAdapter.service(** >>> CoyoteAdapter.java:298) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.coyote.http11.**Http11Processor.process(** >>> Http11Processor.java:859) >>> >>>> >>>>>>>> >>>>>>> >>>> org.apache.coyote.http11.**Http11Protocol$**Http11ConnectionHandler.** >>> process(Http11Protocol.java:**588) >>> >>>> >>>>>>>> org.apache.tomcat.util.net.**JIoEndpoint$Worker.run(** >>>> JIoEndpoint.java:489) >>>> >>>>> java.lang.Thread.run(Thread.**java:619) >>>>>>>> >>>>>>>> >>>>>>> >>>> ------------------------------**------------------------------** >>> -------------------- >>> >>>> >>>>>>>> 2011-07-16 19:44:35,398 (http-0.0.0.0-8443-2) [ >>>>>>>> TransactionUtil.java:348:INFO ] [TransactionUtil.rollback] >>>>>>>> transaction >>>>>>>> rolled back >>>>>>>> 2011-07-16 19:44:35,399 (http-0.0.0.0-8443-2) [ >>>>>>>> ServiceDispatcher.java:599:**INFO ] Sync service >>>>>>>> [traditional#JF/**createUpdateCustomerAndShippin**gAddress] >>>>>>>> finished in [112] >>>>>>>> milliseconds with response [{errorMessageList={Area code is missing, >>>>>>>> Falta >>>>>>>> Teléfono de Contacto}, responseMessage=error}] >>>>>>>> 2011-07-16 19:44:35,399 (http-0.0.0.0-8443-2) [ >>>>>>>> RequestHandler.java:639:INFO ] Ran Event >>>>>>>> [service:#**createUpdateCustomerAndShippin**gAddress] from >>>>>>>> [request], result is >>>>>>>> [error] >>>>>>>> 2011-07-16 19:44:35,495 (http-0.0.0.0-8443-2) [ >>>>>>>> RequestHandler.java:425:ERROR] Request createUpdateShippingAddress >>>>>>>> caused an >>>>>>>> error with the following message: {Area code is missing, Falta >>>>>>>> Teléfono de >>>>>>>> Contacto} >>>>>>>> 2011-07-16 19:44:35,496 (http-0.0.0.0-8443-2) [ >>>>>>>> RequestHandler.java:524:INFO ] [RequestHandler.doRequest]: Response >>>>>>>> is a >>>>>>>> chained request. sessionId=**4D2FA44B2DA6BCB7E2D9BE245F808E** >>>>>>>> 22.jvm1 >>>>>>>> 2011-07-16 19:44:35,496 (http-0.0.0.0-8443-2) [ >>>>>>>> RequestHandler.java:167:INFO ] [RequestHandler]: Chain in place: >>>>>>>> requestUri=json overrideViewUri=null >>>>>>>> sessionId=**4D2FA44B2DA6BCB7E2D9BE245F808E**22.jvm1 >>>>>>>> 2011-07-16 19:44:35,504 (http-0.0.0.0-8443-2) [ >>>>>>>> RequestHandler.java:639:INFO ] Ran Event >>>>>>>> [java:org.ofbiz.common.**CommonEvents#** >>>>>>>> jsonResponseFromRequestAttribu**tes] from >>>>>>>> [request], result is [success] >>>>>>>> 2011-07-16 19:44:35,556 (http-0.0.0.0-8443-2) [ >>>>>>>> ServerHitBin.java:627:INFO ] Visit delegatorName=default#JF, >>>>>>>> ServerHitBin >>>>>>>> delegatorName=default#JF >>>>>>>> 2011-07-16 19:44:35,604 (http-0.0.0.0-8443-2) [ >>>>>>>> SequenceUtil.java:337:INFO ] Got bank of sequenced IDs for >>>>>>>> [ServerHitBin]; >>>>>>>> curSeqId=53390, maxSeqId=53400, bankSize=10 >>>>>>>> 2011-07-16 19:44:35,653 (http-0.0.0.0-8443-2) [ >>>>>>>> ControlServlet.java:324:INFO ] [[[**createUpdateShippingAddress] >>>>>>>> Request Done- >>>>>>>> total:0.386,since last([createUpdateShip...):0.**386]] >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>> ------------------------------**------------------------------** >>> ------------------------------**----- >>> >>>> >>>>>>>> After a bit of investigation I found this: >>>>>>>> >>>>>>>> The event '**createUpdateCustomerAndShippin**gAddress' is returning >>>>>>>> an error as >>>>>>>> a result but since the request is chained (with a json request) the >>>>>>>> controller takes the response from the event >>>>>>>> 'java:org.ofbiz.common.**CommonEvents#** >>>>>>>> jsonResponseFromRequestAttribu**tes' which >>>>>>>> is always 'success'. So that's why I figure out the ajax error >>>>>>>> handler is >>>>>>>> never invoked. >>>>>>>> >>>>>>>> What do you think? >>>>>>>> >>>>>>>> For further details, I am using a 3 months old trunk version with >>>>>>>> MySql. >>>>>>>> I've checked out the latest version >>>>>>>> of CommonEvents#**jsonResponseFromRequestAttribu**tes in the SVN, >>>>>>>> still the same >>>>>>>> code as I have. >>>>>>>> >>>>>>>> Thanks in advance. >>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> ----- >>>>>> >>>>>> Jonatan Soto >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> ----- >>>>> >>>>> Jonatan Soto >>>>> >>>> >>>> >>>> >>> >>> -- >>> ----- >>> >>> Jonatan Soto >>> >> -- ----- Jonatan Soto
