Index: java/org/apache/catalina/servlets/DefaultServlet.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- java/org/apache/catalina/servlets/DefaultServlet.java (revision 1642802) +++ java/org/apache/catalina/servlets/DefaultServlet.java (revision ) @@ -16,50 +16,6 @@ */ package org.apache.catalina.servlets; -import java.io.BufferedInputStream; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStreamWriter; -import java.io.PrintWriter; -import java.io.RandomAccessFile; -import java.io.Reader; -import java.io.StringReader; -import java.io.StringWriter; -import java.security.AccessController; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Enumeration; -import java.util.Iterator; -import java.util.Locale; -import java.util.StringTokenizer; - -import javax.servlet.RequestDispatcher; -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.ServletOutputStream; -import javax.servlet.ServletResponse; -import javax.servlet.ServletResponseWrapper; -import javax.servlet.UnavailableException; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; -import javax.xml.parsers.ParserConfigurationException; -import javax.xml.transform.Source; -import javax.xml.transform.Transformer; -import javax.xml.transform.TransformerException; -import javax.xml.transform.TransformerFactory; -import javax.xml.transform.dom.DOMSource; -import javax.xml.transform.stream.StreamResult; -import javax.xml.transform.stream.StreamSource; - import org.apache.catalina.Context; import org.apache.catalina.Globals; import org.apache.catalina.WebResource; @@ -77,7 +33,25 @@ import org.xml.sax.SAXException; import org.xml.sax.ext.EntityResolver2; +import javax.servlet.*; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.transform.Source; +import javax.xml.transform.Transformer; +import javax.xml.transform.TransformerException; +import javax.xml.transform.TransformerFactory; +import javax.xml.transform.dom.DOMSource; +import javax.xml.transform.stream.StreamResult; +import javax.xml.transform.stream.StreamSource; +import java.io.*; +import java.security.AccessController; +import java.util.*; + /** *
The default resource-serving servlet for most web applications,
* used to serve static resources such as HTML pages and images.
@@ -259,7 +233,10 @@
*/
protected boolean showServerInfo = true;
-
+ /**
+ * File list sorting parameters.
+ */
+ protected String sortingParams = null;
// --------------------------------------------------------- Public Methods
/**
@@ -701,7 +678,7 @@
throws IOException, ServletException {
boolean serveContent = content;
-
+ sortingParams=request.getQueryString();
// Identify the requested resource path
String path = getRelativePath(request);
if (debug > 0) {
@@ -1281,7 +1258,6 @@
// rewriteUrl(contextPath) is expensive. cache result for later reuse
String rewrittenContextPath = rewriteUrl(contextPath);
String directoryWebappPath = resource.getWebappPath();
-
for (String entry : entries) {
if (entry.equalsIgnoreCase("WEB-INF") ||
@@ -1455,7 +1431,24 @@
sb.append("");
boolean shade = false;
+ Comparator cic = null;
+ if (sortingParams == null) {
+ cic = new NameAscComparator();
+ } else {
+ cic = getComparator(sortingParams);
+ }
+ ArrayList