Pessoal, boa tarde.
Estou recebendo em uma requisição SOAP a exceção: java.net.SocketTimeoutException: Transport endpoint is not connected a permissão de internet está declarada e tudo mais, sem contar que faço outras requisições no aplicativo.
O que reparei é que não tem um padrão para retornar a exceção, não é em determinada linha ou processo. Depende de uma serie de processos e uma vez ou outra acaba ocorrendo a exceção.
Todos os exemplos que peguei de requisições utilizando kSoap2, o pessoal faz o .call e trabalha com o retorno.
Mas eu reparei o seguinte, que por exemplo eu vou fazendo as requisições utilizando .call, em determinado momento ocorre um erro de SocketTimeout, a partir dai todos os demais .call que vem em sequência dão o mesmo erro, mas já verifiquei e não é a internet pois eu verifico antes de fazer a requisição e estou utilizando um wi-fi com boa velocidade.
Então gostaria de saber, essas conexões que faço com o kSoap2 elas ficam abertas? Não teriam que serem fechadas? Eu vi um comando que é o transport.getServiceConnection().disconnect() e por exemplo, para não ocorrer de todos os .call obterem SocketTimeout após um deles acontecer isso.
Ao invés do .call direto, eu poderia fechar a conexão sempre após um erro ou um processo concluído com exito e utilizar alguma espécie de connect() antes de utilizar novamente o .call?
Alguém já teve problema semelhante?