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)

Reply via email to