Sylvain Wallez wrote:
And actually 3 resolvers, as we also have the one in setup() of
sitemap components :-)
Here's another suggestion that doesn't need a new component.
First of all, when a component is setup (i.e. Avalon lifecycle
interfaces), the relative path must *always* be the one where the
component is declared, whatever the current environment is. This
solves the issues with lazy loading and poolable components that are
created on demand.
Outside of the component setup, we have the current behaviour where
the relative path depends on the current sitemap.
Now if a component needs to access some resources relative to the
place where it was declared, then it *must* resolve that URI during
its setup phase.
Did you ever hear that song from a long time ago called "Dizzy"? This
whole conversation has my head spinning. There has got to be a simpler
way of dealing with this stuff than the implicit behaviors based upon
when or where things are called. For example, using a uri like
"sitemap://my.catalog" should always use the current sitemap as the base
whereas "component://my.catalog" might use the sitemap where the
component was declared.
Ralph