[ https://issues.apache.org/jira/browse/JEXL-221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Henri Biestro resolved JEXL-221. -------------------------------- Resolution: Fixed tryInvoke is protected from null properties. src/main/java/org/apache/commons/jexl3/internal/Script.java src/main/java/org/apache/commons/jexl3/internal/introspection/BooleanGetExecutor.java src/main/java/org/apache/commons/jexl3/internal/introspection/DuckGetExecutor.java src/main/java/org/apache/commons/jexl3/internal/introspection/DuckSetExecutor.java src/main/java/org/apache/commons/jexl3/internal/introspection/IndexedType.java src/main/java/org/apache/commons/jexl3/internal/introspection/MapGetExecutor.java src/main/java/org/apache/commons/jexl3/internal/introspection/MapSetExecutor.java src/test/java/org/apache/commons/jexl3/IssuesTest.java Committed revision 1786350. > Sporadic undefined property error caused by NPE at MapGetExecutor.tryInvoke() > ----------------------------------------------------------------------------- > > Key: JEXL-221 > URL: https://issues.apache.org/jira/browse/JEXL-221 > Project: Commons JEXL > Issue Type: Bug > Affects Versions: 3.0 > Reporter: Dmitri Blinov > Assignee: Henri Biestro > > I'm getting sporadic undefined property error when accessing hashmap by a > key. The stack trace tells the cause is NPE in MapGetExecutor.tryInvoke() at > the following line: > {code} > if (obj != null && method != null > && objectClass.equals(obj.getClass()) > && (key == null || > property.getClass().equals(key.getClass()))) { > {code} > I have managed to overcome this issue by adding the following null check: > {code} > if (obj != null && method != null > && objectClass.equals(obj.getClass()) > && (key == null || property != null && > property.getClass().equals(key.getClass()))) { > {code} > I have only vague understanding of how things work inside jexl with > tryInvoke() and unfortunately can not provide any test case for this, but it > has worked in my case, so if nobody have any objections please include the > fix in source tree. > Thanks! -- This message was sent by Atlassian JIRA (v6.3.15#6346)