JavaMail API ব্যবহার করার সময়, ইমেইল পাঠানোর বা গ্রহণের প্রক্রিয়ায় বিভিন্ন ধরনের errors বা সমস্যার মুখোমুখি হতে হতে পারে। যেমন, SMTP server authentication issues, invalid recipient addresses, connection timeouts, বা incorrect configurations। এই ধরনের সমস্যাগুলি সঠিকভাবে handle করা উচিত যাতে আপনার অ্যাপ্লিকেশন ব্যর্থতা বা অনাকাঙ্ক্ষিত আচরণ থেকে মুক্ত থাকে।
JavaMail API তে MessagingException
এবং SendFailedException
এর মতো exception ক্লাস রয়েছে যা ইমেইল প্রেরণ বা গ্রহণ করার সময় ভুল বা সমস্যার কারণে ধরা পড়ে। এই exceptions ব্যবহার করে আমরা ইমেইল সিস্টেমের সমস্যাগুলো ধরতে পারি এবং উপযুক্ত ব্যবস্থা নিতে পারি।
MessagingException
: এটি JavaMail API এর একটি সাধারণ exception যা অনেক ধরনের ইমেইল সম্পর্কিত ত্রুটির জন্য ব্যবহৃত হয়, যেমন সার্ভার কানেকশন সমস্যা, ইমেইল অ্যাড্রেস ভুল, এবং অন্যান্য।SendFailedException
: এটি একটি উপশ্রেণী MessagingException
এর, যা ইমেইল পাঠানোর সময় ঘটে এবং এটি যখন প্রাপক ইমেইল অ্যাড্রেস ভুল থাকে বা অন্য কোনো সমস্যা হয় তখন উঠে।AddressException
: যদি প্রাপকের ইমেইল ঠিকানা ভুল হয়, তবে এই exception ধরা পড়বে।AuthenticationFailedException
: SMTP অথেনটিকেশন ব্যর্থ হলে এই exception ধরা পড়বে।এখানে একটি উদাহরণ দেয়া হলো যেখানে JavaMail API ব্যবহার করে ইমেইল প্রেরণ করা হচ্ছে এবং বিভিন্ন ত্রুটি বা সমস্যার জন্য সঠিক error handling করা হচ্ছে।
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
public class SendEmailWithErrorHandling {
public static void main(String[] args) {
// SMTP সার্ভারের প্রপার্টি সেটআপ
Properties properties = new Properties();
properties.put("mail.smtp.host", "smtp.gmail.com"); // SMTP সার্ভার (Gmail)
properties.put("mail.smtp.port", "587"); // SMTP পোর্ট (TLS)
properties.put("mail.smtp.auth", "true"); // SMTP অথেনটিকেশন
properties.put("mail.smtp.starttls.enable", "true"); // TLS এনাবল করা
final String username = "your-email@gmail.com";
final String password = "your-email-password";
// সেশন তৈরি করা
Session session = Session.getInstance(properties, new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
try {
// মেইল মেসেজ তৈরি করা
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("your-email@gmail.com"));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("recipient-email@example.com"));
message.setSubject("Test Email from Java with Error Handling");
// মেইল কনটেন্ট সেট করা
message.setText("Hello, this is a test email sent from Java with proper error handling.");
// মেইল পাঠানো
Transport.send(message);
System.out.println("Email Sent Successfully!");
} catch (AddressException e) {
System.err.println("Invalid email address: " + e.getMessage());
} catch (SendFailedException e) {
System.err.println("Failed to send email: " + e.getMessage());
// অতিরিক্ত লজিক এখানে যোগ করা যেতে পারে যেমন পুনরায় চেষ্টা করা
} catch (AuthenticationFailedException e) {
System.err.println("Authentication failed. Please check your username/password: " + e.getMessage());
} catch (MessagingException e) {
System.err.println("An error occurred while sending the email: " + e.getMessage());
e.printStackTrace(); // আরও বিস্তারিত ত্রুটি তথ্য দেখানোর জন্য
} catch (Exception e) {
System.err.println("Unexpected error occurred: " + e.getMessage());
}
}
}
AddressException
: এটি প্রেরক বা প্রাপকের ইমেইল ঠিকানা ভুল হলে ঘটে। উদাহরণস্বরূপ, যদি আপনি প্রাপক হিসেবে ভুল ঠিকানা ব্যবহার করেন, যেমন recipient-email@example
, তাহলে এটি এই exception ছুঁড়ে দিবে।SendFailedException
: এটি ইমেইল পাঠানোর সময় ঘটে যখন কোনো প্রাপকের ঠিকানা ভুল থাকে অথবা কোনো সার্ভার সমস্যা থাকে। উদাহরণস্বরূপ, যদি আপনার ইমেইল সার্ভার থেকে মেইল পাঠানোর সময় প্রাপক খুঁজে না পায়, তবে এটি এই exception তৈরি করবে।AuthenticationFailedException
: যদি আপনি ইমেইল সার্ভারে লগইন করার সময় ভুল পাসওয়ার্ড বা ইউজারনেম ব্যবহার করেন, তবে এই exception আছড়ে পড়বে।MessagingException
: এটি মূল ত্রুটি কেস এবং সাধারণত JavaMail API এর অপ্রত্যাশিত ত্রুটির জন্য ব্যবহৃত হয়। এই exception অনেক ধরনের ছোটখাটো ত্রুটি এবং সমস্যার জন্য ব্যবহৃত হতে পারে যেমন সার্ভার কানেকশন সমস্যা, ইমেইল সাইজ বেশি হওয়া, ইত্যাদি।Exception
: JavaMail API এর বাইরে যদি কোন অপ্রত্যাশিত ত্রুটি ঘটে, তাহলে এটি সাধারণ Exception
ধরা হবে।System.err.println()
ব্যবহার করে ত্রুটির বার্তা প্রিন্ট করতে পারেন। আরও উন্নত লগিংয়ের জন্য, Logger
ক্লাস ব্যবহার করা যেতে পারে।SendFailedException
আসলে আপনি পুনরায় সার্ভারের সাথে যোগাযোগের চেষ্টা করতে পারেন।SendFailedException
হলে বিশেষভাবে প্রাপকের ঠিকানা পরীক্ষা করা যেতে পারে।JavaMail API তে Error Handling অত্যন্ত গুরুত্বপূর্ণ, কারণ এটি বিভিন্ন ধরনের ইমেইল পাঠানোর ত্রুটি বা সমস্যাকে সুন্দরভাবে পরিচালনা করতে সাহায্য করে। JavaMail API তে MessagingException, SendFailedException, AddressException ইত্যাদি exceptions রয়েছে যেগুলি ইমেইল পাঠানোর সময় যে কোনো ত্রুটি ঘটলে ধরা পড়ে। সঠিক exception handling প্রয়োগ করে আপনি ইমেইল প্রেরণের প্রক্রিয়ায় কোনো ভুল বা ব্যর্থতার ক্ষেত্রে উপযুক্ত পদক্ষেপ নিতে পারেন।
JavaMail API ব্যবহার করার সময় কিছু সাধারণ ত্রুটি (errors) এবং Exception Handling (এক্সসেপশন হ্যান্ডলিং) খুবই গুরুত্বপূর্ণ, কারণ ইমেইল পাঠানোর বা গ্রহণ করার সময় অনেক ধরনের সমস্যা বা ত্রুটি ঘটতে পারে। যেমন, সঠিক সার্ভার কনফিগারেশন না থাকা, ইন্টারনেট কানেকশন সমস্যা, প্রমাণীকরণ ত্রুটি ইত্যাদি।
এখানে আমরা কিছু সাধারণ JavaMail API Errors এবং Exception Handling এর পদ্ধতি আলোচনা করব।
JavaMail API ব্যবহার করার সময় কিছু সাধারণ ত্রুটি হতে পারে। এগুলির মধ্যে রয়েছে:
AuthenticationFailedException:
Example:
catch (AuthenticationFailedException e) {
System.out.println("Authentication failed: Invalid username or password");
}
MessagingException:
Example:
catch (MessagingException e) {
e.printStackTrace();
System.out.println("Error while sending email.");
}
UnknownHostException:
Example:
catch (UnknownHostException e) {
System.out.println("Server not found: " + e.getMessage());
}
TimeoutException:
Example:
catch (TimeoutException e) {
System.out.println("Connection timed out. Please check your network or server status.");
}
SSLHandshakeException:
Example:
catch (SSLHandshakeException e) {
System.out.println("SSL Handshake failed: " + e.getMessage());
}
SendFailedException:
Example:
catch (SendFailedException e) {
System.out.println("Email send failed: " + e.getMessage());
}
JavaMail API তে এক্সসেপশন হ্যান্ডলিং খুবই গুরুত্বপূর্ণ। ইমেইল পাঠানোর বা গ্রহণের সময় ত্রুটি সমাধান করতে হলে আপনি সঠিকভাবে এক্সসেপশন হ্যান্ডলিং করতে পারেন। নিচে একটি উদাহরণ দেখানো হলো যেখানে JavaMail API এর বিভিন্ন এক্সসেপশন হ্যান্ডলিং করা হয়েছে।
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
public class SendEmailWithExceptionHandling {
public static void main(String[] args) {
// SMTP সার্ভার কনফিগারেশন
String host = "smtp.gmail.com";
String from = "your-email@gmail.com";
String password = "your-email-password";
String to = "recipient@example.com";
Properties properties = new Properties();
properties.put("mail.smtp.host", host);
properties.put("mail.smtp.port", "587");
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true");
// সেশন তৈরি করা
Session session = Session.getInstance(properties, new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(from, password);
}
});
try {
// MimeMessage তৈরি করা
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject("Test Email with Exception Handling");
message.setText("This is a test email with exception handling using JavaMail API.");
// ইমেইল পাঠানো
Transport.send(message);
System.out.println("Email sent successfully.");
} catch (AuthenticationFailedException e) {
System.out.println("Authentication failed: " + e.getMessage());
} catch (MessagingException e) {
System.out.println("Error while sending email: " + e.getMessage());
e.printStackTrace();
} catch (UnknownHostException e) {
System.out.println("SMTP server not found: " + e.getMessage());
} catch (Exception e) {
System.out.println("An unexpected error occurred: " + e.getMessage());
e.printStackTrace();
}
}
}
Exception
দিয়ে সমস্ত সাধারণ ত্রুটি হ্যান্ডল করা হয়েছে।JavaMail API ব্যবহার করে ইমেইল পাঠানোর বা গ্রহণ করার সময় Exception Handling খুবই গুরুত্বপূর্ণ। সাধারণ ত্রুটি যেমন AuthenticationFailedException, MessagingException, UnknownHostException ইত্যাদি ঘটতে পারে, এবং সঠিকভাবে এক্সসেপশন হ্যান্ডলিং করা এই ত্রুটিগুলোর সমাধান করতে সহায়ক। JavaMail API তে এই এক্সসেপশনগুলো ক্যাচ করে আপনি আপনার অ্যাপ্লিকেশনকে আরও স্থিতিশীল এবং ব্যবহারকারী বান্ধব করতে পারেন।
JavaMail API-তে ইমেইল পাঠানোর সময় SMTPAddressFailedException এবং MessagingException এর মতো একাধিক ধরনের Exception হতে পারে। এই দুইটি Exception হল ইমেইল পাঠানোর সময় সাধারণত পাওয়া যায় এবং এগুলির সঠিকভাবে হ্যান্ডলিং করা অ্যাপ্লিকেশনের স্থিতিশীলতা এবং নির্ভরযোগ্যতা নিশ্চিত করতে সহায়ক।
MessagingException
হল একটি সাধারণ JavaMail API Exception যা মেইল বার্তা সম্পর্কিত কোনো ত্রুটি ঘটলে থ্রো করা হয়। এটি সাধারণত বিভিন্ন ইমেইল সমস্যা বা অপারেশন সংক্রান্ত ত্রুটি চিহ্নিত করে, যেমন মেইল তৈরি, মেইল পাঠানো, বা ইমেইল সংযোগে সমস্যা।
SMTPAddressFailedException
হল MessagingException এর একটি উপ-ক্লাস, যা ইমেইল প্রেরণ করার সময় প্রাপক বা প্রেরকের ইমেইল ঠিকানা ভুল হলে বা না পাওয়া গেলে সৃষ্ট হয়। এটি SMTP (Simple Mail Transfer Protocol) এর মাধ্যমে ইমেইল পাঠানোর সময় ইমেইল ঠিকানার সঠিকতা যাচাই করতে ব্যবহৃত হয়। এর মাধ্যমে, আপনি ইমেইল ঠিকানা যদি ভুল হয় বা অন্য কোনো SMTP সম্পর্কিত সমস্যা হয়, তাহলে একটি স্পেসিফিক ত্রুটি বার্তা পাবেন।
নিচে একটি উদাহরণ দেওয়া হয়েছে যেখানে ইমেইল পাঠানোর সময় MessagingException এবং SMTPAddressFailedException হ্যান্ডল করা হয়েছে:
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
public class SendEmailExample {
public static void main(String[] args) {
// SMTP Server Properties
Properties properties = new Properties();
properties.put("mail.smtp.host", "smtp.gmail.com");
properties.put("mail.smtp.port", "587");
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true"); // TLS
// Gmail SMTP Authentication Details
String username = "your-email@gmail.com";
String password = "your-password";
// Session Setup
Session session = Session.getInstance(properties, new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
try {
// Create MimeMessage
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("your-email@gmail.com"));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("invalid-email@example.com"));
message.setSubject("Test Email");
// Set the email body text
message.setText("Hello, this is a test email.");
// Send message
Transport.send(message);
System.out.println("Email sent successfully!");
} catch (SMTPAddressFailedException e) {
System.err.println("SMTP Address Failed: " + e.getMessage());
} catch (MessagingException e) {
System.err.println("Messaging Exception occurred: " + e.getMessage());
e.printStackTrace();
} catch (Exception e) {
System.err.println("An unexpected error occurred: " + e.getMessage());
e.printStackTrace();
}
}
}
SMTPAddressFailedException
ফেলে দেওয়া হবে। এখানে, আমরা এই ত্রুটিটি ক্যাচ করার জন্য আলাদা একটি catch
ব্লক ব্যবহার করেছি, এবং ত্রুটির বার্তা প্রিন্ট করছি।invalid-email@example.com
) ব্যবহার করেন, এটি SMTPAddressFailedException এর মাধ্যমে ত্রুটি হিসেবে ধরা পড়বে।ধরা যাক আপনি একটি ভুল ইমেইল ঠিকানা ব্যবহার করছেন (যেমন: invalid-email@example.com
), তাহলে এই কোডটি সেই ত্রুটিটি SMTPAddressFailedException হ্যান্ডল করবে এবং একটি স্পেসিফিক ত্রুটি বার্তা প্রদর্শন করবে।
try {
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("invalid-email@example.com"));
Transport.send(message);
} catch (SMTPAddressFailedException e) {
System.out.println("Invalid recipient address: " + e.getMessage());
} catch (MessagingException e) {
System.out.println("General MessagingException: " + e.getMessage());
}
JavaMail API ব্যবহার করার সময় যদি আপনি Invalid Email Address বা Authentication Errors সম্মুখীন হন, তাহলে এটি সাধারণত ইনপুট করা ইমেইল বা লগইন তথ্যের ভুল, অথবা সার্ভারের সাথে সমস্যা হতে পারে। এই ধরনের ত্রুটি সনাক্ত এবং সমাধান করার জন্য কিছু সাধারণ কারণ এবং সমাধান দেওয়া হল।
Invalid Email Address ত্রুটি সাধারণত তখন ঘটে যখন প্রেরক বা প্রাপক ইমেইল ঠিকানা সঠিকভাবে ফরম্যাট করা হয়নি। ইমেইল ঠিকানা ভুল বা অবৈধ হলে ইমেইল পাঠানোর চেষ্টা করার সময় JavaMail API একটি AddressException
ছুড়ে দিতে পারে।
@gmail.cm
এর পরিবর্তে @gmail.com
)।username@example.com
) আছে।String email = "invalid-email.com"; // ভুল ইমেইল ঠিকানা
try {
InternetAddress emailAddr = new InternetAddress(email);
emailAddr.validate(); // ইমেইল ঠিকানা বৈধতা পরীক্ষা করা
} catch (AddressException ex) {
System.out.println("Invalid email address: " + email);
}
Authentication Error সাধারণত ঘটে যখন ইমেইল সার্ভারে লগইন করতে গিয়ে সমস্যার সম্মুখীন হন। এই ত্রুটির মূল কারণ হতে পারে ভুল ব্যবহারকারী নাম (ইমেইল) বা পাসওয়ার্ড, অথবা সার্ভার সেটিংস যেমন প্রমাণীকরণ (authentication) সমস্যা।
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
public class EmailSender {
public static void main(String[] args) {
// SMTP Server Properties
String host = "smtp.gmail.com";
String username = "your-email@gmail.com"; // আপনার ইমেইল অ্যাড্রেস
String password = "your-app-password"; // অ্যাপ পাসওয়ার্ড (যদি 2-step verification চালু থাকে)
Properties properties = new Properties();
properties.put("mail.smtp.host", host);
properties.put("mail.smtp.port", "587");
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true");
// Session Setup with Authentication
Session session = Session.getInstance(properties, new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
try {
// MimeMessage তৈরি করা
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("your-email@gmail.com"));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("recipient-email@example.com"));
message.setSubject("Test Email");
// ইমেইল কন্টেন্ট
message.setText("Hello, this is a test email sent using JavaMail API.");
// ইমেইল পাঠানো
Transport.send(message);
System.out.println("Email sent successfully!");
} catch (AuthenticationFailedException e) {
System.out.println("Authentication failed. Check your username or password.");
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
javax.mail.Authenticator
ব্যবহার করে ইমেইল সার্ভারে লগইন করার জন্য সঠিক ইউজারনেম এবং পাসওয়ার্ড প্রদান করা হয়েছে।JavaMail API ব্যবহার করে Error Logging এবং Error Handling একটি গুরুত্বপূর্ণ বিষয়, বিশেষ করে যখন আপনি মেইল পাঠাচ্ছেন বা গ্রহণ করছেন এবং কোন ত্রুটি (error) ঘটলে তা ট্র্যাক এবং সমাধান করা প্রয়োজন। এখানে আমি একটি Practical Example প্রদান করছি যেখানে JavaMail API ব্যবহার করে ই-মেইল পাঠানোর সময় ত্রুটি সনাক্ত করা হবে এবং সেই ত্রুটির জন্য লগিং ও হ্যান্ডলিং করা হবে।
try-catch
ব্লক ব্যবহার করে সেই ত্রুটিকে ধরতে পারি।JavaMail API ব্যবহার করার জন্য আপনাকে javax.mail
লাইব্রেরি প্রয়োজন হবে। সাধারণত এটি Maven বা Gradle ব্যবহার করে ইন্টিগ্রেট করা যায়।
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
</dependency>
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
import java.util.logging.*;
public class SendEmailWithLogging {
// Logger সেটআপ করা
private static final Logger logger = Logger.getLogger(SendEmailWithLogging.class.getName());
public static void main(String[] args) {
// SMTP সার্ভারের জন্য প্রপার্টি সেট করা
Properties properties = new Properties();
properties.put("mail.smtp.host", "smtp.gmail.com"); // SMTP সার্ভার (Gmail)
properties.put("mail.smtp.port", "587"); // SMTP পোর্ট (TLS এর জন্য 587)
properties.put("mail.smtp.auth", "true"); // অথেন্টিকেশন সক্রিয় করা
properties.put("mail.smtp.starttls.enable", "true"); // TLS সক্রিয় করা
// JavaMail সেশন তৈরি করা
Session session = Session.getInstance(properties, new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("your-email@gmail.com", "your-app-password");
}
});
try {
// মেইল মেসেজ তৈরি করা
Message message = new MimeMessage(session);
// প্রেরকের ঠিকানা
message.setFrom(new InternetAddress("your-email@gmail.com"));
// প্রাপকের ঠিকানা
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("recipient@example.com"));
// মেইলের বিষয়
message.setSubject("HTML Email from JavaMail API");
// HTML কনটেন্ট তৈরি
String htmlContent = "<h1>Welcome to JavaMail API</h1>"
+ "<p>This is a <b>HTML</b> email sent using JavaMail API.</p>"
+ "<p><a href='http://www.example.com'>Click here</a> to visit our website.</p>";
// MimeBodyPart ব্যবহার করে HTML কনটেন্ট যোগ করা
MimeBodyPart mimeBodyPart = new MimeBodyPart();
mimeBodyPart.setContent(htmlContent, "text/html");
// MIME multipart তৈরি এবং MIME body part যোগ করা
MimeMultipart mimeMultipart = new MimeMultipart();
mimeMultipart.addBodyPart(mimeBodyPart);
// MIME multipart কনটেন্ট সেট করা
message.setContent(mimeMultipart);
// মেইল পাঠানো
Transport.send(message);
System.out.println("HTML Email sent successfully!");
} catch (MessagingException e) {
// ত্রুটি ধরা হলে, লগে সেই ত্রুটির তথ্য রাখা
logger.log(Level.SEVERE, "Error while sending email: " + e.getMessage(), e);
}
}
}
Logger.getLogger(SendEmailWithLogging.class.getName())
: একটি logger তৈরি করা হয়েছে, যা SEVERE
স্তরের ত্রুটিগুলি লগ করবে।INFO
, WARNING
, FINE
, SEVERE
ইত্যাদি লগ লেভেল ব্যবহার করতে পারেন।properties.put("mail.smtp.host", "smtp.gmail.com")
: এখানে Gmail-এর SMTP সার্ভার ব্যবহার করা হয়েছে।properties.put("mail.smtp.starttls.enable", "true")
: TLS সক্রিয় করা হয়েছে, যা নিরাপদ ই-মেইল পাঠানোর জন্য দরকারি।try-catch
ব্লক ব্যবহার করে, ই-মেইল পাঠানোর সময় যদি কোনো MessagingException
ঘটে, সেটি ধরা হবে এবং Logger-এর মাধ্যমে তা লগ করা হবে।logger.log(Level.SEVERE, "Error while sending email: " + e.getMessage(), e)
: ত্রুটির পুরো স্ট্যাক ট্রেসসহ লগ করা হয়েছে, যা সমস্যার উৎস চিহ্নিত করতে সাহায্য করবে।import java.util.logging.*;
public class LogConfig {
public static void setup() {
try {
// Log file configuration
FileHandler fileHandler = new FileHandler("email_error_log.log", true);
fileHandler.setFormatter(new SimpleFormatter());
Logger logger = Logger.getLogger(SendEmailWithLogging.class.getName());
logger.addHandler(fileHandler);
} catch (Exception e) {
System.out.println("Error setting up log file: " + e.getMessage());
}
}
}
এটি LogConfig.setup()
কল করে লগ ফাইল তৈরি এবং সেটআপ করবে। true
মান ব্যবহার করলে লগ ফাইল প্রতিবার অ্যাপ্লিকেশন চালানোর পর যুক্ত হবে, পুরানো লগ ফাইলটি রাইট হবে না।
উদাহরণস্বরূপ:
SEVERE: Error while sending email: Could not connect to SMTP host
javax.mail.MessagingException: Could not connect to SMTP host
at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1955)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:646)
at javax.mail.Service.connect(Service.java:388)
at javax.mail.Service.connect(Service.java:246)
...
JavaMail API ব্যবহার করে ই-মেইল পাঠানোর সময় ত্রুটি সনাক্ত এবং লগ করা অত্যন্ত গুরুত্বপূর্ণ। এই উদাহরণে আমরা দেখেছি কিভাবে Java Logger API ব্যবহার করে ত্রুটির বিস্তারিত তথ্য লগ করা যায়। এর মাধ্যমে আপনি সহজে সমস্যাগুলির উৎস চিহ্নিত করতে পারবেন এবং ত্রুটির দ্রুত সমাধান করতে পারবেন।
Read more