|
From: Colin S. <col...@ex...> - 2004-06-24 04:02:15
|
I've been thinking about this, and was wondering if it's appropriate that _all_ matching resources are found, all the time, and also if we should be worried about a backwards incompatible change. Before, in ClassPathXmlApplicationContext, the locations beans.xml and classpath:beans.xml would return one resource, regardless of how many there were. Now the former still returns one, while the latter returns 1-x. Is it a problem that we've made a backwards incompatible change for the latter form? Is it a problem that somebody, if they want just one resource, has to know that they need to use the first form? Additionally to this, this distinction is possible when something like ClassPathXmlApplicationContext, but for others that override the default getResourceByPath to default to something else than a classpath resource, it's not a possibility. I guess somebody could say, if there are multiple resources available under that name, is it ever appropriate to return just one? I think so, since after all, even in that case, the classloader resource loading strategy is well defined and deterministic. Since the 'classpath:' prefix is something we made up, why don't we keep this for just a single resource, and use something like 'resources:' (or whatever) to mean multiple resources? Colin jürgen höller [werk3AT] wrote: >FYI, I've just refined PathMatchingResourcePatternResolver to be able to retrieve all class path resources with the same name. It actually inherits this from the new base class ClassPathResourcePatternResolver. > >http://sourceforge.net/forum/forum.php?thread_id=1096825&forum_id=250340 > >So "classpath:/beans.xml" will load all beans.xml files in classes directories or JAR files, if passed into PathMatchingResourcePatternResolver. Of course, Ant-style file path patterns like "/WEB-INF/*-context.xml" still work. > >As this is automatically used by "contextConfigLocation" parameters, this means that we can specify such a URL for a root web application context, for example to auto-load all beans.xml files contained in deployed JAR files in WEB-INF\lib (HiveMind-style)! > >Juergen > > >DI Jürgen Höller >Senior System Architect >______________________________________ > >werk3ATS - division systementwicklung >werk3AT informations- und mediensysteme > >europaplatz 4 >A - 4020 linz > >t. +43 (0) 732 71 65 29 502 >f. +43 (0) 732 71 65 29 3 >mailto:jue...@we... >http://www.werk3at.com >______________________________________ >werk3ATS - WIR ENTWICKELN ERFOLG > > |