yasserzamani commented on a change in pull request #483: URL: https://github.com/apache/struts/pull/483#discussion_r615238766
########## File path: core/src/main/java/com/opensymphony/xwork2/interceptor/AliasInterceptor.java ########## @@ -167,7 +182,13 @@ public void setAliasesKey(String aliasesKey) { for (Object o : aliases.entrySet()) { Map.Entry entry = (Map.Entry) o; String name = entry.getKey().toString(); + if (isNotAcceptableExpression(name)) { + continue; + } String alias = (String) entry.getValue(); + if (isNotAcceptableExpression(alias)) { + continue; + } Review comment: BTW I knew and understand that you probably mean that those are developer constant expressions and I shouldn't consider the first evaluation actually a real evaluation at this specific case for example, but unfortunately here in this interceptor I don't have an easy way to recognize if it's really evaluated and has parsed variables or not, in Component.java I had it, `!parsedResult.equals(findString(name))`. So unfortunately I can't for now easily distinguish between `#{'application.myName':'myName'}` and `#{ #parameters['name'] : #parameters['alias'] }` where in first one evaluation is just a constant to String but in second one it's reading from end user parameters! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org