From: <teo...@us...> - 2009-07-10 13:58:34
|
Revision: 9653 http://adempiere.svn.sourceforge.net/adempiere/?rev=9653&view=rev Author: teo_sarca Date: 2009-07-10 13:58:31 +0000 (Fri, 10 Jul 2009) Log Message: ----------- BF [ 2819617 ] NPE if script validator rule returns null https://sourceforge.net/tracker/?func=detail&aid=2819617&group_id=176962&atid=879332 Modified Paths: -------------- trunk/base/src/org/compiere/model/ModelValidationEngine.java Modified: trunk/base/src/org/compiere/model/ModelValidationEngine.java =================================================================== --- trunk/base/src/org/compiere/model/ModelValidationEngine.java 2009-07-10 11:10:53 UTC (rev 9652) +++ trunk/base/src/org/compiere/model/ModelValidationEngine.java 2009-07-10 13:58:31 UTC (rev 9653) @@ -46,6 +46,8 @@ * https://sourceforge.net/tracker/?func=detail&aid=2788276&group_id=176962&atid=879335 * <li>BF [ 2804135 ] Global FactsValidator are not invoked * https://sourceforge.net/tracker/?func=detail&aid=2804135&group_id=176962&atid=879332 + * <li>BF [ 2819617 ] NPE if script validator rule returns null + * https://sourceforge.net/tracker/?func=detail&aid=2819617&group_id=176962&atid=879332 */ public class ModelValidationEngine { @@ -228,7 +230,8 @@ engine.put(MRule.ARGUMENTS_PREFIX + "AD_Role_ID", AD_Role_ID); engine.put(MRule.ARGUMENTS_PREFIX + "AD_User_ID", AD_User_ID); - error = engine.eval(loginRule.getScript()).toString(); + Object retval = engine.eval(loginRule.getScript()); + error = (retval == null ? "" : retval.toString()); } catch (Exception e) { e.printStackTrace(); error = e.toString(); @@ -355,7 +358,8 @@ engine.put(MRule.ARGUMENTS_PREFIX + "Type", changeType); engine.put(MRule.ARGUMENTS_PREFIX + "Event", ModelValidator.tableEventValidators[changeType]); - error = engine.eval(rule.getScript()).toString(); + Object retval = engine.eval(rule.getScript()); + error = (retval == null ? "" : retval.toString()); } catch (Exception e) { e.printStackTrace(); error = e.toString(); @@ -500,7 +504,8 @@ engine.put(MRule.ARGUMENTS_PREFIX + "Type", docTiming); engine.put(MRule.ARGUMENTS_PREFIX + "Event", ModelValidator.documentEventValidators[docTiming]); - error = engine.eval(rule.getScript()).toString(); + Object retval = engine.eval(rule.getScript()); + error = (retval == null ? "" : retval.toString()); } catch (Exception e) { e.printStackTrace(); error = e.toString(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |