Cześć wszystkim ! Zawsze wyrzucałem swoje wyjątki przez zapis throw new KnowledgeNotFoundException
.
Natomiast gdy użyłem JavaMailSender -musiałbyś obsłużyć wyjątek MessagingException, zrobiłem jak zawsze, przez throw. natomiast to trafiło do dużej ilości serwisów i kontrolerów i team lead kazał mi to zamienić. Zrobiłem przez try-catch i e.printStackTrace(), lecz nie jestem pewien czy jest to akceptowane na realnych projektach w prod branch.
Co sądzicie, Czy musiałbym zmienić obsługę MessagingException, albo zostawić tak?
JavaMailConfig.class
@Bean
public JavaMailSender getJavaMailSender() {
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
mailSender.setHost(host);
mailSender.setPort(port);
mailSender.setUsername(username);
mailSender.setPassword(password);
mailSender.setDefaultEncoding("ISO-8859-2");
Properties props = mailSender.getJavaMailProperties();
props.put("mail.transport.protocol", protocol);
props.put("mail.smtp.auth", isAuth);
props.put("mail.smtp.starttls.enable", isStartTlsEnable);
return mailSender;
}
MailSenderIml.class
@Override
public void sendMail(String to, String subject, String context) {
MimeMessage message = javaMailSender.createMimeMessage();
MimeMessageHelper helper;
try {
helper = new MimeMessageHelper(message, true);
helper.setFrom(sentFrom);
helper.setTo(to);
helper.setSubject(subject);
helper.setText(context, true);
} catch (MessagingException e) {
e.printStackTrace();
}
javaMailSender.send(message);
}