環境及工具:tomcat + ssh + Myeclipse
功能:下載中的 中文解析。
經過:今天敲一個查詢文件調用excel工具類下載成excel問題,結果工具類報錯:
事故代碼如下:
......
import javax.mail.internet.MimeUtility
......
......
if ((agent != null) && (-1 != agent.indexOf("Mozilla"))) return MimeUtility.encodeText(filename, "UTF-8", "B");
......
原來 引入的類有問題
原來應該是: com.sun.xml.internal.messaging.saaj.packaging.mime.internet.MimeUtility;
現在被別人改成了 :javax.mail.internet.MimeUtility
然后屢次下載失敗,報錯如圖:
正確解決辦法:
第一步:右鍵項目 - Properties - Project Facets - 找到右側的 Runtimes - 選中自己當前所用的Tomcat版本。
第二步:引入正確jar包下的類(似乎是jdk自帶的rt.jar):import com.sun.xml.internal.messaging.saaj.packaging.mime.internet.MimeUtility; 即可。
分析:似乎為低版本的jdk並沒有此jar包,我的ide是 MyeclipseCI jdk自帶1.6 就不行。或者與你當前開發環境的jdk和tomcat有關,具體我也沒深入查看,百度一下都有解決方法,故分享一下我的解決方法。