You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "James Chaplin (Jira)" <ji...@apache.org> on 2020/02/16 15:32:00 UTC

[jira] [Commented] (WW-5043) trouble with Enum subclassing

    [ https://issues.apache.org/jira/browse/WW-5043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17037860#comment-17037860 ] 

James Chaplin commented on WW-5043:
-----------------------------------

Hi Patrice.

New versions of OGNL (3.1.x, 3.2.x) have been released with a change that hopefully will address this Jira's issue.

Could you please retry your local application again with Struts 2.5.22 and OGNL 3.1.28 (by overriding the version in your build or manually fetching the new version from a trusted Maven repository) ?

Please reply with a comment to this Jira advising whether the new OGNL version resolves the reported issue or not.

Thanks,

James.

> 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
>            Priority: Major
>             Fix For: 2.6
>
>
> 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)