| Auszug |
|---|
|
Nuclos MailProvider: send, receive, NuclosMail, Attachment, SMTP, POP3, Recipients CC BCC, ReplyTo. |
Sprache: Deutsch · English
MailProvider
E-Mails aus Regeln senden und empfangen – send(), receive() und die NuclosMail-Klasse.
| Status |
|---|
| colour | Blue |
|---|
| title | Entwickler |
|---|
|
| Status |
|---|
| colour | Green |
|---|
| title | Stand: Jul 2026 |
|---|
|
| Status |
|---|
| colour | Grey |
|---|
| title | gilt fuer Nuclos 4.2026.x |
|---|
|
Wozu dient der MailProvider?
Der MailProvider stellt Methoden zum Versenden und Abholen von E-Mails bereit.
send(mail)
Verschickt eine NuclosMail.
Allgemein
Der MailProvider ist eine Hilfsklasse, die alle notwendigen Methoden zum Verschicken von Emails zur Verfügung stellt.
Funktionsumfang
...
Diese Methode ermöglicht das Verschicken einer NuclosMail (siehe unten)
...
public static void send(NuclosMail mail) throws BusinessException; |
| Codeblock |
|---|
|
package org.nuclet.businessentity;
import org.nuclet.printout.FormularAbschlussAuftragPO;
import org.nuclos.api.common.NuclosFile;
import org.nuclos.api.mail.NuclosMail;
import org.nuclos.api.provider.PrintoutProvider;
import org.nuclos.api.provider.MailProvider;
public class AbschlussAuftragRegel implements InsertFinalRule {
public void insertFinal(InsertContext context) throws BusinessException |
...
Ein Beispiel finden Sie hier.
...
Diese Methode kann zum Abholen von Emails von einem Server verwendet werden.
{
Auftrag a = context.getBusinessObject(Auftrag.class);
NuclosFile result = PrintoutProvider.run(FormularAbschlussAuftragPO.Deutsch_PDF, a.getId());
NuclosMail newMail = new NuclosMail();
newMail.setSubject("Abschluss eines Auftrags");
newMail.setFrom("automatic@meineFirma.de");
newMail.addRecipient("Max.Mustermann@meinKunde.de");
newMail.setMessage("Der Auftrag wurde erfolgreich abgeschlossen.");
newMail.addAttachment(result);
MailProvider.send(newMail);
}
} |
receive(bDeleteMails)
Holt E-Mails vom Server. Mit true werden sie nach dem Abruf gelöscht, mit false bleiben sie erhalten (und kommen beim nächsten Aufruf erneut).
...
public static List<NuclosMail> receive(boolean bDeleteMails) |
...
throws BusinessException; |
Als Parameter "bDeleteMails" kann der Benutzer festlegen, ob die gefundenen Emails nach dem Abrufen vom Server gelöscht werden sollen. Bei false bleiben die Mails auf dem Server erhalten, werden aber beim nächsten Aufruf von receive() wieder mitgeliefert.
Ein Beispiel finden Sie hier.
| Codeblock |
|---|
|
package org.nuclet.businessentity;
import java.util.List;
import org.nuclos.api.annotation.Rule;
import org.nuclos.api.common.NuclosFile;
import org.nuclos.api.context.GenerateContext;
import org.nuclos.api.exception.BusinessException;
import org.nuclos.api.mail.NuclosMail;
import org.nuclos.api.provider.MailProvider;
import org.nuclos.api.rule.GenerateRule;
/** @name
* @description
* @usage
* @change
*/
@Rule(name="GetEmails", description="GetEmails")
public class GetEmails implements GenerateRule {
public void generate(GenerateContext context) throws BusinessException {
Materialbestellung bestellung = context.getTargetObject(Materialbestellung.class);
List<NuclosMail> allMails = MailProvider.receive(true);
for (NuclosMail mail : allMails) {
for (NuclosFile file : mail.getAttachments()) {
bestellung.insertAttachment(
file, "Bestätigungsmail von '" + mail.getFrom() + "' mit Betreff '" + mail.getSubject() + "'");
}
}
}
} |
NuclosMail
Die API-Klasse NuclosMail nimmt alle Bestandteile einer Standard-E-Mail auf:
| Attribut | Bedeutung |
|---|
| From | Absender (Default aus Systemparameter SMTP Sender). |
| Recipients / CC / BCC | Empfänger als String, mehrere per Semikolon getrennt. |
| Subject / Message | Betreff und Inhalt. |
| ReplyTo | Antwortadresse. |
| Headers |
NuclosMail
Die NuclosMail-Klasse befindet sich in der API, kann alle relevanten Daten einer Standard Email aufnehmen und über den MailProvider verschickt werden.
| Attribut | Beschreibung |
|---|
| From | Email-Adresse des Senders. Wird vom Benutzer kein expliziter Wert angegeben, wird der Default-Wert aus den System-Parametern verwendet. Diese können in Nuclos unter Administration -> Parameter -> SMTP Sender |
| Recipients | Liste der Empfänger. An dieser Stellte wird die Email-Adresse des Empfängers als String übergeben. Mit Semikolons getrennt, können auch mehrere Empfänger übergeben werden. |
| RecipientsCC | Liste der CC-Empfänger. An dieser Stellte wird die Email-Adresse des CC-Empfängers als String übergeben. Mit Semikolon getrennt, können auch mehrere Empfänger übergeben werden. |
| RecipientsBCC | Liste der BCC-Empfänger. An dieser Stellte wird die Email-Adresse des BCC-Empfängers als String übergeben. Mit Semikolon getrennt, können auch mehrere Empfänger übergeben werden. |
| Subject | Betreff der Email |
| Message | Inhalt der Email |
| ReplyTo | Hier kann eine Email-Adresse angegeben werden, die im Falle der Beantwortung adressiert wird. |
| Headers | Optional können hier Header-Informationen wie Charset oder Content-Type angegeben werden. Default ist: "z.B. Charset/Content-Type (Default | text/plain; charset=UTF-8 | "). |
| Attachment | Liste von | Anhängen des Type NuclosFile. NuclosFile-Anhängen. |
| Info |
|---|
|
SMTP/POP3-Zugangsdaten werden in den Systemparametern hinterlegt (Administration → Parameter). |
Verwandte Seiten
BusinessObjectProvider
BOs schreiben.
Öffnen →
DatasourceProvider
Datenquellen ausführen.
Öffnen →