Openbravo Issue Tracking System - Retail Modules
View Issue Details
0027172Retail ModulesWeb POSpublic2014-07-24 07:582015-05-15 10:25
Orekaria 
Orekaria 
immediatecriticalalways
closedfixed 
5
 
 
Orekaria
No
0027172: When the orderloader fails to save the order in the backend, and error message should be shown
When the orderloader fails to save the order in the backend, and error message should be shown

This is an example of the error trace in the backend's tomcat

65260 [http-8080-18] ERROR org.openbravo.mobile.core.process.DataSynchronizationProcess - An error happened when processing a record:
java.lang.NumberFormatException
    at java.math.BigDecimal.<init>(BigDecimal.java:470)
    at java.math.BigDecimal.<init>(BigDecimal.java:739)
    at org.openbravo.mobile.core.process.JSONPropertyToEntity.fillBobFromJSON(JSONPropertyToEntity.java:113)
    at org.openbravo.retail.posterminal.OrderLoader.createOrderLines(OrderLoader.java:1019)
    at org.openbravo.retail.posterminal.OrderLoader.saveRecord(OrderLoader.java:192)
    at org.openbravo.mobile.core.process.DataSynchronizationProcess.saveRecord(DataSynchronizationProcess.java:117)
    at org.openbravo.mobile.core.process.DataSynchronizationProcess.exec(DataSynchronizationProcess.java:87)
    at org.openbravo.mobile.core.process.DataSynchronizationProcess.exec(DataSynchronizationProcess.java:51)
    at org.openbravo.mobile.core.process.JSONProcessSimple.exec(JSONProcessSimple.java:25)
    at org.openbravo.mobile.core.process.SecuredJSONProcess.secureExec(SecuredJSONProcess.java:39)
    at org.openbravo.mobile.core.process.MobileService.execClassName(MobileService.java:154)
    at org.openbravo.mobile.core.process.MobileService.doGetOrPost(MobileService.java:77)
    at org.openbravo.mobile.core.process.MobileService.doPost(MobileService.java:48)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
    at org.openbravo.base.HttpBaseServlet.serviceInitialized(HttpBaseServlet.java:225)
    at org.openbravo.base.secureApp.HttpSecureAppServlet.service(HttpSecureAppServlet.java:451)
    at org.openbravo.client.kernel.BaseKernelServlet.callServiceInSuper(BaseKernelServlet.java:92)
    at org.openbravo.mobile.core.process.WebServiceAuthenticatedServlet.service(WebServiceAuthenticatedServlet.java:52)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.utils.SessionExpirationFilter.doFilter(SessionExpirationFilter.java:65)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.utils.CharsetFilter.doFilter(CharsetFilter.java:35)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.client.kernel.KernelFilter$1.doAction(KernelFilter.java:62)
    at org.openbravo.dal.core.ThreadHandler.run(ThreadHandler.java:46)
    at org.openbravo.client.kernel.KernelFilter.doFilter(KernelFilter.java:71)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.dal.core.DalRequestFilter$1.doAction(DalRequestFilter.java:81)
    at org.openbravo.dal.core.ThreadHandler.run(ThreadHandler.java:46)
    at org.openbravo.dal.core.DalRequestFilter.doFilter(DalRequestFilter.java:103)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:745)
65290 [http-8080-18] ERROR org.openbravo.mobile.core.process.DataSynchronizationProcess - Error while loading order
java.lang.NumberFormatException
    at java.math.BigDecimal.<init>(BigDecimal.java:470)
    at java.math.BigDecimal.<init>(BigDecimal.java:739)
    at org.openbravo.mobile.core.process.JSONPropertyToEntity.fillBobFromJSON(JSONPropertyToEntity.java:113)
    at org.openbravo.retail.posterminal.OrderLoader.createOrderLines(OrderLoader.java:1019)
    at org.openbravo.retail.posterminal.OrderLoader.saveRecord(OrderLoader.java:192)
    at org.openbravo.mobile.core.process.DataSynchronizationProcess.saveRecord(DataSynchronizationProcess.java:117)
    at org.openbravo.mobile.core.process.DataSynchronizationProcess.exec(DataSynchronizationProcess.java:87)
    at org.openbravo.mobile.core.process.DataSynchronizationProcess.exec(DataSynchronizationProcess.java:51)
    at org.openbravo.mobile.core.process.JSONProcessSimple.exec(JSONProcessSimple.java:25)
    at org.openbravo.mobile.core.process.SecuredJSONProcess.secureExec(SecuredJSONProcess.java:39)
    at org.openbravo.mobile.core.process.MobileService.execClassName(MobileService.java:154)
    at org.openbravo.mobile.core.process.MobileService.doGetOrPost(MobileService.java:77)
    at org.openbravo.mobile.core.process.MobileService.doPost(MobileService.java:48)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
    at org.openbravo.base.HttpBaseServlet.serviceInitialized(HttpBaseServlet.java:225)
    at org.openbravo.base.secureApp.HttpSecureAppServlet.service(HttpSecureAppServlet.java:451)
    at org.openbravo.client.kernel.BaseKernelServlet.callServiceInSuper(BaseKernelServlet.java:92)
    at org.openbravo.mobile.core.process.WebServiceAuthenticatedServlet.service(WebServiceAuthenticatedServlet.java:52)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.utils.SessionExpirationFilter.doFilter(SessionExpirationFilter.java:65)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.utils.CharsetFilter.doFilter(CharsetFilter.java:35)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.client.kernel.KernelFilter$1.doAction(KernelFilter.java:62)
    at org.openbravo.dal.core.ThreadHandler.run(ThreadHandler.java:46)
    at org.openbravo.client.kernel.KernelFilter.doFilter(KernelFilter.java:71)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.dal.core.DalRequestFilter$1.doAction(DalRequestFilter.java:81)
    at org.openbravo.dal.core.ThreadHandler.run(ThreadHandler.java:46)
    at org.openbravo.dal.core.DalRequestFilter.doFilter(DalRequestFilter.java:103)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:745)
65306 [http-8080-18] INFO org.openbravo.mobile.core.process.DataSynchronizationProcess - Final total time: 171
Up to rev. 724 of mobile.core; rev. 3738 of retail.posterminal

Create an order
add 3x harness four season
add 3x harness rock climbing

verify that the 6 x 5 Harness discount is applied

pay the order

verify that in the backend, in the tomcat trace the above error is shown
verify that no information is given to the user


For later revs:

In order.js, change:

    function (p) {
      qtyReserved = OB.DEC.add(qtyReserved, p.qtyOfferReserved || 0);
    });

with

    function (p) {
      if (p.qtyOfferReserved > 0) {
        qtyReserved = OB.DEC.add(qtyReserved, p.qtyOfferReserved);
      }
    }
       
No tags attached.
related to feature request 0026977RR14Q4 closed marvintm Retail Stabilization: Failure Proof Ticket Saving, save to websql before printing 
Issue History
2014-07-24 07:58OrekariaNew Issue
2014-07-24 07:58OrekariaAssigned To => Orekaria
2014-07-24 07:58OrekariaTriggers an Emergency Pack => No
2014-07-24 08:45OrekariaRelationship addedrelated to 0026977
2014-07-24 10:27OrekariaSteps to Reproduce Updatedbug_revision_view_page.php?rev_id=6146#r6146
2014-07-24 16:57OrekariaNote Added: 0068871
2014-07-24 16:57OrekariaStatusnew => acknowledged
2014-09-22 16:23mtaalTarget VersionRR14Q4 =>
2015-05-15 10:06OrekariaStatusacknowledged => scheduled
2015-05-15 10:06OrekariaReview Assigned To => Orekaria
2015-05-15 10:06OrekariaStatusscheduled => closed
2015-05-15 10:06OrekariaResolutionopen => out of date
2015-05-15 10:25OrekariaResolutionout of date => fixed

Notes
(0068871)
Orekaria   
2014-07-24 16:57   
This lack of information on the error is intended