Author: nmalin
Date: Fri Aug 11 17:02:34 2017 New Revision: 1804824 URL: http://svn.apache.org/viewvc?rev=1804824&view=rev Log: Fixed: Related to the issue OFBIZ-6401Connect OFBiz to a read only database Escape null pointer exception stack trace when the helper return no value Modified: ofbiz/ofbiz-framework/trunk/framework/entity/src/main/java/org/apache/ofbiz/entity/GenericDelegator.java ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/stats/VisitHandler.java Modified: ofbiz/ofbiz-framework/trunk/framework/entity/src/main/java/org/apache/ofbiz/entity/GenericDelegator.java URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/entity/src/main/java/org/apache/ofbiz/entity/GenericDelegator.java?rev=1804824&r1=1804823&r2=1804824&view=diff ============================================================================== --- ofbiz/ofbiz-framework/trunk/framework/entity/src/main/java/org/apache/ofbiz/entity/GenericDelegator.java (original) +++ ofbiz/ofbiz-framework/trunk/framework/entity/src/main/java/org/apache/ofbiz/entity/GenericDelegator.java Fri Aug 11 17:02:34 2017 @@ -838,13 +838,14 @@ public class GenericDelegator implements ecaRunner.evalRules(EntityEcaHandler.EV_CACHE_CLEAR, EntityEcaHandler.OP_CREATE, value, false); this.clearCacheLine(value); } + ecaRunner.evalRules(EntityEcaHandler.EV_RETURN, EntityEcaHandler.OP_CREATE, value, false); } - ecaRunner.evalRules(EntityEcaHandler.EV_RETURN, EntityEcaHandler.OP_CREATE, value, false); TransactionUtil.commit(beganTransaction); return value; } catch (Exception e) { - String errMsg = "Failure in createSetNextSeqId operation for entity [" + value.getEntityName() + "]: " + e.toString() + ". Rolling back transaction."; + String entityName = value != null ? value.getEntityName() : "invalid Generic Value"; + String errMsg = "Failure in createSetNextSeqId operation for entity [" + entityName + "]: " + e.toString() + ". Rolling back transaction."; Debug.logError(e, errMsg, module); TransactionUtil.rollback(beganTransaction, errMsg, e); throw new GenericEntityException(e); @@ -894,13 +895,13 @@ public class GenericDelegator implements ecaRunner.evalRules(EntityEcaHandler.EV_CACHE_CLEAR, EntityEcaHandler.OP_CREATE, value, false); this.clearCacheLine(value); } + ecaRunner.evalRules(EntityEcaHandler.EV_RETURN, EntityEcaHandler.OP_CREATE, value, false); } - ecaRunner.evalRules(EntityEcaHandler.EV_RETURN, EntityEcaHandler.OP_CREATE, value, false); TransactionUtil.commit(beganTransaction); return value; } catch (Exception e) { - String errMsg = "Failure in create operation for entity [" + (value != null ? value.getEntityName() : "null") + "]: " + e.toString() + ". Rolling back transaction."; + String errMsg = "Failure in create operation for entity [" + (value != null ? value.getEntityName() : "value is null") + "]: " + e.toString() + ". Rolling back transaction."; Debug.logError(errMsg, module); TransactionUtil.rollback(beganTransaction, errMsg, e); throw new GenericEntityException(e); @@ -930,7 +931,7 @@ public class GenericDelegator implements TransactionUtil.commit(beganTransaction); return value; } catch (Exception e) { - String errMsg = "Failure in createOrStore operation for entity [" + value.getEntityName() + "]: " + e.toString() + ". Rolling back transaction."; + String errMsg = "Failure in createOrStore operation for entity [" + (value != null ? value.getEntityName() : "value is null") + "]: " + e.toString() + ". Rolling back transaction."; Debug.logError(e, errMsg, module); TransactionUtil.rollback(beganTransaction, errMsg, e); throw new GenericEntityException(e); Modified: ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/stats/VisitHandler.java URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/stats/VisitHandler.java?rev=1804824&r1=1804823&r2=1804824&view=diff ============================================================================== --- ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/stats/VisitHandler.java (original) +++ ofbiz/ofbiz-framework/trunk/framework/webapp/src/main/java/org/apache/ofbiz/webapp/stats/VisitHandler.java Fri Aug 11 17:02:34 2017 @@ -254,7 +254,10 @@ public class VisitHandler { // looks like we have an ID that doesn't exist in our database, so we'll create a new one visitor = delegator.makeValue("Visitor"); visitor = delegator.createSetNextSeqId(visitor); - if (Debug.infoOn()) Debug.logInfo("The visitorId [" + cookieVisitorId + "] found in cookie was invalid, creating new Visitor with ID [" + visitor.getString("visitorId") + "]", module); + if (Debug.infoOn()) { + String visitorId = visitor != null ? visitor.getString("visitorId") : "empty visitor"; + Debug.logInfo("The visitorId [" + cookieVisitorId + "] found in cookie was invalid, creating new Visitor with ID [" + visitorId + "]", module); + } } } catch (GenericEntityException e) { Debug.logError(e, "Error finding visitor with ID from cookie: " + cookieVisitorId, module); |
Free forum by Nabble | Edit this page |