Cliente Java (SE, Android e GWT) para os webservices da ViaCEP.
ViaCEP é um webservice gratuito e de alto desempenho para consultar Códigos de Endereçamento Postal (CEP) do Brasil. Sobre o serviço: http://viacep.com.br.
O projeto ViaCEP Client disponibiliza uma API amigável para o acesso aos webservices da ViaCEP utilizando Java. Funciona tanto em Java Standard Edition (servidores e clientes desktop) quanto clientes Android e GWT. Requer Java 6+ (e no caso do GWT, SDK 2.7.0).
Consulta por CEP:
ViaCEPClient client = new ViaCEPClient();
ViaCEPEndereco endereco = client.getEndereco("20930-040");
System.out.prinln(endereco.getLocalidade()); //Rio de Janeiro
endereco = client.getEndereco(" 01311000 ");
System.out.prinln(endereco.getLocalidade()); //São Paulo
Note que o cliente se responsabiliza por enviar o formato correto do CEP, desde que ele possua 8 dígitos.
Consulta por UF, localidade e logradouro:
ViaCEPClient client = new ViaCEPClient();
List<ViaCEPEndereco> enderecos = client.getEnderecos("SP", "São Paulo", "Avenida Paulista");
Consulta por CEP:
ViaCEPGWTClient client = new ViaCEPGWTClient();
client.getEndereco("20930-040", new MethodCallback<ViaCEPEndereco>(){
@Override
public void onSuccess(Method method, ViaCEPEndereco response) {
GWT.log(response.getLocalidade()); //Rio de Janeiro
}
@Override
public void onFailure(Method method, Throwable exception) {
GWT.log("Erro: " + exception, exception);
}
});
Consulta por UF, localidade e logradouro:
ViaCEPGWTClient client = new ViaCEPGWTClient();
client.getEnderecos("SP", "São Paulo", "Avenida Paulista", new MethodCallback<List<ViaCEPEndereco>>(){
@Override
public void onSuccess(Method method, List<ViaCEPEndereco> response) {
//response
}
@Override
public void onFailure(Method method, Throwable exception) {
GWT.log("Erro: " + exception, exception);
}
});
A partir da versão 1.1.0, os web services são chamados utilizando CORS ao invés de JSONP.
Usando Apache Maven:
<dependency>
<groupId>com.github.gilberto-torrezan</groupId>
<artifactId>viacep</artifactId>
<version>1.2.0</version>
</dependency>
Você pode baixar o jar diretamente do The Central Repository também. Fique atento as dependências:
- Para GWT, é necessário importar o RestyGWT (o projeto usa v.2.0.3)
- Para Java SE e Android, é necessário importar o Jackson jr (o projeto usa v.2.6.3)
Para usar o client GWT, adicione o ViaCEP Client no seu project.gwt.xml:
<inherits name="com.github.gilbertotorrezan.viacep.viacep"/>
Você pode ver o javadoc desse projeto no javadoc.io:
http://www.javadoc.io/doc/com.github.gilberto-torrezan/viacep
Esse projeto é licenciado sob os termos da The MIT License (MIT).