pop3

Galera é o seguinte estou com um trabalho da faculdade pra fazer… bem ja li a rfc 1939 referente ao POP3… consegui me conectar ao servidor de e-mail yahoo atraves do codigo abaixo obtendo a seguinte resposta:

+OK hello from popgate<2.35.8>

isso significa que me conectei ao servidor… fiz isso usando socket porem quando envio o comando user… nao obtenho a resposta do servidor… lembrando que ja fui no servidor atraves do navegador e habilitei o pop3
segue o codigo… lembrando que os nome de usuario e senha estao errados mas mesmo assim era pra ser exibido uma mensagem do tipo -ERR …

desde ja agradeço a colaboração

import java.io.*;
import java.net.Socket;

public class pop{

public static void main(String[] args) throws Exception{
	
BufferedReader in, 
	PrintWriter out;    	
	
try{
                  Socket s = new Socket("pop.mail.yahoo.com.br",110);// cria um cliente socket que se conecta com o hots, porta
                   in = new BufferedReader(new InputStreamReader(s.getInputStream())); //fluxo de entrada
                 out = new PrintWriter(s.getOutputStream(),true);//fluxo de saida            
        System.out.println(in.readLine());
        out.write("user tfsadsfdggfgfghhdshgfhjsfjh");
        System.out.println(in.readLine());
        out.write("pass sgsgfgfg");
        System.out.println(in.readLine());            
    }
    catch(Exception e){
        System.err.println("Error: "+e);
    }
	
}

}

Use um outro mail server; o Yahoo não libera POP3 a menos que você seja um usuário pago, e o Google usa SSL - muito complicado.
Use o seu próprio mail server para testar - baixe o James (http://james.apache.org), que é Java e não muito difícil de configurar.

Ao inves de voce escrever o protocolo do POP3, voce pode usar o JavaMail.

Aqui tem um tutorial simples de JavaMail:
http://www.oziel.com.br/artigos/jms_javamail_tutorial.zip

Assim eu pensei em usar o JavaMail mas a ideia do trabalho é exatamente essa… entender o protocolo pop3… por isso preciso escrever ele … pq testei com o telnet e consegui todas as respostas que queria valeu pela dica

Galera consegui… o erro estava justamente no meu stream… coloquei como stream de saida o seguinte codigo:

OutputStream out = s.getOutputStream();
PrintStream pout = new PrintStream(out);

e obtive as respostas… valeu pela força

abraço a todos

Se você tiver tempo, você pode fazer o JavaMail rodar em modo " debug " (basta setar uma Property, não lembro qual - só olhar a documentação do JavaMail) para ver o que ele manda e recebe do POP3, e fazer seu programa fazer algo parecido. Nem sempre só ler o RFC é suficiente - e é por isso que o fonte do JavaMail é gigantesco.

[quote=thingol]Use um outro mail server; o Yahoo não libera POP3 a menos que você seja um usuário pago, e o Google usa SSL - muito complicado.
[/quote]

Na época que ainda usava o email do yahoo (brasil) gratuitamente eu usava o pop3 pelo thunderbird normalmente.

[quote=thingol]Use um outro mail server; o Yahoo não libera POP3 a menos que você seja um usuário pago, e o Google usa SSL - muito complicado.
Use o seu próprio mail server para testar - baixe o James (http://james.apache.org), que é Java e não muito difícil de configurar.[/quote]mentira, eu nao pago e uso a muito tempo como o amigo ja havia descrito no inicio do post.

veio e importante terminar as frases que vao ao servidor POP com um \n para ele entender que aquele comando terminou. saca seria o ; do java.