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
-~----------~----~----~----~------~----~------~--~---

Responder a