Estou testando o envio de e-mail, porém está dando um erro…
java.io.IOException: IOError 10053 during socket:: write \n
at com.sun.midp.io.j2me.socket.Protocol.write0(), bci=0
at com.sun.midp.io.j2me.socket.Protocol.writeBytes(), bci=12
at com.sun.midp.io.BaseOutputStream.write(), bci=46
at java.io.OutputStream.write(OutputStream.java:58)
at br.gov.ana.fiscalizacao.frmSincronismo.sendData(frmSincronismo.java:254)
at br.gov.ana.fiscalizacao.frmSincronismo.sincronizar(frmSincronismo.java:88)
at br.gov.ana.fiscalizacao.frmSincronismo.access$000(frmSincronismo.java:27)
at br.gov.ana.fiscalizacao.frmSincronismo$1.run(frmSincronismo.java:373)
O erro ocorre na linha “os.write((“RCPT TO:”+mailTo+”\r\n").getBytes());"
Segue o método que estou chamando para enviar o email:
[code]public void sendEmail() {
SocketConnection sc = null;
InputStream is = null;
OutputStream os = null;
StringBuffer sb;
try {
sc = (SocketConnection) Connector.open(“socket://”+SMTP+":25");
is = sc.openInputStream();
os = sc.openOutputStream();
sb = new StringBuffer();
// Send SMTP-Commands
os.write(("HELO agencia \r\n").getBytes());
os.write(("MAIL FROM:"+mailFrom+"\r\n").getBytes());
os.write(("RCPT TO:"+mailTo+"\r\n").getBytes());
os.write("DATA\r\n".getBytes());
os.write(("Date:"+new Date()+"\r\n").getBytes());
os.write(("From:"+mailFrom+"\r\n").getBytes());
os.write(("To:"+mailTo+"\r\n").getBytes());
os.write(("Subject: TESTE \r\n").getBytes());
os.write(("MENSAGEM TESTE \r\n").getBytes());
os.write(".\r\n".getBytes());
os.write("QUIT\r\n".getBytes());
int c = 0;
while ( (c = is.read() ) != -1) {
sb.append( (char)c);
}
System.out.println(sb.toString());
}
catch (Exception e) {
e.printStackTrace();
}
finally {
try {
if(is != null) {
is.close();
}
if(os != null) {
os.close();
}
if(sc != null) {
sc.close();
}
} catch(IOException e) {
e.printStackTrace();
}
}
}
[/code]
Alguém pode me ajudar…
xD