2012-12-17 33 views
0

我有一個運行帶有Java Server Pages的Java的網頁。我讓用戶確定他想要發送電子郵件的其他用戶,然後進入我的方法,檢查他們的郵件地址。之後,我會希望客戶郵件程序打開預填充標籤(To,CC,BCC)。通過Web打開郵件客戶端(Java - Spring)

目前我使用Desktop.getDesktop().mail()。它在我的電腦上的測試服務器上工作得非常好,但不在我們的網絡服務器上。它產生一個「空指針異常」(我猜沒有郵件客戶端可以在服務器上找到)。

如果我只是發送mailto作爲函數的返回地址:return mailto:[email protected][email protected],郵件客戶端被打開,但用戶也在webbrowser中獲得空白頁面!不安靜我想要的。

我發現沒有解決方案打開web客戶端,從網絡搜索計算器...

回答

0

你可以用一些JavaScript這樣做:

<html> 
<head> 
</head> 
<body> 
<a href="#" id="mailLink">Mail</a> 
<script> 
document.getElementById("mailLink").onclick = function() { 
    window.location = "mailto:[email protected][email protected]"; 
} 
</script> 
</body> 
</html> 

如果地址不知道這個階段,你既可以加載相同頁面,並使用一些jQuery代碼:

$(document).ready(function() { 
    window.location = "mailto:[email protected][email protected]"; 
}); 

,或只與一個AJAX調用加載的電子郵件地址:

$.ajax({ 
    url: "mail.data", 
    cache: false 
}).done(function(data) { 
    window.location = data; 
}); 
+0

是的,但郵件沒有在這一步知道。它們將在servlet中提取,而不是jsp。 – DonMarco

相關問題