Felipe... acho que você conseguiu ver que uma simples linha, pode disparar um efeito em cascata, que lá na décima chamada, ele da um exception... foi o que aconteceu com o seu código.
Por causa do nível de abstração de java... não interprete tudo como "uma simples linha" ;) Assuma que eu não sei nada em Java.... porque não sei. Mas vou tentar dar meu chute do que está acontecendo. Bem, até onde li a classe ObjectInputStream serve para deserializar dados/objetos antes serializados com a classe ObjectOutputStream. (Totalmente copiado da API: http://java.sun.com/javase/6/docs/api/java/io/ObjectInputStream.html). Bem, suponho então que para transmitir os dados do cliente para o servidor, você esteja serializado-os com ObjectOutputStream, conectando ao socket, enviando, recebendo do outro lado (pelo socket.getInputStream()) e deserializando com o ObjectInputStream, cheguei perto até aqui? Vamos ver o que a função que causa o exception faz: "The readStreamHeader method is provided to allow subclasses to read and verify their own stream headers. It reads and verifies the magic number and version number. " Então basicamente, ele le o cabeçalho do stream para verificar se esta tudo certo. Porém ela está lançando uma StreamCorruptedException, que é lançada quando: "if control information in the stream is inconsistent". Logo, está chegando alguma porcaria que não deveria ai. Logo, eu consigo pensar em 2 coisas: a) Este socket está sendo reutilizado? Ou ele pode conter alguma "sujeira" ou resíduo de alguma comunicação anterior? Teria como você tentar limpar o buffer dele, antes de receber os dados? b) Este socket tem alguma coisa? Talvez por algum motivo, quando o seu ObjectInputStream é inicializado, o socket ainda não tenha recebido nenhum dado? Não seria possível antes de inicializar o ObjectInputStream, fazer um probe no socket para ver se ele ja tem informação no buffer? 2008/11/30 Zaedy Sayão <[EMAIL PROTECTED]> > Isso ae pq ate agora eu nao entendi o q vc esta tentando fazer e qual o > problema real. > > Qual a linha nao descreve o problema nem o pq do erro...... > > []'s > > 2008/11/30 Flavio Costa <[EMAIL PROTECTED]> > > Acho que assim vai ser dificil solucionar algum problema. >> Quem sabe se você postar no pastebin.com ou pastebin.ca esse pedaçõ de >> codigo e passar para a lista ou em separado talvez possamos ajudar. >> >> []'s >> >> 2008/11/30 Felipe Ruiz <[EMAIL PROTECTED]> >> >> >>> O que mudou: antes não tinha a linha new ObjectInputStream >>> (socket.getInputStream()). Depois tinha a linha new ObjectInputStream >>> (socket.getInputStream()); >>> >>> On 30 nov, 02:38, "Zaedy Sayão" <[EMAIL PROTECTED]> wrote: >>> > Cara, >>> > >>> > explica o q esta tentando fazer, o q mudou pra dar o erro pq assim, >>> jogando, >>> > eu nao entendi necas :( >>> > >>> > []'s >>> > >>> > 2008/11/29 Pedro Philippe Rosanes <[EMAIL PROTECTED]> >>> > >>> > >>> > >>> > >>> > >>> > > Só pra avisar que nessa Thread do servidor, já conseguimos instanciar >>> um >>> > > BufferedReader e um ObjectOutputStream. >>> > > mas esse ObjectInputStream nao vai de jeito nenhum... >>> > >>> > > Felipe Ruiz escreveu: >>> > > > Estou com problemas agora com socket. Funciona tudo direitinho. >>> Porém, >>> > > > se eu crio um ObjectInputStream(socket.getInputStream()), o eclipse >>> me >>> > > > imprime isso: >>> > > > java.io.StreamCorruptedException: invalid stream header: 52656365 >>> > > > at java.io.ObjectInputStream.readStreamHeader(Unknown Source) >>> > > > at java.io.ObjectInputStream.<init>(Unknown Source) >>> > > > at >>> > > controle.ThreadConexaoCliente.<init>(ThreadConexaoCliente.java:35) >>> > > > at >>> > > controle.ExecutavelServidor.recebeConexoes(ExecutavelServidor.java: >>> > > > 35) >>> > > > at >>> controle.ExecutavelServidor.main(ExecutavelServidor.java:23) >>> > >>> > > > ThreadConexaoCliente.java:35 --> aqui é onde está o >>> ObjectInputStream >>> > > > (socket.getInputStream()) >>> > >>> > > > Não consegui entender em que uma única linha de código muda >>> tanto... >>> > > > Alguém sabe como consertar? >>> > >>> > > > On 27 nov, 19:12, "Zaedy Sayão" <[EMAIL PROTECTED]> wrote: >>> > >>> > -- >>> > Zaedy Dantas Sayão >>> > Graduando em Ciência da Computação DCC/UFRJhttp://www.manufato.com.br/ >>> > MSN: [EMAIL PROTECTED] >>> >>> >> >> >> -- >> Flávio Coutinho da Costa >> >> >> >> > > > -- > Zaedy Dantas Sayão > Graduando em Ciência da Computação DCC/UFRJ > http://www.manufato.com.br/ > MSN: [EMAIL PROTECTED] > > > > > -- Bruno C. Buss http://magoobr.blogspot.com/ http://www.dcc.ufrj.br/~brunobuss/ Aluno do DCC - UFRJ - www.dcc.ufrj.br if( ((*node)->valor) < (((*heap)[((*node)->gr)])->valor)) /* WTF?! */ "Throughout your life, advance daily, becoming more skillful than yesterday, more skillful than today. This is never-ending." - Hagakure --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Comp 2 - Geral" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/comp2-geral?hl=en -~----------~----~----~----~------~----~------~--~---
