https://issues.apache.org/bugzilla/show_bug.cgi?id=57141

--- Comment #6 from Konstantin Kolinko <knst.koli...@gmail.com> ---
Ah, I think that I see now. The problem is that ScopedAttributeELResolver calls
context.setPropertyResolved(base, property) regardless of whether the property
actually exists.

I think that one reason for that behaviour is to avoid an error to be thrown by
EL for such expressions as ${undefinedFoo}. So a possible theoretical
alternative fix could be the following two changes:

1. Change ScopedAttributeELResolver to do not set "propertyResolved" flag if
the property does not exist, I mean if pageContext.findAttribute(key) returned
null.

2. Change EL to treat unresolved identifier as having the value of null instead
of raising an error.

Given that both this theoretical fix and the actual fix in r1636063 are
changing the implementation of ScopedAttributeELResolver, I think the actual
fix in r1636063 wins as being less intrusive. It does not need change at EL
side.

So Ack for the current fiz.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to