Skip to content

Commit 7c483be

Browse files
author
graeme
committed
fix for GRAILS-985
git-svn-id: https://svn.codehaus.org/grails/trunk@4614 1cfb16fd-6d17-0410-8ff1-b7e8e1e2867d
1 parent 919fbdb commit 7c483be

File tree

1 file changed

+22
-20
lines changed

1 file changed

+22
-20
lines changed

src/web/org/codehaus/groovy/grails/web/pages/GroovyPagesTemplateEngine.java

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -14,35 +14,36 @@
1414
*/
1515
package org.codehaus.groovy.grails.web.pages;
1616

17-
import groovy.lang.*;
17+
import grails.util.GrailsUtil;
18+
import groovy.lang.GroovyClassLoader;
1819
import groovy.text.Template;
19-
20-
import java.io.*;
21-
import java.net.URL;
22-
import java.net.URLConnection;
23-
import java.util.Collections;
24-
import java.util.HashMap;
25-
import java.util.Map;
26-
27-
import javax.servlet.ServletContext;
28-
import javax.servlet.http.HttpServletRequest;
29-
20+
import org.apache.commons.lang.StringUtils;
3021
import org.apache.commons.logging.Log;
3122
import org.apache.commons.logging.LogFactory;
32-
import org.apache.commons.lang.StringUtils;
3323
import org.codehaus.groovy.control.CompilationFailedException;
24+
import org.codehaus.groovy.grails.support.ResourceAwareTemplateEngine;
25+
import org.codehaus.groovy.grails.web.pages.exceptions.GroovyPagesException;
3426
import org.codehaus.groovy.grails.web.servlet.GrailsApplicationAttributes;
3527
import org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequest;
36-
import org.codehaus.groovy.grails.web.pages.exceptions.GroovyPagesException;
37-
import org.codehaus.groovy.grails.support.ResourceAwareTemplateEngine;
28+
import org.springframework.beans.BeansException;
3829
import org.springframework.context.ApplicationContext;
3930
import org.springframework.context.ApplicationContextAware;
31+
import org.springframework.core.io.*;
32+
import org.springframework.web.context.ServletContextAware;
4033
import org.springframework.web.context.request.RequestContextHolder;
4134
import org.springframework.web.context.support.ServletContextResourceLoader;
42-
import org.springframework.web.context.ServletContextAware;
43-
import org.springframework.core.io.*;
44-
import org.springframework.beans.BeansException;
45-
import grails.util.GrailsUtil;
35+
36+
import javax.servlet.ServletContext;
37+
import javax.servlet.http.HttpServletRequest;
38+
import java.io.File;
39+
import java.io.FileNotFoundException;
40+
import java.io.IOException;
41+
import java.io.InputStream;
42+
import java.net.URL;
43+
import java.net.URLConnection;
44+
import java.util.Collections;
45+
import java.util.HashMap;
46+
import java.util.Map;
4647

4748
/**
4849
* A GroovyPagesTemplateEngine based on (but not extending) the existing TemplateEngine implementations
@@ -445,7 +446,8 @@ protected String establishPageName(Resource res, String pageName) {
445446
name = pageName != null ? pageName : res.getURL().getPath();
446447
// As the name take the first / off and then replace all characters that aren't
447448
// a word character or a digit with an underscore
448-
name = name.substring(1).replaceAll("[^\\w\\d]", "_");
449+
if(name.startsWith("/")) name = name.substring(1);
450+
name = name.replaceAll("[^\\w\\d]", "_");
449451

450452
} catch (IllegalStateException e) {
451453
name = generateTemplateName();

0 commit comments

Comments
 (0)