В моей заявке я хочу отправить HTML-шаблон на электронную почту пользователей. Everithing работает правильно, когда я программно создаю HTML, но сейчас я хочу прочитать текст HTML из файла в моем приложении и отправить его. Я получаю FileNotFoundException, и я не знаю, как найти этот файл .txt. Смотрите код:
public void sendAccountActivationLinkToBuyer(String destinationEmail,
String name) {
// Destination of the email
String to = destinationEmail;
String from = "myEmail@gmail.com";
try {
Message message = new MimeMessage(mailSession);
// From: is our service
message.setFrom(new InternetAddress(from));
// To: destination given
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(to));
message.setSubject("Registration succeded");
// Instead of simple text, a .html template should be added here!
message.setText(generateActivationLinkTemplate());
Date timeStamp = new Date();
message.setSentDate(timeStamp);
Transport.send(message);
} catch (MessagingException e) {
throw new RuntimeException(e);
}
}
private String generateActivationLinkTemplate() {
String htmlText = "";
try {
File f = new File("");
BufferedReader br = new BufferedReader(new InputStreamReader(f.getClass().getResourceAsStream("./web/emailActivationTemplate.txt")));
String content = "";
String line = null;
while ((line = br.readLine()) != null) {
content += line;
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return htmlText;
}
Второй метод вызывает у меня проблемы, я не могу найти этот .txt файл. Что я должен делать?
Я создал папку web внутри папки WebContent, теперь она находится рядом с META-INF и WEB-INF (я думаю, что это подходящее место для хранения моих изображений, шаблонов, css ...) Внутри папки я вручную вставил emailActivationTemplate.txt Теперь мне нужно прочитать с него. Есть идеи?
Это вывод консоли:
SEVERE: java.io.FileNotFoundException:. \ Web \ emailActivationTemplate.txt (система не может найти указанный путь)