diff -r 181ea055994f src/org/openbravo/retail/posterminal/POSUtils.java
--- a/src/org/openbravo/retail/posterminal/POSUtils.java	Thu Jul 06 12:31:28 2017 +0530
+++ b/src/org/openbravo/retail/posterminal/POSUtils.java	Wed Aug 02 17:04:56 2017 +0200
@@ -402,7 +402,7 @@
           }
         }
       } catch (Exception e) {
-        e.printStackTrace();
+        log.error("Error parsing OBPOSErrors", e);
         // If not parseable, we continue
       }
     }
@@ -496,7 +496,7 @@
           }
         }
       } catch (Exception e) {
-        e.printStackTrace();
+        log.error("Error parsing OBPOSErrors", e);
         // If not parseable, we continue
       }
     }
@@ -587,7 +587,7 @@
           }
         }
       } catch (Exception e) {
-        e.printStackTrace();
+        log.error("Error parsing OBPOSErrors", e);
         // If not parseable, we continue
       }
     }
diff -r 181ea055994f src/org/openbravo/retail/posterminal/ad_reports/CashUpReport.java
--- a/src/org/openbravo/retail/posterminal/ad_reports/CashUpReport.java	Thu Jul 06 12:31:28 2017 +0530
+++ b/src/org/openbravo/retail/posterminal/ad_reports/CashUpReport.java	Wed Aug 02 17:04:56 2017 +0200
@@ -42,6 +42,7 @@
 import net.sf.jasperreports.engine.design.JasperDesign;
 import net.sf.jasperreports.engine.xml.JRXmlLoader;
 
+import org.apache.log4j.Logger;
 import org.codehaus.jettison.json.JSONArray;
 import org.hibernate.Query;
 import org.openbravo.base.secureApp.HttpSecureAppServlet;
@@ -62,6 +63,7 @@
   private Instance<CashupReportHook> cashupReportHooks;
 
   private static final long serialVersionUID = 1L;
+  private static final Logger log = Logger.getLogger(CashUpReport.class);
 
   @Override
   @SuppressWarnings("unchecked")
@@ -390,7 +392,7 @@
           }
         }
       } catch (final Exception e) {
-        e.printStackTrace();
+        log.error("Error while running hooks", e);
       }
     }
 
diff -r 181ea055994f src/org/openbravo/retail/posterminal/master/CharacteristicValueProperties.java
--- a/src/org/openbravo/retail/posterminal/master/CharacteristicValueProperties.java	Thu Jul 06 12:31:28 2017 +0530
+++ b/src/org/openbravo/retail/posterminal/master/CharacteristicValueProperties.java	Wed Aug 02 17:04:56 2017 +0200
@@ -11,6 +11,7 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.log4j.Logger;
 import org.openbravo.client.kernel.ComponentProvider.Qualifier;
 import org.openbravo.dal.core.OBContext;
 import org.openbravo.erpCommon.businessUtility.Preferences;
@@ -19,6 +20,7 @@
 
 @Qualifier(CharacteristicValue.characteristicValuePropertyExtension)
 public class CharacteristicValueProperties extends ModelExtension {
+  private static final Logger log = Logger.getLogger(CharacteristicValueProperties.class);
 
   @Override
   public List<HQLProperty> getHQLProperties(Object params) {
@@ -48,7 +50,7 @@
         }
       };
     } catch (org.openbravo.erpCommon.utility.PropertyException e) {
-      e.printStackTrace();
+      log.error("Error getting property", e);
     }
     return list;
   }
diff -r 181ea055994f src/org/openbravo/retail/posterminal/master/Product.java
--- a/src/org/openbravo/retail/posterminal/master/Product.java	Thu Jul 06 12:31:28 2017 +0530
+++ b/src/org/openbravo/retail/posterminal/master/Product.java	Wed Aug 02 17:04:56 2017 +0200
@@ -103,7 +103,7 @@
         args.put("multiPriceList", false);
       }
     } catch (JSONException e) {
-      e.printStackTrace();
+      log.error("Error parsing multiPriceList params", e);
     }
 
     HQLPropertyList regularProductsHQLProperties = ModelExtensionUtils.getPropertyExtensions(
@@ -243,7 +243,7 @@
         args.put("multiPriceList", false);
       }
     } catch (JSONException e) {
-      e.printStackTrace();
+      log.error("Error parsing multiPriceList params", e);
     }
 
     HQLPropertyList regularProductsHQLProperties = ModelExtensionUtils.getPropertyExtensions(
diff -r 181ea055994f src/org/openbravo/retail/posterminal/term/Labels.java
--- a/src/org/openbravo/retail/posterminal/term/Labels.java	Thu Jul 06 12:31:28 2017 +0530
+++ b/src/org/openbravo/retail/posterminal/term/Labels.java	Wed Aug 02 17:04:56 2017 +0200
@@ -2,6 +2,7 @@
 
 import javax.servlet.ServletException;
 
+import org.apache.log4j.Logger;
 import org.codehaus.jettison.json.JSONException;
 import org.codehaus.jettison.json.JSONObject;
 import org.openbravo.dal.core.OBContext;
@@ -11,6 +12,7 @@
 import org.openbravo.service.json.JsonConstants;
 
 public class Labels extends JSONProcessSimple {
+  private static final Logger log = Logger.getLogger(Labels.class);
 
   @Override
   public JSONObject exec(JSONObject jsonsent) throws JSONException, ServletException {
@@ -31,7 +33,7 @@
       result.put("result", "0");
       return result;
     } catch (Exception e) {
-      e.printStackTrace();
+      log.error("Error", e);
       return null;
     } finally {
       OBContext.restorePreviousMode();
diff -r 181ea055994f src/org/openbravo/retail/posterminal/utility/GenerateProductImages.java
--- a/src/org/openbravo/retail/posterminal/utility/GenerateProductImages.java	Thu Jul 06 12:31:28 2017 +0530
+++ b/src/org/openbravo/retail/posterminal/utility/GenerateProductImages.java	Wed Aug 02 17:04:56 2017 +0200
@@ -159,7 +159,7 @@
       bundle.setResult(msg);
 
     } catch (final Exception e) {
-      e.printStackTrace(System.err);
+      log4j.error("Error", e);
       final OBError msg = new OBError();
       msg.setType("Error");
       msg.setMessage(e.getMessage());
