2016-03-30 14:43 GMT+02:00 Markus Fischer <markus.fisc...@knipp.de>: > Hi all, > > after migrating from Struts 2.3.24.1 to 2.3.28, I get several FreeMarker > template errors for missing/null elements for expressions that worked > fine before, like this: > >> FreeMarker template error >> >> The following has evaluated to null or missing: >> ==> iPhone [in template "..." at line X, column Y] > > What the problematic expressions have in common is that the Java methods > they refer to have camel case names with (at least?) two consecutive > upper case letters, as in "isIPhone". This seems to be mapped in a > different way with Struts 2.3.28 than it has been before. (See below for > two examples of the different mapping behaviour in Struts 2.3.24.1 and > 2.3.28). > > My question is: Is this a bug? Or is this something that was introduced > intentionally to comply with some standard or convention? > > Examples for Freemarker expression evaluation > > ==> iPhone (Method name: isIPhone) > > Expr. | 2.3.24.1 | 2.3.28 > iPhone | OK | error > IPhone | OK | OK > > > ==> hCardElements (getHCardElements) > > Expression | 2.3.24.1 | 2.3.28 > hCardElements | OK | error > HCardElements | OK | OK
It's due to fixed OGNL version which properly supports JavaBean Specifications now. You can revert to prior version of OGNL to keep the old behaviour. See those issues https://issues.apache.org/jira/browse/WW-3909 https://issues.apache.org/jira/browse/WW-4616 and here you have another one https://github.com/jkuhnert/ognl/pull/21 Regards -- Ćukasz + 48 606 323 122 http://www.lenart.org.pl/ --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org