Verificando ser conexao pode ser estabelecida

6 respostas
J

Boa tarde galera, tenho um problema:

tenho uma aplicação que chama uma pagina PHP em um servidor remoto, essa pagina PHP executa os codigos sql e retorna os dados e o celular lê essa pagina e grava os dados, mais tenho um problema, as vezes pressimos reiniciar essa maquina aqui e quem esta na rua nao sabe que estamos reiniciando a maquina e tenta ler a pagina.
Alguem tem alguma idéia para eu verificar se a pagina vai poder ser lida ou não antes de fazer essa requisição de leitura ???

Obrigado

6 Respostas

J

Ninguém… ??

Norxs

faz uma requisição … se retornar uma String “show de bola” … pagina tah no ar … senão deu pau em alguma coisa … não esta no ar … sem rede disponível … alguma problema de perda de pacote … etc…

J

Bom, meu codigo que chama o site é esse ae, tem idéia +/- de como fazer isso que voce falou ???
Obrigado cara

public void getConsulta(String url) throws IOException {
	   	StringBuffer b  = new StringBuffer();
	   	String aux="";
                String codigo = "";
                String endereco = "";
                String ProbChamado = "";
                String ModeloSerie = "";
                HttpConnection con = null;
	   	try{
			con = (HttpConnection)Connector.open(url);
			InputStream inputStream = con.openInputStream();
			
                        int ch;
			int status = -1;
                        status 	= con.getResponseCode();
			if(status == HttpConnection.HTTP_OK){
				con.close();
                        while((ch = inputStream.read()) != -1) {
					b.append((char) ch);
				}
		               
                                for(int i = 0;i<b.toString().length();i++){
                                if(b.toString().substring(i,i+1).equals("%")){
                                    //aux		= aux+"\n";
                                    codigo = aux;
                                    aux = "";
                                    i++;
			    	} if (b.toString().substring(i,i+1).equals("#")) {
                                        //aux	= aux+b.toString().substring(i,i+1);
                                    endereco = aux;
                                    aux = "";
                                    i++;
                                } if (b.toString().substring(i,i+1).equals("^")) {
                                    ProbChamado = aux;
                                    aux = "";
                                    i++;
                                    int s1 = 0;
                                } if (b.toString().substring(i,i+1).equals("$")) {
                                    ModeloSerie = aux;
                                    aux = "";
                                    try {
                                                                              
                                            //saveOpt(nome, endereco);
                                             Chamado Ch = new Chamado();
                                             //Ch.setCliNome(get_tfNomeCli().getString());
                                             Ch.setCliCod(Integer.parseInt(codigo)); 
                                             Ch.setCliNome(endereco);
                                             Ch.setProbChamado(ProbChamado);
                                             Ch.setModeloSerie(ModeloSerie);
                                             Ch.save();
                                            aux = "";
                                       // } catch (RecordStoreException ex) {
                                       //     ex.printStackTrace();
                                        }
                                        catch (Exception e) {
                                            e.printStackTrace();
                                        }
                                      
                                } else {	
                                         aux		= aux+b.toString().substring(i,i+1);
			    	}
			    }
                        if(con != null) { 
                            con.close(); 
                        }
                             get_alerta();
      			}
                                 
			else{
				alerta.setString("Erro: Conexão");
				alerta.setType(AlertType.WARNING);
				alerta.setTimeout(Alert.FOREVER);
			}
		}
                 
		catch(IOException ioe){
			alerta.setString(ioe.getMessage());
			alerta.setType(AlertType.ERROR);
			alerta.setTimeout(Alert.FOREVER);
                     }
                finally  {
                  if (con != null) { 
                      con.close(); 
                      con = null; 
                     }
                   } 
                 travatela = false;
                  getDisplay().setCurrent(get_alerta(), get_ls_Principal());     
	}
J

So pra constar, resolvi de uma maneira simples, Usei o Try … Catch
Se der erro durante a chamada do site no Try eu vou pro catch e mostro a mensagem de erro na tela …
=)

P

julgado:
So pra constar, resolvi de uma maneira simples, Usei o Try … Catch
Se der erro durante a chamada do site no Try eu vou pro catch e mostro a mensagem de erro na tela …
=)

Pois é…é simples assim…mas tem gente que complica… :wink:

JavaES

Modo basicão… elementar::::: Try{ }catch rsrsrs.

Capture exceções de conexão com o IOException:

try{
    // seu código...
}catch(IOException e){
    // tratamento do erro...
}

Aproveite e capture com o SecurityException a exceção lançada quando o usuário não permite que o aplicativo efetue a conexão:

try{
    // seu código....
}catch(SecurityException e){
    // tratamento do erro...
}catch(IOException e){
    // tratamento do erro...
}

Alias, aproveite e capture todos os outros erros que possam ocorrer também:

try{
    // seu código....
}catch(SecurityException e){
    // tratamento do erro de quando o usuário não permite a conexão...
}catch(IOException e){
    // tratamento do erro de quando há falha na conexão...
}catch(Exception e){
    // tratamento dos outros erros que possam ocorrer...
}
Criado 14 de novembro de 2008
Ultima resposta 12 de dez. de 2008
Respostas 6
Participantes 4