2015-04-07 49 views
0

我無法使JavaMail附帶的SimpleClient示例應用程序正常工作。使用純文本體的電子郵件在查看器中顯示得很好。但是對於html body而言,它無法找到合適的內容查看器。它是Object bean = dh.getBean(ci);MessageViewer.getBodyComponent()的第205行左右,導致bean被分配一個空指針,導致問題。JavaMail無法顯示html正文

今天早些時候,我要求幫助找到javax.activation的源代碼,希望能找出問題所在。但不幸的是,當我進入該代碼時,它會出現在源文件中的錯誤行,這意味着我不能在我的生活中找出哪裏出了問題!

[我對Java Beans一無所知;這可能是我的問題。請隨意推薦我對這項技術進行一些學習:-)我還沒有,原因很簡單,我有其他事情要處理我的時間。但是,如果它是必要的,那麼我會這樣做:-)]

有沒有其他人有這個問題,你是如何解決它?

+0

步驟錯誤的代碼行 - >你得到了不同版本的Javamail的代碼。將代碼與jar匹配。 – RealSkeptic

+0

謝謝,但我有JavaMail的正確來源,它是有問題的javax.activation源。我有java版本1.6,顯然包括JAF 1.1,顯然,我有這個來源。這就是爲什麼我難以置信的一面。無論如何,我的問題實際上是否其他人有問題讓觀看者顯示html body,以及他們做了些什麼。誰能幫忙? – skiaddict1

回答

0

自JDK 1.6以來,JavaBeans激活框架(JAF)已包含在JDK中。您可以在OpenJDK repository的最新版本中找到源代碼。

當JAF被包含在JDK中時,沒有包含樣本查看器。您可以使用download the standalone JAF 1.1.1 release,其中包含示例查看器,並將其包含在您的CLASSPATH中。

而且,爲了清楚起見,這些都是樣本查看器,對於JavaMail sample programs可能已經足夠好了,但對其他許多方面來說並不好。特別是,文本查看器將所有文本顯示爲純文本。您可以通過將SimpleClient附帶的simple.mailcap文件更改爲使用「text/*」來獲得相同的效果。

+0

感謝您的信息和鏈接,我會繼續關注它:-) – skiaddict1