Revision 733
Added by bojilova over 23 years ago
src/edu/ucsb/nceas/metacat/MetaCatServlet.java | ||
---|---|---|
27 | 27 |
|
28 | 28 |
package edu.ucsb.nceas.metacat; |
29 | 29 |
|
30 |
import java.io.File; |
|
30 | 31 |
import java.io.PrintWriter; |
31 | 32 |
import java.io.IOException; |
32 | 33 |
import java.io.StringReader; |
... | ... | |
788 | 789 |
|
789 | 790 |
if ( doc.getRootNodeID() == 0 ) { |
790 | 791 |
// this is data file |
791 |
// ??? look at handleGetData |
|
792 | 792 |
ServletOutputStream out = response.getOutputStream(); |
793 | 793 |
String filepath = util.getOption("datafilepath"); |
794 | 794 |
if(!filepath.endsWith("/")) { |
... | ... | |
804 | 804 |
} else if (filename.endsWith(".dtd")) { |
805 | 805 |
contentType="text/plain"; |
806 | 806 |
} else if (filename.endsWith(".xsd")) { |
807 |
contentType="text/plain";
|
|
807 |
contentType="text/xml";
|
|
808 | 808 |
} else if (filename.endsWith("/")) { |
809 |
contentType="text/directory";
|
|
809 |
contentType="text/html";
|
|
810 | 810 |
} else { |
811 |
contentType="text/plain"; |
|
811 |
File f = new File(filename); |
|
812 |
if ( f.isDirectory() ) { |
|
813 |
contentType="text/html"; |
|
814 |
} else { |
|
815 |
contentType="application/octet-stream"; |
|
816 |
} |
|
812 | 817 |
} |
813 | 818 |
} |
814 | 819 |
response.setContentType(contentType); |
820 |
// if we decide to use "application/octet-stream" for all data returns |
|
821 |
// response.setContentType("application/octet-stream"); |
|
815 | 822 |
FileInputStream fin = null; |
816 | 823 |
try { |
817 | 824 |
fin = new FileInputStream(filename); |
... | ... | |
865 | 872 |
} else if (docid.endsWith(".dtd")) { |
866 | 873 |
contentType="text/plain"; |
867 | 874 |
} else if (docid.endsWith(".xsd")) { |
868 |
contentType="text/plain";
|
|
875 |
contentType="text/xml";
|
|
869 | 876 |
} else if (docid.endsWith("/")) { |
870 |
contentType="text/directory";
|
|
877 |
contentType="text/html";
|
|
871 | 878 |
} else { |
872 |
contentType="text/plain"; |
|
879 |
File f = new File(docid); |
|
880 |
if ( f.isDirectory() ) { |
|
881 |
contentType="text/html"; |
|
882 |
} else { |
|
883 |
contentType="application/octet-stream"; |
|
884 |
} |
|
873 | 885 |
} |
874 | 886 |
} |
875 | 887 |
response.setContentType(contentType); |
888 |
// if we decide to use "application/octet-stream" for all data returns |
|
889 |
// response.setContentType("application/octet-stream"); |
|
876 | 890 |
|
877 | 891 |
// this is http url |
878 | 892 |
URL url = new URL(docid); |
Also available in: Unified diff
Tomcat has got configurated mime type mappings, but some are
missing. Thus added support for them in MetaCatServlet as:
File type
> MIME type-----------------------------
.xml -> "text/xml"
.xsd -> "text/xml"
.dtd -> "text/plain"
.css -> "text/css"
directory -> "text/html"
other file types -> "application/octet-stream"