in src/java/org/apache/turbine/util/ServletUtils.java [54:102]
public static String expandRelative(ServletConfig config,
String text)
{
if (StringUtils.isEmpty(text))
{
return text;
}
if (config == null)
{
return null;
}
final String expandedText;
// attempt to make it relative
if (Stream.of("/", "./", "\\", ".\\").noneMatch(text::startsWith))
{
StringBuilder sb = new StringBuilder();
sb.append("./");
sb.append(text);
expandedText = sb.toString();
}
else
{
expandedText = text;
}
ServletContext context = config.getServletContext();
String base = StringUtils.defaultIfEmpty(context.getRealPath("/"),
Turbine.getApplicationRoot());
if (StringUtils.isEmpty(base))
{
return expandedText;
}
StringTokenizer tokenizer = new StringTokenizer(expandedText, File.pathSeparator);
StringBuilder buffer = new StringBuilder();
while (tokenizer.hasMoreTokens())
{
buffer.append(base).append(tokenizer.nextToken());
if (tokenizer.hasMoreTokens())
{
buffer.append(File.pathSeparator);
}
}
return buffer.toString();
}