Olá, estou tentando usar o DataStream para passar informação entre as aplicações servidor e cliente de um chat
dentro do evento de um popupmenu do cliente esta o seguinte codigo
public void actionPerformed(ActionEvent e)
{
if ( e.getSource() == anItem) {
try{saida.writeInt(5); System.out.println("teste");}
catch (EOFException ex) {
}catch (IOException ex) {
ex.printStackTrace();
}
}
if ( e.getSource() == anItem2) {
try{saida.writeInt(6); System.out.println("teste");}
catch (EOFException ex) {
}catch (IOException ex) {
ex.printStackTrace();
}
}
}
sendo a saida - DataOutputStream saida = new DataOutputStream((cliente.getOutputStream()));
e o servidor esta recebendo desse jeito
try{ while(true) {
if(ois.readInt()==5)
{System.out.println("testando5");}
if(ois.readInt()==6)
{System.out.println("testando6");}
} }
catch (EOFException ex) {
}
catch (IOException ex) {
ex.printStackTrace();
O problema é o seguinte, quando eu clicko no primeiro item do popupmenu aparece na tela do servidor "testando5" e se eu clicko no segundo item aparece o "testando6" até ai tudo bem, o problema é que se eu clicko duas vezes consecutivas em um item só o println referente a ele não aparece, e pior, se eu tento clickar no outro item a mensagem respectiva a ele também não aparece, e isso acontece até que eu click duas vezes consecutivas em um dos itens novamente
Obrigado pela atenção