Hallo,
ich habe bis vor kurzem immer eine Methode zum Emailversand gehabt, die so etwa aussah:
Aufrufen tue ich das derzeit so:
EmailHelperServiceClass.setupEmailSetting(emailSetting,
emailHelperService.generateEmailReceiverFromAddressList(emailSchedule.getEmailTo()),
emailHelperService.generateEmailReceiverFromAddressList(emailSchedule.getEmailCc()),
emailHelperService.generateEmailReceiverFromAddressList(emailSchedule.getEmailBcc()),
emailSchedule.getEmailSubject(), emailSchedule.getEmailText(), "text/html", null);
Das funktioniert auch, aber nun benötige ich innerhalb dieser Klasse eine Referenz zu einem EJB.
Eclipse gibt mir einen Fehler, da das EJB ebenfalls static sein soll. Allerdings erhalte ich dann beim Aufruf eine NPE von diesem EJB
1) Warum muss diese Methode überhaupt static sein?
2) Kann ich diese Methode nicht auf über ein Interface ansteuern, wie ich es bei allen anderen EJB mache?
Danke
ich habe bis vor kurzem immer eine Methode zum Emailversand gehabt, die so etwa aussah:
Java:
public static boolean setupEmailSetting(EmailSetting emailSetting, String[] to, String[] cc, String[] bcc,
String subject, String text, String mimeType, List<EmailAttachment> attachments) {
...
EmailHelperServiceClass emailService = new EmailHelperServiceClass(configuration);
EmailHelperClass email = new EmailHelperClass();
email.setFrom(emailSetting.getSendAddress());
email.setTo(to);
email.setCc(cc);
email.setBcc(bcc);
email.setSubject(subject);
if (text == null)
text = "";
email.setText(text);
email.setMimeType(mimeType);
// Attachments
if (attachments != null)
for (EmailAttachment attachment : attachments) {
email.addAttachment(attachment);
}
if (emailService.sendEmail(email) == true)
// Hier passiert das eigentliche senden (Transport etc.)
return true;
return false;
}
Aufrufen tue ich das derzeit so:
EmailHelperServiceClass.setupEmailSetting(emailSetting,
emailHelperService.generateEmailReceiverFromAddressList(emailSchedule.getEmailTo()),
emailHelperService.generateEmailReceiverFromAddressList(emailSchedule.getEmailCc()),
emailHelperService.generateEmailReceiverFromAddressList(emailSchedule.getEmailBcc()),
emailSchedule.getEmailSubject(), emailSchedule.getEmailText(), "text/html", null);
Das funktioniert auch, aber nun benötige ich innerhalb dieser Klasse eine Referenz zu einem EJB.
Eclipse gibt mir einen Fehler, da das EJB ebenfalls static sein soll. Allerdings erhalte ich dann beim Aufruf eine NPE von diesem EJB
1) Warum muss diese Methode überhaupt static sein?
2) Kann ich diese Methode nicht auf über ein Interface ansteuern, wie ich es bei allen anderen EJB mache?
Danke