I'm in the process of consolidating the parsepath methods for WM templates. In doing so, here's what I've come up with: Parsepaths for screens and layouts must be separate from a parsepath for navigations. Here's why - you can never be sure that there's a one-to-one relationship between layout subdirectories and navigation subdirectories. Take the case where you have a standard footer navigation that you want to use in several layouts. So, what I'm doing is creating 2 loaders - one for Layout/Screens and one for navigations. The loader extends Genericloader and contain all the code for parsing the paths and packages. This gives you the ability to cache the screen/layouts and navigation names so you won't have to parse the paths on each hit. It also makes the caching configurable ( turn on/off ) via the properties file So, in the WebMacroSitePage you have one call such as: TemplateHolder holder = WebMacroScreenLayoutLoader.getInstance().exec(data, templatename); And in the WebMacroNavigation you'll have: TemplateHolder holder = WebMacroNavigationLoader.getInstance().exec( data, templatename); The TemplateHolder is just an object to hold the information in the cache. This looks like the cleanest solution to me. Thoughts? -- dave [EMAIL PROTECTED] ---------------------- Just your average Joe armed with an Emacs editor. ------------------------------------------------------------ To subscribe: [EMAIL PROTECTED] To unsubscribe: [EMAIL PROTECTED] Problems?: [EMAIL PROTECTED]