Automatischer E-Mail-Versand scheitert

Situation 1

Verhalten: der Versand der automatisch zu generierenden E-Mails scheitert mit folgender Exception im Serverlog:

java.lang.NumberFormatException: null
	at java.lang.Integer.parseInt(Integer.java:454)
	at java.lang.Integer.valueOf(Integer.java:582)
	at
sernet.gs.server.commands.PrepareNotificationInfo.retrievePersonsDirectlyResponsible(PrepareNotificationInfo.java:301)

Es ist mind. ein Task einer inzwischen gelöschten Person zugewiesen. Beim Versuch die zu finden, bricht der gesamte Mailversand mit dem o.g… Fehler ab.

Lösungsansatz:

  1. Task löschen, der dieser Person zugeordnet ist oder
  2. alle Tasks löschen.

Situation 2

Verhalten: Der Versand der automatisch generierten E-Mails scheitert und im Logfile des verinice-Servers findet sich diese Fehlermeldung:

java.lang.NoClassDefFoundError: Could not initialize class javax.crypto.SunJCE_b
        at javax.crypto.KeyGenerator.a(DashoA13*..)
        at javax.crypto.KeyGenerator.<init>(DashoA13*..)
        at javax.crypto.KeyGenerator.getInstance(DashoA13*..)
        at com.sun.net.ssl.internal.ssl.JsseJce.getKeyGenerator(JsseJce.java:223)
        at com.sun.net.ssl.internal.ssl.RSAClientKeyExchange.<init>(RSAClientKeyExchange.java:89)
        at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.java:744)
        at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:238)
        at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:593)
        at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:529)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:893)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1138)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1165)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1149)
        at gnu.inet.smtp.SMTPConnection.starttls(SMTPConnection.java:647)
        at gnu.inet.smtp.SMTPConnection.starttls(SMTPConnection.java:618)
        at gnu.mail.providers.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:186)
        at javax.mail.Service.connect(Service.java:288)
        at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:389)
        at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:342)
        at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:357)
        at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:346)
        at sernet.verinice.bpm.NotificationJob.sendNotification(NotificationJob.java:209)

Lösungsansatz: Die JCE Cryptoerweiterungen der JVM müssen zurückgesetzt werden. Dazu müssen im Verzeichnis

$jdkHome/jre/lib/security

die beiden Dateien

  • local_policy.jar
  • US_export_policy.jar

auf Ihre Ursprungsversion zurückgesetzt werden.

Neue Situation:
nach Neuinstallation v1.17 mit vpro-appliance:
Email ist konfiguriert nach Anleitung und wie auf altem Server(1.14). Email auf Linux funktioniert.
Neue Task generiert keine email. Deadline warning kommt auch nicht.
In den logs finde ich keinerlei Einträge zu notification oder mail.
Was kann ich tun?

Nach Bearbeitung der “mail notifications” zu meinem account habe ich die erwartete Task notification erhalten.
Mail notification war davor schon enabled, die restlichen Optionen aber nicht.

Hallo zusammen,

im Handbuch steht im Kapitel 14.7 lediglich dieser Satz “Für eine funktionstüchtige E-Mail-Benachrichtigung muss vorab in verinice.PRO ein gültiger Mail-Server konfiguriert sein.
Wo genau muss diese Einstellung denn vorgenommen werden?

Beste Grüße
Stefanie Langer

Die Konfiguration der automatischen E-Mail-Benachrichtigung ist in der Konfigurationsanleitung des verinice.PRO Servers beschrieben. Die finden diese Anleitung im verinice.PRO Repository: Installation und Konfiguration von verinice.PRO.pdf.

Um die automatische E-Mail-Benachrichtigungen zu verschicken, müssen
folgende Einstellungen in der Datei

/usr/share/tomcat6/webapps/veriniceserver/WEB-INF/veriniceserver-plain.properties.local

bearbeitet werden.

E-Mail-Benachrichtigung aktivieren:

veriniceserver.notification.enabled=true

SMTP-Server-Hostname oder die IP-Adresse eingetragen:

veriniceserver.notification.smtp.host=HOSTNAME

SMTP-Server Authentifizierung (optional):

veriniceserver.notification.smtp.username=USERNAME
veriniceserver.notification.smtp.password=PASSWORT
1 „Gefällt mir“

Vielen Dank Herr Urygin,

das hat funktioniert. Können Sie noch kurz mitteilen, wo das Template für den generierten E-Mail-Text hinterlegt ist, und woran es liegen kann dass in der generierten E-Mail die Platzhalter für die Anrede nicht gefüllt wurden?

Sehr geehrte® ${address} ${name},

Beste Grüße
Stefanie Langer