[
https://issues.apache.org/jira/browse/JEXL-15?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Henri Biestro updated JEXL-15:
------------------------------
Attachment: JEXL-15.patch
Patch implements simple top-level & user defined namespaces for functions.
The functions are stored in a map keyed by the namespace name (String, null is
top-level) and point to beans that should implement the methods residing in
that namespace.
If all methods of the namespace are implemented as static methods, the class
itself can be used as the namespace object.
> [jexl] Needs definable functions
> --------------------------------
>
> Key: JEXL-15
> URL: https://issues.apache.org/jira/browse/JEXL-15
> Project: Commons JEXL
> Issue Type: Improvement
> Environment: Operating System: other
> Platform: Other
> Reporter: Paul Libbrecht
> Priority: Minor
> Fix For: 2.0
>
> Attachments: JEXL-15.patch
>
>
> Currently, in Jexl, the only way to add a functionality is to define a
> variable.
> Typically this is done in a separate environment... e.g. in jelly's j:new,
> j:set or...
> Using this, one can define, say, "a" then invoke "a.doSomething(withThat)".
> It would be nice to allow adding methods, e.g. "doSomething" to be invoked
> without any object.
> This way I could just say "doSomething".
> Examples of usage include:
> - add some mathematical functions to make jexl full featured mathematically
> (e.g. "abs", "exp",
> "atan")
> - add some "general purpose utilitites" (e.g. "tokenize(aString)",
> "toString(xx)", or
> "relativeUrl(baseUrl, relPath)")
> - thereby become more compatible with JSP (i've been told)
> This should promote general usage of such functions availability.
> In some situations this would help a lot. For example in maven where I too
> often still see
> srcFile="${baseDIr+pathToResource}" which prevents any overridability.
> (e.g. the cvs-usage.xml page in the xdoc plugin)
> paul
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.