Thanks, Jacques, Pranay and Mridul for your comments on this.

Logged JIRA issue for the same (OFBIZ-7513
<https://issues.apache.org/jira/browse/OFBIZ-7513>). I will work on the fix
and upload the patch soon.

Thanks & Regards,
--
*Pritam Kute*
*HotWax Systems* | www.hotwaxsystems.com

On Mon, Jun 20, 2016 at 12:31 PM, Pranay Pandey <
[email protected]> wrote:

> +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