[ https://issues.apache.org/jira/browse/OFBIZ-4843?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13262142#comment-13262142 ]
Daniel Riquelme commented on OFBIZ-4843: ---------------------------------------- The error occurs because a null condition is created for the entity-constraint. When validateSql get called in org.ofbiz.entity.condition.EntityJoinOperator.validateSql(EntityJoinOperator.java:178) there is no null checking so when condition.checkCondition(modelEntity); gets called an NPE is thrown. The patch modifies the code in framework/widget/src/org/ofbiz/widget/form/ModelFormField.java to avoid the inclusion of a null condition to the entity-options. > ignore-if-empty in entity-options throw NPE when env-name is in fact empty > -------------------------------------------------------------------------- > > Key: OFBIZ-4843 > URL: https://issues.apache.org/jira/browse/OFBIZ-4843 > Project: OFBiz > Issue Type: Bug > Components: framework > Affects Versions: SVN trunk > Environment: Mac OSX Lion, Postgres > Reporter: Daniel Riquelme > Fix For: SVN trunk > > Attachments: OFBIZ-4843-IgnoreIfEmptyNPE.patch > > Original Estimate: 1m > Remaining Estimate: 1m > > When specifying the ignore-if-empty attribute inside an entity-constraint in > an entity-options a NPE will be thrown whenever the env-name of this > entity-constraint is empty. > Could not commit transaction: > org.ofbiz.entity.transaction.GenericTransactionException: Roll back error, > could not commit transaction, was rolled back instead because of: Error > rendering screen > [component://gestionlegal/widget/CommonScreens.xml#GlobalDecorator]: > java.lang.NullPointerExceptionjava.lang.NullPointerException (null) > Exception: org.ofbiz.entity.transaction.GenericTransactionException > Message: Roll back error, could not commit transaction, was rolled back > instead because of: Error rendering screen > [component://gestionlegal/widget/CommonScreens.xml#GlobalDecorator]: > java.lang.NullPointerExceptionjava.lang.NullPointerException (null) > ---- cause > --------------------------------------------------------------------- > Exception: java.lang.NullPointerException > Message: null > ---- stack trace > --------------------------------------------------------------- > java.lang.NullPointerException > org.ofbiz.entity.condition.EntityJoinOperator.validateSql(EntityJoinOperator.java:178) > org.ofbiz.entity.condition.EntityConditionListBase.checkCondition(EntityConditionListBase.java:105) > org.ofbiz.entity.GenericDelegator.find(GenericDelegator.java:1733) > org.ofbiz.entity.GenericDelegator.findList(GenericDelegator.java:1775) > org.ofbiz.widget.form.ModelFormField$EntityOptions.addOptionValues(ModelFormField.java:1599) > org.ofbiz.widget.form.ModelFormField$FieldInfoWithOptions.getAllOptionValues(ModelFormField.java:1398) > org.ofbiz.widget.form.MacroFormRenderer.renderDropDownField(MacroFormRenderer.java:744) > org.ofbiz.widget.form.ModelFormField$DropDownField.renderFieldString(ModelFormField.java:3091) > org.ofbiz.widget.form.ModelFormField.renderFieldString(ModelFormField.java:523) > org.ofbiz.widget.form.ModelForm.renderSingleFormString(ModelForm.java:1081) > org.ofbiz.widget.form.ModelForm.renderFormString(ModelForm.java:852) > org.ofbiz.widget.screen.ModelScreenWidget$Form.renderWidgetString(ModelScreenWidget.java:753) > org.ofbiz.widget.screen.MacroScreenRenderer.renderScreenletSubWidget(MacroScreenRenderer.java:661) > org.ofbiz.widget.screen.ModelScreenWidget$Screenlet.renderWidgetString(ModelScreenWidget.java:373) -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira