Olá pessoal comecei a estudar redes e estou com uma dúvida com Socket gostaria de uma ajuda.
Fiz dois programas um servidor e outro cliente tipo um msn, acontece que após o cliente se conectar no servidor o programa cliente trava não faz nada e no servidor ele aparece ou suário que se conectou, no programa cliente ele para exatamente quando esta criando o Socket e só destrava quando eu desconecto no servido. Não sei se é restrição na rede etc… ,mas segui os passo do livro do Deitel e pelo que vi não falta mais nada.
Cara!!!
Esse é o primeiro passo mesmo!
Agora vc vai parender threads e quando um cliente conectar com o servidor vc lança uma thread e ela vai ficar trocando mensagens entre os dois ou vai fazer o que vc quizer!!!
Avança mais um pouco no livro e depois vc volta!
L
lulaPJ
eu vi mas no livro ele mostra funcionando sem thread, eu achei estranho pelo menos na facul um professor meu disse que tinha uma configuração no servidor da facu para liberar alguma coisa que não sei o que é, aqui onde trabalho tambem acontece o mesmo, só não testei em rede ponto a ponto dois micros.
A
AndersonAugustoPJ
Liberar??
Pode ser a porta que seu servidor fica escutando!!!
Aponta para localhost 127.0.0 para a porta 80!!
Pode ser isso não???
Que porta vc ta usando???
L
lulaPJ
o servidor que não dixa comunicar é o da faculdade não do meu programa mas em meu pc eu dscobri o que está dando de errado mas não sei como concertar esta muito estranho... vou postar o codico
essa parte é igual a do servidor, mas no cliente somente funciona se eu tirar do laço. foi isso que consegi descobri descobri, quando tiro do laço ele consegue ler mas apenas uma vez.
Servidor:publicvoidconectaServidor(){//Metodo para conectartry{serverSock=newServerSocket(10000);recebeConexoes();}catch(IOExceptione){JOptionPane.showMessageDialog(null,“Conexaofalhou”,“Erro!”,0);}}
Vê se isso te ajuda!!!
L
lulaPJ
até ai beleza o servidor funciona normal recebe e envia mensagens mas o cliente fica travado não recebe e nem envia as mensagens, o que percebi foi esse laço se eu tiro o laço funciona normal mas ele só vai receber apenas uma vez a mensagem, eu não sei se tem alguma outra maneira para fazer isso …
A
AndersonAugustoPJ
Só te lembrando que meu servidor esta dentro de um while(true) e o metodo recebeConexoes que libera a thread!!! E faz o recebimento e envio das mensagens!!!