[ 
https://issues.apache.org/jira/browse/OFBIZ-4885?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jacques Le Roux updated OFBIZ-4885:
-----------------------------------

    Attachment: OFBIZ-4885_Support for closure in inline groovy script.patch

This is interesting, but how would you handle multiple closures?

Also I refactored your patch:
* no tabs but 4 spaces
* path from root when creating patch
* I added a internalOpenBracket var
* better comment for action
** //Scan for internal brackets for closures
** instead of
** // Scan for matching closing bracket

I attach my patch as intended for inclusion, but we could have a try on 
expanding with multiple closures. Else if nobody is concerned I will commit as 
is... At least it adds a useful feature.
                
> Support for closure, if and loop for inline groovy script in set filed of 
> action tag.
> -------------------------------------------------------------------------------------
>
>                 Key: OFBIZ-4885
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-4885
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: framework
>    Affects Versions: SVN trunk
>            Reporter: Amit Kumar
>              Labels: closure, groovy, inline, patch
>         Attachments: OFBIZ-4885_Support for closure in inline groovy 
> script.patch, OFBIZ-4885_Support for closure in inline groovy script.patch
>
>
> Currently, we can use inline groovy script in set field tag of action tag in 
> screens and forms. like
> <form>
> <action>
>     <set field="tempVar" value="${groovy: someList?someList.size():0;}"/>
> </action>
> </form>
> But, we can not use closure, if or loop in this kind of inline groovy. like
> <form>
> <action>
>     <set field="tempVar" value="${groovy: str=''; 
> someList.each{str=str+it}}"/>
> </action>
> </form>
> The reason is that matching closing } braces for any opening { braces in the 
> script are ignored and script does not get compiled if it contains any set of 
> { and }.
> So, I have added a patch which makes it possible to use closure, if and loop 
> by handling { and } braces occurs with in the script.

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

        

Reply via email to