You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Patrice DUROUX (Jira)" <ji...@apache.org> on 2019/10/25 19:09:00 UTC
[jira] [Created] (OGNL-259) trouble with Enum subclassing
Patrice DUROUX created OGNL-259:
-----------------------------------
Summary: trouble with Enum subclassing
Key: OGNL-259
URL: https://issues.apache.org/jira/browse/OGNL-259
Project: Commons OGNL
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)