Author: gvanmatre Date: Mon Jan 16 12:15:32 2006 New Revision: 369561 URL: http://svn.apache.org/viewcvs?rev=369561&view=rev Log: Fix for Bug#: 38168
Modified: struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/ClayTemplateParser.java struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/Globals.java struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/ComponentConfigBean.java struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/TemplateConfigBean.java Modified: struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/ClayTemplateParser.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/ClayTemplateParser.java?rev=369561&r1=369560&r2=369561&view=diff ============================================================================== --- struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/ClayTemplateParser.java (original) +++ struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/ClayTemplateParser.java Mon Jan 16 12:15:32 2006 @@ -100,10 +100,10 @@ if (log.isInfoEnabled()) log.info(messages.getMessage("loading.template", new Object[] {templateName})); - ComponentBean root = new ComponentBean(); - root.setJsfid(templateName); - root.setComponentType("javax.faces.NamingContainer"); - + ComponentBean root = new ComponentBean(); + root.setJsfid(templateName); + root.setComponentType("javax.faces.NamingContainer"); + // generate the document StringBuffer buffer = loadTemplate(inputStream, templateName); Modified: struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/Globals.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/Globals.java?rev=369561&r1=369560&r2=369561&view=diff ============================================================================== --- struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/Globals.java (original) +++ struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/Globals.java Mon Jan 16 12:15:32 2006 @@ -115,11 +115,17 @@ /** + * <p>Configuration file prefix, "classpath*:", denotes that the resource + * should be loaded from the class path versus the context root.</p> + */ + public static final String CLASSPATH_PREFIX = "classpath*:"; + + /** * <p>The default subview configuration file containing the base supported * components. *</p> */ - public static final String DEFAULT_CLAY_CONFIG_FILE = "META-INF/clay-config.xml"; + public static final String DEFAULT_CLAY_CONFIG_FILE = CLASSPATH_PREFIX + "META-INF/clay-config.xml"; /** * <p>The literal string used to identify that a clay subtree should be Modified: struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/ComponentConfigBean.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/ComponentConfigBean.java?rev=369561&r1=369560&r2=369561&view=diff ============================================================================== --- struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/ComponentConfigBean.java (original) +++ struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/ComponentConfigBean.java Mon Jan 16 12:15:32 2006 @@ -214,16 +214,16 @@ StringTokenizer tokenizer = new StringTokenizer(configFiles, ", "); while (tokenizer.hasMoreTokens()) { StringBuffer configFile = new StringBuffer(tokenizer.nextToken().trim()); - if (configFile.toString().endsWith(".xml")) { - for (int i = configFile.length() - 5; i > 0; i--) { - if (configFile.charAt(i) == '.') - configFile.setCharAt(i, '/'); - } - } + + //look for a classpath prefix. + int i = -1; + if ((i = configFile.indexOf(Globals.CLASSPATH_PREFIX)) > -1) + configFile.delete(0, i + Globals.CLASSPATH_PREFIX.length()); try { - if (configFile.toString().startsWith("META-INF/")) { - for (Enumeration ui = classloader.getResources(configFile.toString()); ui.hasMoreElements(); urls.add(ui.nextElement())); + if (i > -1) { + for (Enumeration ui = classloader.getResources(configFile.toString()); + ui.hasMoreElements(); urls.add(ui.nextElement())); } else { URL url = context.getResource(configFile.toString()); if (url == null) { Modified: struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/TemplateConfigBean.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/TemplateConfigBean.java?rev=369561&r1=369560&r2=369561&view=diff ============================================================================== --- struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/TemplateConfigBean.java (original) +++ struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/config/beans/TemplateConfigBean.java Mon Jan 16 12:15:32 2006 @@ -192,7 +192,7 @@ protected ComponentBean getTopLevelElement(String jsfid) { if (validMoniker(jsfid)) - return super.getTopLevelElement(jsfid); + return getElement(jsfid); //broaden the search to the other ConfigBean's ConfigBean config = ConfigBeanFactory.findConfig(jsfid); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]