Openbravo Issue Tracking System - Retail Modules
View Issue Details
0027319Retail ModulesWeb POSpublic2014-08-12 23:472014-08-28 11:46
mtaal 
mtaal 
normalmajorhave not tried
closedfixed 
5
 
RR14Q4RR14Q4 
adrianromero
No
0027319: POS Error Window does not show cause of sql batch exception
The POS Error Window shows the stack trace of the exception but in case of a sql batch exception the underlying exception should be shown.

This is what currently gets shown:

org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
    at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:140)
    at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:128)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
    at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:275)
    at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:114)
    at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:109)
    at org.hibernate.jdbc.AbstractBatcher.prepareBatchStatement(AbstractBatcher.java:244)
    at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2411)
    at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2868)
    at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:79)
    at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273)
    at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:265)
    at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:184)
    at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
    at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
    at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
    at org.openbravo.dal.service.OBDal.flush(OBDal.java:191)
    at org.openbravo.dal.service.OBDal.getConnection(OBDal.java:145)
    at org.openbravo.dal.service.OBDal.getConnection(OBDal.java:129)
    at org.openbravo.dal.core.TriggerHandler.enable(TriggerHandler.java:103)
    at biz.cleardrop.posloyaltypoints.loader.OrderLoader.saveOrder(OrderLoader.java:304)
    at biz.cleardrop.posloyaltypoints.loader.OrderLoader.saveOrder(OrderLoader.java:159)
    at biz.cleardrop.posloyaltypoints.loader.OrderLoader.exec(OrderLoader.java:137)
    at org.openbravo.retail.posterminal.JSONProcessSimple.exec(JSONProcessSimple.java:25)
    at org.openbravo.retail.posterminal.TerminalServlet.execClassName(TerminalServlet.java:161)
    at org.openbravo.retail.posterminal.TerminalServlet.doGetOrPost(TerminalServlet.java:78)
    at org.openbravo.retail.posterminal.TerminalServlet.doPost(TerminalServlet.java:48)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at org.openbravo.base.HttpBaseServlet.serviceInitialized(HttpBaseServlet.java:225)
    at org.openbravo.base.secureApp.HttpSecureAppServlet.service(HttpSecureAppServlet.java:437)
    at org.openbravo.client.kernel.BaseKernelServlet.callServiceInSuper(BaseKernelServlet.java:87)
    at org.openbravo.retail.posterminal.WebServiceAuthenticatedServlet.service(WebServiceAuthenticatedServlet.java:52)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    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:66)
    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:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
    at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
    at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)
    at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705)
    at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
    at java.lang.Thread.run(Thread.java:701)
Caused by: java.sql.BatchUpdateException: Batch entry 0 insert into C_Order (AD_Client_ID, AD_Org_ID, IsActive, CreatedBy, Updated, UpdatedBy, IsSOTrx, DocumentNo, DocStatus, DocAction, Processing, Processed, C_DocType_ID, C_DocTypeTarget_ID, Description, IsDelivered, IsInvoiced, IsPrinted, IsSelected, SalesRep_ID, DateOrdered, DatePromised, DateAcct, C_BPartner_ID, BillTo_ID, C_BPartner_Location_ID, IsDiscountPrinted, C_Currency_ID, PaymentRule, C_PaymentTerm_ID, InvoiceRule, DeliveryRule, FreightCostRule, DeliveryViaRule, ChargeAmt, PriorityRule, TotalLines, GrandTotal, M_Warehouse_ID, M_PriceList_ID, IsTaxIncluded, Posted, CopyFrom, IsSelfService, Generatetemplate, CopyFromPO, FIN_Paymentmethod_ID, RM_PickFromShipment, RM_ReceiveMaterials, EM_Erpmag_Ecomord, RM_CreateInvoice, EM_Clgdm_Stlevel, RM_AddOrphanLine, Convertquotation, Calculate_Promotions, EM_Obdisc_Addpack, EM_Obpos_Applications_ID, EM_Obpos_Sendemail, EM_Wplp_Points_Processed, C_Order_ID) values ('A65074D0843147BEB4F13FF007B52F0A', '7C4A8703014F416CB5222163B9DB1BFE', 'Y', '9F38DDF1278444A7B56D3FC793F0F1A2', '2014-08-12 12:41:16.427000 +02:00:00', '9F38DDF1278444A7B56D3FC793F0F1A2', 'Y', 'OISTVERW/0013294', 'CO', '--', 'N', 'Y', '7AD1D767034348E0B5A0E5A454051C7F', '7AD1D767034348E0B5A0E5A454051C7F', '', 'N', 'N', 'Y', 'N', '9F38DDF1278444A7B56D3FC793F0F1A2', '2014-08-12 00:00:00.000000 +02:00:00', '2014-08-12 00:00:00.000000 +02:00:00', '2014-08-12 00:00:00.000000 +02:00:00', 'ED8EB2A9D38646C0A28138AA9E25C692', 'F05AB7B00C7C4D7D9B22B7F65DDCD83B', 'F05AB7B00C7C4D7D9B22B7F65DDCD83B', 'N', '102', 'B', '45E19DA93939499CAEF851EEB8CD337A', 'I', 'A', 'I', 'P', '0', '5', '20.23', '24.48', '8FB9351DCDE947EF82D29F6910123C9B', '6829AA5CF5544EEDA6065C65B4311417', 'Y', 'N', 'N', 'N', 'N', 'N', 'null', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', '99AEF222F0004D70805C77CA30975051', 'N', 'N', 'C116851575CB1406611E23F31F27A8CD') was aborted. Call getNextException to see the cause.
    at org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(AbstractJdbc2Statement.java:2598)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1836)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:407)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(AbstractJdbc2Statement.java:2737)
    at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)
    at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)
    ... 60 more

The exception stack trace says this:
Call getNextException to see the cause.
Centralize the get error message from an exception in one place and also display the underlying causing exception.
No tags attached.
png Selection_005.png (251,154) 2014-08-17 17:29
https://issues.openbravo.com/file_download.php?file_id=7139&type=bug
png
Issue History
2014-08-12 23:47mtaalNew Issue
2014-08-12 23:47mtaalAssigned To => mtaal
2014-08-12 23:47mtaalTriggers an Emergency Pack => No
2014-08-17 17:29mtaalNote Added: 0069431
2014-08-17 17:29mtaalFile Added: Selection_005.png
2014-08-17 17:30hgbotCheckin
2014-08-17 17:30hgbotNote Added: 0069432
2014-08-17 17:30hgbotStatusnew => resolved
2014-08-17 17:30hgbotResolutionopen => fixed
2014-08-17 17:30hgbotFixed in SCM revision => http://code.openbravo.com/erp/pmods/org.openbravo.mobile.core/rev/f86531f309ed325126fe58a3542446c28857e311 [^]
2014-08-28 11:46adrianromeroReview Assigned To => adrianromero
2014-08-28 11:46adrianromeroNote Added: 0069828
2014-08-28 11:46adrianromeroStatusresolved => closed
2014-08-28 11:46adrianromeroFixed in Version => RR14Q4

Notes
(0069431)
mtaal   
2014-08-17 17:29   
To reproduce this, set this line in the CustomerLoader:
      if (bpsWithPossibleSK > 0) {
to:
      if (false && bpsWithPossibleSK > 0) {

Then in webpos front end create 2 new customers with exact the same information. then check the pos import error window.
(0069432)
hgbot   
2014-08-17 17:30   
Repository: erp/pmods/org.openbravo.mobile.core
Changeset: f86531f309ed325126fe58a3542446c28857e311
Author: Martin Taal <martin.taal <at> openbravo.com>
Date: Sun Aug 17 17:30:04 2014 +0200
URL: http://code.openbravo.com/erp/pmods/org.openbravo.mobile.core/rev/f86531f309ed325126fe58a3542446c28857e311 [^]

Fixes issue 27319: POS Error Window does not show cause of sql batch exception

---
M src/org/openbravo/mobile/core/process/DataSynchronizationErrorHandler.java
---
(0069828)
adrianromero   
2014-08-28 11:46   
Reviewed.