Hallo zusammen,
auf folgende Weise versuche ich vorerst zu Testzwecken eine Standard-MailClient email zu erzeugen.
In meinem Fall ist der Standard-MailClient Outlook 2k3.
Das funktioniert soweit auch ohne Probleme. Lasse ich allerdings bei den Parametern die unterstriche weg, (z.B. Test Subject anstatt Test_Subject) funktioniert es nicht mehr.
Fehlermeldung:
Wie uebergibt man Parameter so, dass die Leerzeichen nicht als Fehler gelten?
Vielen Dank und viele Gruesse
FenchelT
auf folgende Weise versuche ich vorerst zu Testzwecken eine Standard-MailClient email zu erzeugen.
In meinem Fall ist der Standard-MailClient Outlook 2k3.
Code:
package org.Utilities;
public class Starter
{
public static void main(String[] args)
{
MyMail email = new MyMail("geht.nicht@irgendwo.de",
"Test_Subject",
"Hallo_Auto");
email.prepare();
}
}
Code:
package org.Utilities;
import java.awt.*;
import java.net.URI;
public class MyMail
{
Desktop desktop = null;
String mailTo = "";
String subject = "";
String body = "";
public MyMail(String n, String s, String b)
{
this.mailTo = n;
this.subject = s;
this.body = b;
} // End Konstruktor
public void prepare()
{
if (Desktop.isDesktopSupported())
{
desktop = Desktop.getDesktop();
try
{
URI uriMailTo = new URI("mailTo:" + this.mailTo+ "?Subject=" + this.subject +"&BODY=" + this.body);
desktop.mail(uriMailTo);
}// End try
catch (Exception ex)
{
System.out.println("Hat nicht sollen sein \n\n" + ex);
} // End catch
}
else
{
System.out.println("Funktion wird erst ab Java6 unterstützt. Bitte installieren!");
} // End if
} // End void prepare()
} // End class
Das funktioniert soweit auch ohne Probleme. Lasse ich allerdings bei den Parametern die unterstriche weg, (z.B. Test Subject anstatt Test_Subject) funktioniert es nicht mehr.
Fehlermeldung:
Code:
java.net.URISyntaxException: Illegal character in opaque part at index 42: mailTo:geht.nicht@irgendwo.de?Subject=Test Subject&BODY=Hallo_Auto
Wie uebergibt man Parameter so, dass die Leerzeichen nicht als Fehler gelten?
Vielen Dank und viele Gruesse
FenchelT