有这样一个文件下载连接如下:

<a href="文件名.xls" >download</a>

在tomcat和webspere下,点download的时候,可以弹出文件下载框,但是在weblogic下却直接把该文件打开了,并且还是乱码!

 或者

<a href="文件名.jpg" >download</a>

在tomcat和webspere下,点download的时候,可以弹出文件下载框,但是在weblogic下却无法弹出保存弹框或下载弹框!!

 

原因是:weblogic是根据HTTP Header 的文件类型来判断是否弹出下载框的,默认的文件类型是contentType="text/html",所以是自动打开的。而tomcat是默认把文件都作为二进制文件,所以弹出对话框。

 

解决办法:

                在web.xml中加入代码:(这段代码加入到<web-app>里面就可以了</web-app>)

 <mime-mapping> 

   <extension>xls</extension> 

   <mime-type>application/msexcel</mime-type> 

  </mime-mapping>

 或

 <mime-mapping> 

   <extension>jpg</extension> 

   <mime-type>image/jpeg</mime-type> 

  </mime-mapping>

MIME类型就是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。 

 

这里附加上其他的类型设置:

 

<mime-mapping> 

<extension>doc</extension> 

<mime-type>application/msword</mime-type> 

</mime-mapping> 

<mime-mapping> 

<extension>xls</extension> 

<mime-type>application/msexcel</mime-type> 

</mime-mapping> 

<mime-mapping> 

<extension>pdf</extension> 

<mime-type>application/pdf</mime-type> 

</mime-mapping> 

<mime-mapping> 

<extension>zip</extension> 

<mime-type>application/zip</mime-type> 

</mime-mapping> 

<mime-mapping> 

<extension>rar</extension> 

<mime-type>application/rar</mime-type> 

</mime-mapping> 

<mime-mapping> 

<extension>txt</extension> 

<mime-type>application/txt</mime-type> 

</mime-mapping> 

<mime-mapping> 

<extension>chm</extension> 

<mime-type>application/mshelp</mime-type> 

</mime-mapping> 

<mime-mapping> 

<extension>mp3</extension> 

<mime-type>audio/x-mpeg</mime-type> 

</mime-mapping> 





常见的MIME类型 


超文本标记语言文本 .htm,.html text/html 

普通文本 .txt text/plain 

RTF文本 .rtf application/rtf 

GIF图形 .gif image/gif 

JPEG图形 .ipeg,.jpg image/jpeg 

au声音文件 .au audio/basic 

MIDI音乐文件 mid,.midi audio/midi,audio/x-midi 

RealAudio音乐文件 .ra, .ram audio/x-pn-realaudio 

MPEG文件 .mpg,.mpeg video/mpeg 

AVI文件 .avi video/x-msvideo 

GZIP文件 .gz application/x-gzip 

TAR文件 .tar application/x-tar