It's because of fixed OGNL version, right now it supports Java Bean
Specification. If you want to switch to old behaviour revert to prior
version of OGNL than 3.0.8 version.

https://github.com/jkuhnert/ognl/#release-notes---version-308
https://issues.apache.org/jira/browse/WW-3909


Regards
-- 
Ɓukasz
+ 48 606 323 122 http://www.lenart.org.pl/

2016-03-22 22:15 GMT+01:00 Moore, Gavin <gmo...@daybreakgames.com>:
> Not sure if this is the right group for this...
> I recently updated to Struts2.3.28 and started getting random parameters not 
> being set on the actions.
> After some digging I found that a parameter name vCurrency=USD and a setter 
> method setVCurrency(String vCurrency) works in 2.3.24.1 but does not work in 
> 2.3.28. Changing the setter name to setvCurrency(String vCurrency) works in 
> 2.3.28
> This seems to be happening in the OgnlUtil around line 346. The 
> RuntimeException is:
> No object in the CompoundRoot has a publicly accessible property named 
> 'vCurrency' (no setter could be found). - [unknown location]
>
> so for a url:
> https://mycompany.com/path/myaction.action? vCurrency=USD
>
> this setter works in 2.3.24.1 but can't be found in 2.3.28:
> public void setVCurrency(String vCurrency) {
>         this.vCurrency = vCurrency;
> }
>
> this setter works in both versions:
> public void setvCurrency(String vCurrency) {
>         this.vCurrency = vCurrency;
> }
>
> There are several other parameter names that are not being set, but I don't 
> yet see a pattern.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
> For additional commands, e-mail: dev-h...@struts.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
For additional commands, e-mail: dev-h...@struts.apache.org

Reply via email to