I completely agree that having *one* set on Minilang operations for all the 
actions (forms/screens/methods) is a good step forward.
My only doubt is about the effort required for the migration: I see an 
opportunity to migrate all our applications code to Groovy instead; at that 
point all OFBiz code will be either Java or Groovy and Freemarker.

Jacopo

On Apr 5, 2012, at 1:45 AM, Adrian Crum wrote:

> If we can agree on the mini-language syntax and get a good implementation, 
> then the next step would be to integrate it with the screen widgets. 
> Personally, I have always wanted the screen widget <actions> element to 
> behave the same way as the mini-language <simple-method> element. That 
> concept can be extended further to have <simple-method> elements in the 
> screen widget files (https://issues.apache.org/jira/browse/OFBIZ-4090).
> 
> -Adrian
> 
> On 4/4/2012 6:41 PM, Jacques Le Roux wrote:
>> Hi Adrian,
>> 
>> This looks like a great step forward. I really wonder though if we will 
>> still have many possible syntaxes ("std minilang" (should not vary with the 
>> place it's used), bsh, grooy, uel, etc.) or if it will be more constrained
>> 
>> I guess you will follow David's suggestion on this?
>>> What really bothers me with the simple-method stuff in OFBiz whenever I
>>> use it is the inconsistency between the simple-method, screen actions,
>>> form actions, etc, and the inconsistent handling of expressions and such
>>> for field, from-field, value, etc attributes. Having everything use the
>>> same XSD and having everything actually be a groovy expression (since it
>>> is just transformed into a groovy script) made it much easier and less
>>> frustrating to use.
>> 
>> I plenty agree with him. Moreover, I think we don't need many syntaxes, as 
>> long as the one provided supersedes all the others. On a long term, I can 
>> help to refactor current minilang code (which means also screens and form 
>> actions of course).
>> 
>> Thanks
>> 
>> Jacques
>> 
>> 
>> From: "Adrian Crum" <adrian.c...@sandglass-software.com>
>>> I think I have come up with a solution to fix the mini-language code: 
>>> mini-language auto-correction. If enabled, the element models correct 
>>> common mistakes and save the corrections to the original file. This will 
>>> still leave some warnings that will need to be fixed manually.
>>> 
>>> -Adrian
>>> 
>>> On 4/3/2012 2:07 PM, Adrian Crum wrote:
>>>> I added parsing validation to the <set> element to see how it will work. 
>>>> The validation can be enabled/disabled through a property setting.
>>>> 
>>>> Just running the load-demo ant task generates hundreds of warnings - most 
>>>> of them are caused by <set> attributes being used incorrectly. On the 
>>>> positive side, a lot of nonsensical code is being revealed; on the 
>>>> negative side, the log is filled with warnings.
>>>> 
>>>> I'm not sure what I will do with this. If I commit the validation code, 
>>>> then we will have a lot of work to do to clean up the mini-language code.
>>>> 
>>>> -Adrian
>>>> 
>>>> On 3/8/2012 6:55 PM, Adrian Crum wrote:
>>>>> Some more food for thought...
>>>>> 
>>>>> Looking through the Java code, I can see that there is no runtime 
>>>>> validation being performed. Granted, a decent XML editor will warn you 
>>>>> about required attributes and elements and such, but not everyone uses 
>>>>> that type of XML editor. Worse yet, there is no way to know you've done 
>>>>> something wrong - because mini-lang hides the errors in verbose log 
>>>>> statements. So, I would like to add runtime validation. If the script is 
>>>>> coded improperly, then it should throw an exception.
>>>>> 
>>>>> Another change I would like to make is to remove default attribute values 
>>>>> in the schema. From my perspective, defaults should be in the 
>>>>> mini-language code. The wiki page has demonstrated to me how difficult it 
>>>>> is to understand what's going on when you have to look through Java code, 
>>>>> and then also look through the schema to see what values it is supplying. 
>>>>> Plus, it makes me wonder how mini-language will behave when the server 
>>>>> doesn't have access to the schema.
>>>>> 
>>>>> Which brings up another point: Once the grammar has been cleaned up, we 
>>>>> will need a new schema. I think we need to start giving our schemas 
>>>>> version numbers so that XML editors and runtime XML validation will work 
>>>>> properly.
>>>>> 
>>>>> -Adrian
>>>>> 
>>>>> 
>>>>> On 3/8/2012 6:19 PM, Jacopo Cappellato wrote:
>>>>>> On Mar 8, 2012, at 7:03 PM, Adrian Crum wrote:
>>>>>> 
>>>>>>>> B) instead of:
>>>>>>>> 
>>>>>>>> <fail-property resource="ErrorMessages" property="FooError" />
>>>>>>>> 
>>>>>>>> we could have
>>>>>>>> 
>>>>>>>> <fail-property property="ErrorMessages.FooError" />
>>>>>>> Keep in mind that UEL would interpret FooError as an element of a Map 
>>>>>>> called ErrorMessages.
>>>>>>> 
>>>>>>> What you suggested can be done, but it will require more modifications 
>>>>>>> to the UEL integration - something I try to avoid because it causes 
>>>>>>> more problems than it solves. I recommend we keep the resource 
>>>>>>> attribute.
>>>>>> Np then, I was not even sure it was a good idea and if requires 
>>>>>> customizations to uel then I agree it is not worth the effort.
>>>>>> 
>>>>>> Thank you,
>>>>>> 
>>>>>> Jacopo 

Reply via email to