Patrice DUROUX created WW-5043:
----------------------------------
Summary: trouble with Enum subclassing
Key: WW-5043
URL: https://issues.apache.org/jira/browse/WW-5043
Project: Struts 2
Issue Type: Bug
Reporter: Patrice DUROUX
Hi,
I found the following problem using Struts (2.5.20) based on OGNL (3.1.21) and
same result forcing OGNL (3.1.25, as 3.2.x series seem to be not compatible
with this version of Struts).
The situation can be summarize with the following 2 enums:
{code:java}
enum Normal { A, B; }
enum Strange {A {}, B{}; } // mainly for implementing abstract method(s)
{code}
and the following expressions are:
{noformat}
@Normal@A==@Normal@A // true
@Normal@A!=@Normal@A // false
@Normal@A==@Normal@B // false
@Normal@A!=@Normal@B // true{noformat}
whereas the following expressions are:
{noformat}
@Strange@A==@Strange@A // true
@Strange@A!=@Strange@A // false
@Strange@A==@Strange@B // false (with warn log)
@Strange@A!=@Strange@B // false (with warn log){noformat}
and the origin of the wrong test value was discover activating WARN log level
in Struts (using struts.devMode).
Thanks,
Patrice
--
This message was sent by Atlassian Jira
(v8.3.4#803005)