[
https://issues.apache.org/jira/browse/JEXL-240?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16185523#comment-16185523
]
Henri Biestro commented on JEXL-240:
------------------------------------
Thanks for reporting the issue.
As a temporary workaround, you can expose 'packages' in your context instead of
classes.
{code}
public class Package {
private final String pkg;
Package(String pkg) {
this.pkg = pkg;
}
public Class<?> get(String name) throws ClassNotFoundException {
return Package.class.getClassLoader().loadClass(pkg + "." + name);
}
}
...
jc.set("java.math", new Package("java.math"));
...
{code}
> Unable to invoke a call operator using antish style variable resoltion
> ----------------------------------------------------------------------
>
> Key: JEXL-240
> URL: https://issues.apache.org/jira/browse/JEXL-240
> Project: Commons JEXL
> Issue Type: Bug
> Affects Versions: 3.1
> Reporter: Dmitri Blinov
> Assignee: Henri Biestro
> Attachments: AntishCallTest.java
>
>
> Suppose I have declared an antish style context variable under the name
> {{java.math.BigDecimal}} of the {{Class<java.math.BigDecimal>}} type.
> To test that it works correctly I use the following script
> {code}var x = java.math.BigDecimal; x("1234"){code} which returns correct
> value.
> Now I want to invoke an overloaded call operator directly for this variable
> using {code}java.math.BigDecimal("1234"){code}
> which returns an error
> {panel}
> undefined variable java.math
> {panel}
> The expected behaviour is to return the same value as in the first script.
> I have created a test case for this, please have a look.
> Thanks!
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)