How about making a Register class which is an implementation of Context which stores only references to Catalogs? We could make the registry itself a singleton, and write in design notes that since the registry is shared between apps, each app should store its Catalog(s) in an application-specific attribute like below:
Registry | |---org.apache.struts |---|---actions.RequestProcessor |---|---somethingElse |---com.bah.krm |---org.apache.commons.something
That's not explained incredibly well, but if each application component reserves its own spot in the registry, we should be able to make the registry a singleton everyone can share. This keeps us from tying ourselves to the Servlet API, as was mentioned in the ChainServlet discussion thread.
I was thinking that when I have a case of a Command needing to access another Command/Chain, I'd try adding a Catalog attribute to the Context. But, it might be too early to define another Registry class (since the Context is also a Registry), especially without a use-case to test it against. The big step now, I think, is migrating some applications to Chain so we can see what's needed in practice. I've got both a web and non-web on the hook for this now.
-Ted.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
