[ https://issues.apache.org/jira/browse/SLING-2411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13205298#comment-13205298 ]
Carsten Ziegeler commented on SLING-2411: ----------------------------------------- Just a thought, what about passing the request into the resource resolver factory when it is created? The created resolver can then just keep the request object Using a thread local has the potential surprise that all resource resolvers running in that thread are using the request object, for example long running admin resolvers from a used service etc. This can be wanted or unexpected. Not sure actually > ResourceDecorator(Resource, HttpServletRequest) doesn't get called > consistently > ------------------------------------------------------------------------------- > > Key: SLING-2411 > URL: https://issues.apache.org/jira/browse/SLING-2411 > Project: Sling > Issue Type: Improvement > Reporter: Justin Edelson > > The ResourceDecorator currently has two methods: > decorate(Resource) > decorate(Resource, HttpServletRequest) > The JcrResourceResolver uses the latter method when > resolve(HttpServletRequest,String) is invoked. In all other cases, the former > method is used. This behavior is correct. > However, the JcrResourceResolver (and any future ResourceResolver > implementation for that matter) really doesn't have any control over how it > is invoked. For example, at present <sling:include> and <sling:forward> call > resolve(String), not resolve(HttpServletRequest,String) (see > http://s.apache.org/lL5). But even if we did a code audit within Sling and > fixed all the cases like this, we don't have any control over downstream > applications which may or may not invoke the two-argument resolve() method. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira