aVogt
Returning Creator

FS5: Mails versenden über MailService

Jump to solution

Hallo,

wiedermal eine Frage zu FS5.

In FS4 habe ich zum versenden von Mails folgende Zeilen verwendet:

MailService mailSer = context.getConnection().getService(de.espirit.firstspirit.access.MailService.class);
MailHeader mHeader = new MailHeader(empfMail);
mHeader.replyTo = eMailErsteller;
mHeader.sender = absenderMail;
mailSer.sendMail(mHeader, betreff, mailText, "html", false, (Attachment) null);


Das hat bestens funktioniert. In FS5 bekomme ich einen Fehler => Anhang. Hatt Sich da irgendwas geändert?

Wenn ich die Methoden ohne den MailHeader (und ohne Attachment, mit Attachement muss ich mir erst was "bauen") verwende, funktioniert es auch.

Grüße
Andreas

0 Kudos
1 Solution

Accepted Solutions
Peter_Jodeleit
Crownpeak employee

Offensichtlich ist "null" als letzter Parameter nicht erlaubt. Wenn man den Code aus Java heraus aufruft, könnte man den letzten Parameter weglassen (google nach "java varargs"). In BeanShell geht das leider nicht (siehe auch diese Beiträge). Daher ist der "workaround" hier "new Attachement[0]" statt "null" zu verwenden.

Peter

View solution in original post

0 Kudos
11 Replies
maaroufi
I'm new here

Hallo Andreas,

das liegt an mailSer.sendMail(...., (Attachment) null);

Es würde sich anbieten, die MailService-Methoden ohne Attachment-Parameter zu verwenden, wenn Attachment null ist.

Freundliche Grüße

Ismail

0 Kudos
aVogt
Returning Creator

Hallo Ismail,

ok.

Ich habe die Methoden mit dem mailHeader verwendet, da darüber das replyTo setzbar war.

Leider gibt es keine sendMail-Methoden mit mailHeader und ohne Attachements.

Wie kann ich nun das replyTo setzen?

Oder die Attachements umgehen (es bracuht kein Anhang mit gesendet werden)?

Grüße

Andreas

0 Kudos

Dann null anstelle von (Attachment) null  verwenden, also den Cast weglassen

Freundliche Grüße

Ismail  

0 Kudos
aVogt
Returning Creator

Das hat auch nicht geholfen, ich bekomme immer noch den fehler => Anhang

Grüße

Andreas

0 Kudos

Folgendes Skript funktioniert bei mir einwandfrei:

....

MailService service= connection.getService(MailService.class);

MailHeader head=new MailHeader("email");

head.sender="email"

head.replyTo="email1;email2"

Attachment[] atts=null;

service.sendMail(head,"Betreff","Message", atts);

....

Freundliche Grüße

Ismail

0 Kudos
aVogt
Returning Creator

bei mir leider nicht :smileyconfused:

in einem Script JavaClient gibt es keine connection. Die hole ich über den Context.

Ich bin Projektadmin (keine SuperAdmin)

Fs 5.0.114.54807

Grüße

Andreas

0 Kudos

Was genau funktioniert jetzt nicht? Fliegt immer noch der Fehler, der angehängt ist oder wird einfach keine Mail versendet ?

Die Connections lassen sich im Skript über context.getConnection() oder context.getUserService().getConnection() holen, das sollte eigentlich keine Probleme machen.

Freundliche Grüße

Ismail

0 Kudos
aVogt
Returning Creator

Wenn ich Methoden ohne Attachment verwende funktioniert alles. Die Mail wird wie gewünscht versendet.

Wie gesagt, ich brauche aber das replyTo...

Aus einem Script im JC wird bei verwendung mit Attachment nach wie vor der bisherige Fehler geworfen.

Auch aus einem Auftrag heraus klappt es nicht. Da wird ein etwas anderer Fehler geworfen. => Anhang

Grüße

Andreas

0 Kudos

Okay, ich leite das weiter und melde mich wieder, wenn es was neues dazu gibt.

Freundliche Grüße

Ismail

0 Kudos