+1 Pritam, we should log it in JIRA.

Best regards,

Pranay Pandey
HotWax Systems
http://www.hotwaxsystems.com/

On Sat, Jun 18, 2016 at 5:49 PM, Pritam Kute <[email protected]>
wrote:

> Hello Devs,
>
> Any thoughts on this? Should I log JIRA issue for the same??
>
> Thanks & Regards,
> --
> *Pritam Kute*
> *HotWax Systems* | www.hotwaxsystems.com
>
> On Wed, Jun 15, 2016 at 2:26 PM, Pritam Kute <
> [email protected]>
> wrote:
>
> > Hello OFBiz Developers,
> >
> > While working on the issue OFBIZ-7252
> > <https://issues.apache.org/jira/browse/OFBIZ-7252>, I found one problem
> > in Form Widgets. When we use <alt-target> attribute in child form, the
> > system should consider overridden <alt-target> in child form. This is
> > default expected behaviour. But in this case, it is always considering
> the
> > <alt-target> of the parent form.
> >
> > For example:
> >
> > *<form name="ParentForm" .....>*
> > *  <alt-target use-when="xyz != abc" target="executeParentTarget"/> *
> > *  ........*
> > *</form>*
> >
> > *<form name="ChildForm" extends="ParentForm" extend-resource="........>*
> > *  <alt-target use-when="xyz != abc" target="executeChildTarget"/> *
> > *  ........*
> > *</form>*
> >
> > In above example, expectation is 'executeChildTarget' target should get
> > executed but actually 'executeParentTarget' is getting executed.
> >
> > When we looked into framework level code of Form Widgets, we got the
> > following code snippets:
> >
> > *ModelForm.java* (Line: 380-388)
> >
> > *ArrayList<AltTarget> altTargets = new ArrayList<AltTarget>();*
> > *if (parentModel != null) {*
> > *    altTargets.addAll(parentModel.altTargets);*
> > *}*
> > *for (Element altTargetElement : UtilXml.childElementList(formElement,
> > "alt-target")) {*
> > *    altTargets.add(new AltTarget(altTargetElement));*
> > *}*
> > *altTargets.trimToSize();*
> > *this.altTargets = Collections.unmodifiableList(altTargets);*
> >
> > Here we can see that all alt-targets present in parent form are added to
> > the list first and then all alt-targets present in child form are added.
> >
> > This causes a problem as method getTarget() of ModelForm.java (Line:
> > 1352-1384) returns the first element in the list as alt-target.
> >
> > Is this is intentionally done or we are missing something?
> >
> > Thanks & Regards,
> > --
> > *Pritam Kute*
> > *HotWax Systems* | www.hotwaxsystems.com
> >
>

Reply via email to