यहां आपकी मशीन से HTML ईमेल भेजने का एक उदाहरण है। यह माना जाता है कि आपका localhost इंटरनेट से जुड़ा है और ईमेल भेजने में सक्षम है। सुनिश्चित करें कि Java Email API पैकेज और JAF पैकेज से सभी JAR फ़ाइलें CLASSPATH में उपलब्ध हैं।
यह उदाहरण पिछले वाले के समान है, सिवाय इसके कि यहां हम setContent() मेथड का उपयोग कर रहे हैं जिसका दूसरा तर्क "text/html" है यह निर्दिष्ट करने के लिए कि संदेश में HTML कंटेंट शामिल है।
इस उदाहरण का उपयोग करके, आप जितना चाहें उतना बड़ा HTML कंटेंट भेज सकते हैं।
उदाहरण: SendHtmlEmail.jsp
<%@ page import="java.io.*,java.util.*,javax.mail.*" %>
<%@ page import="javax.mail.internet.*,javax.activation.*" %>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%
String result;
// प्राप्तकर्ता का ईमेल आईडी उल्लेख करना आवश्यक
String to = "abcd@gmail.com";
// प्रेषक का ईमेल आईडी उल्लेख करना आवश्यक
String from = "mcmohd@gmail.com";
// मान लें कि आप लोकलहोस्ट से ईमेल भेज रहे हैं
String host = "localhost";
// सिस्टम प्रॉपर्टीज ऑब्जेक्ट प्राप्त करें
Properties properties = System.getProperties();
// मेल सर्वर सेटअप करें
properties.setProperty("mail.smtp.host", host);
// डिफ़ॉल्ट Session ऑब्जेक्ट प्राप्त करें
Session mailSession = Session.getDefaultInstance(properties);
try {
// डिफ़ॉल्ट MimeMessage ऑब्जेक्ट बनाएं
MimeMessage message = new MimeMessage(mailSession);
// From: हेडर फील्ड सेट करें
message.setFrom(new InternetAddress(from));
// To: हेडर फील्ड सेट करें
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
// Subject: हेडर फील्ड सेट करें
message.setSubject("This is the Subject Line!");
// वास्तविक HTML संदेश भेजें, जितना बड़ा आप चाहें
message.setContent("<h1>This is actual message</h1>", "text/html");
// संदेश भेजें
Transport.send(message);
result = "Sent message successfully....";
} catch (MessagingException mex) {
mex.printStackTrace();
result = "Error: unable to send message....";
}
%>
<html>
<head>
<title>Send HTML Email using JSP</title>
</head>
<body>
<center>
<h1>Send Email using JSP</h1>
</center>
<p align="center">
<% out.println("Result: " + result + "\n"); %>
</p>
</body>
</html>
मुख्य बिंदु
- Content-Type:
text/htmlब्राउज़र/ईमेल क्लाइंट को HTML रेंडर करने का निर्देश देता है। - पूर्ण HTML: आप पूर्ण HTML दस्तावेज़ (
<html><body>...</body></html>) या फ्रैगमेंट्स भेज सकते हैं। - इनलाइन इमेजेज: CID रेफरेंस के साथ अतिरिक्त MimeBodyPart की आवश्यकता होती है (
messageBodyPart.setContentID("<image1>"))। - बहु-भाग विकल्प: सादे टेक्स्ट और HTML दोनों संस्करण भेजने के लिए
MimeMultipart("alternative")का उपयोग करें।
बहु-भाग विकल्प उदाहरण (टेक्स्ट + HTML)
Multipart multipart = new MimeMultipart("alternative");
BodyPart textPart = new MimeBodyPart();
textPart.setText("Plain text version");
BodyPart htmlPart = new MimeBodyPart();
htmlPart.setContent("<h1>HTML version</h1>", "text/html");
multipart.addBodyPart(textPart);
multipart.addBodyPart(htmlPart);
message.setContent(multipart);