-
Wen es interessiert hier der lauffähige Code.
Bin aber bereits am Probieren, das mit dem AppServer zu machen.
Code:
H main(Main)
H dftactgrp(*no)
H actgrp(*new)
**********************************************************************
* newString constructor that accepts a byte array
* (an alphnumeric variable in RPG speak). It
* returns a string object.
**********************************************************************
D newString PR O ExtProc(*JAVA:
D 'java.lang.String':
D *CONSTRUCTOR)
D Class(*JAVA:'java.lang.String')
D byes 9999A Const Varying
D sendMail PR EXTPROC(*JAVA : 'javaMail.JavaMail+
D ' : 'sendMail' )
D STATIC
D arg0 O CLASS(*JAVA : 'java.lang.String' )
D arg1 O CLASS(*JAVA : 'java.lang.String' )
D arg2 O CLASS(*JAVA : 'java.lang.String' )
D arg3 O CLASS(*JAVA : 'java.lang.String' )
D sendMailMitAnhang...
D PR EXTPROC(*JAVA : 'javaMail.JavaMail+
D ' : 'sendMailMitAnhang' )
D STATIC
D arg0 O CLASS(*JAVA : 'java.lang.String' )
D arg1 O CLASS(*JAVA : 'java.lang.String' )
D arg2 O CLASS(*JAVA : 'java.lang.String' )
D arg3 O CLASS(*JAVA : 'java.lang.String' )
D arg4 O DIM(99)
D CLASS(*JAVA : 'java.lang.String' )
D OPTIONS(*VARSIZE)
D absender S O CLASS(*JAVA : 'java.lang.String' )
D empfaenger S O CLASS(*JAVA : 'java.lang.String' )
D betreff S O CLASS(*JAVA : 'java.lang.String' )
D nachricht S O CLASS(*JAVA : 'java.lang.String' )
D dateien S O DIM(99)
D CLASS(*JAVA : 'java.lang.String' )
DMain PR extpgm('TEST')
PMain B
D PI
/free
absender = newString('absender@test.local');
empfaenger = newString('empfaenger@test.local');
betreff = newString('Test');
nachricht = newString('Datei-Test');
dateien(1) = newString('/Java/JavaMail.jar');
dateien(2) = newString('/Java/activation.jar');
dateien(3) = newString('/Java/mail.jar');
sendMail(absender:empfaenger:betreff:nachricht);
sendMailMitAnhang(
absender:empfaenger:betreff:nachricht:dateien);
dsply ('Ende');
/end-free
P E
Code:
package javaMail;
import java.io.File;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
public class JavaMail {
public static void main(String[] args) {
String absender = args[0];
String empfaenger = args[1];
String betreff = args[2];
String nachricht = args[3];
String[] dateien = new String[1];
dateien[0] = args[4];
sendMail(absender, empfaenger, betreff, nachricht);
sendMailMitAnhang(
absender, empfaenger, betreff,
nachricht, dateien);
}
public static void sendMailMitAnhang(
String absender, String empfaenger, String betreff,
String nachricht, String[] dateien)
{
File[] files = new File[dateien.length];
for (int i=0; i<dateien.length; i++)
{
if (dateien[i]!=null)
{
files[i] = new File(dateien[i]);
}
}
try {
Properties props=new Properties();
props.put("mail.smtp.host","IP-Adresse Mail Server");
Session session = Session.getInstance(props);
Message message=new MimeMessage(session);
message.setFrom(new InternetAddress(absender));
message.setRecipient(
Message.RecipientType.TO,
new InternetAddress(empfaenger));
message.setSubject(betreff);
Multipart multipart = new MimeMultipart();
BodyPart body = new MimeBodyPart();
body.setText(nachricht);
multipart.addBodyPart(body);
for (int i=0; i<files.length; i++)
{
if (files[i]!=null)
{
BodyPart file = new MimeBodyPart();
DataSource source = new FileDataSource(files[i]);
file.setDataHandler(new DataHandler(source));
file.setFileName(files[i].getName());
multipart.addBodyPart(file);
}
}
message.setContent(multipart);
Transport.send(message);
} catch (AddressException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
public static void sendMail(
String absender, String empfaenger,
String betreff, String nachricht)
{
try {
Properties props=new Properties();
props.put("mail.smtp.host","IP-Adresse Mail Server");
Session session = Session.getInstance(props);
Message message=new MimeMessage(session);
message.setFrom(new InternetAddress(absender));
message.setRecipient(
Message.RecipientType.TO,
new InternetAddress(empfaenger));
message.setSubject(betreff);
Multipart multipart = new MimeMultipart();
BodyPart body = new MimeBodyPart();
body.setText(nachricht);
multipart.addBodyPart(body);
message.setContent(multipart);
Transport.send(message);
} catch (AddressException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
Similar Threads
-
By Vicky-B in forum NEWSboard Java
Antworten: 17
Letzter Beitrag: 06-05-08, 11:05
-
By PGMR in forum NEWSboard Java
Antworten: 10
Letzter Beitrag: 10-02-05, 10:33
-
By PGMR in forum NEWSboard Programmierung
Antworten: 0
Letzter Beitrag: 02-02-05, 13:10
-
By mk in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 09-09-04, 08:22
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks