Olá! boa noite a todos
estou tendo problemas para ler a resposta de um Socket do SPC. fiz o teste via Putty.exe e funcionou perfeitamente (consigo visualizar a string de resposta na console)
Na minha aplicação, utilizo o método readLine do objeto BufferedReader, e é exatamente após os 30 segundos do timed-out do socket que a ExceptionIO entra em operação.
meu código está abaixo, desde já agradeço quem puder ajudar.
try
{
Socket ClientSocket = null;
ClientSocket = new Socket("200.211.20.4", 3010);
ClientSocket.setSoTimeout(30000);
String StrSend = "CSR60 02 00000045UNIDAS CIN 2100011111111111 CAIO RODRIGUES 15091970CD00000000000 000000000000000000000000000000000000000000000000000000000046180350000000000000 00000000 C";
byte[] byteEnvio = StrSend.getBytes();
DataOutputStream out = new DataOutputStream(ClientSocket.getOutputStream());
out.write(byteEnvio);
BufferedReader br = new BufferedReader(new InputStreamReader(ClientSocket.getInputStream()));
String AV36Respos = "";
StringBuffer Linha = new StringBuffer();
String s = "";
while ((s = br.readLine()) != null)
{
Linha.append(s);
}
AV36Respos = Linha.toString();
out.close();
br.close();
ClientSocket.close();
}
catch (UnknownHostException e)
{
}
catch (IOException e)
{
}