JCgH4164838Gh792C124B5 commented on pull request #504: URL: https://github.com/apache/struts/pull/504#issuecomment-968154566
I tried looking at `ASTChain` processing, and the behaviour you mentioned above, by debugging really basic application. From what I can determine so far, the cases where the source can be `null` looks like it was probably a design choice. It seems to happen for compound node statements where there is no value for the "parent node", so the "child node" cannot have a value. I am not 100% certain, though, so if someone can see and explain things clearly, please feel free to comment. :) Looking into using a full-fledged cache (like _cache2k_ or _caffeine_, possibly using the JSR107/JCache API to be provider-agnostic) for the expression cache could be interesting. Alternatively, implementing a slightly more sophisticated customization of the existing cache (without introducing any new dependencies), could be interesting too. That could be a new feature request for 2.6.x. As for this PR and 2.6.x, given the explanation and arguments you have provided, I think it seems reasonable to apply to 2.6.x, and see how things behave. 👍 -- 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. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
