mapb_1990 0 Denunciar post Postado Dezembro 28, 2011 Boas, Precisava de fazer um cliente para consumir o seguinte serviço: http://maps.google.com/maps/api/directions/json?origin=Travessa+Leira+da+Pega,+Madalena&destination=Av.+da+Replublica,+Vila+Nova+de+Gaia&sensor=false Andei a pesquisar no google e encontrei a livraria Jersey e o seguinte código: Client client = Client.create(); WebResource webResource = client.resource("http://maps.google.com/maps/api/directions/json?origin=Travessa+Leira+da+Pega,+Madalena&destination=Av.+da+Replublica,+Vila+Nova+de+Gaia&sensor=false"); ClientResponse response = webResource.accept("application/json").get(ClientResponse.class); if(response.getStatus() != 200) { throw new RuntimeException("Failed : HTTP error code : " + response.getStatus()); } String output = response.getEntity(String.class); System.out.println("Output from Server .... \n"); System.out.println(output); Ao tentar correr o código acima, aparece o erro: Exception in thread "main" java.lang.NoClassDefFoundError: javax/ws/rs/ext/Providers at geo.GoogleMapsAdapter.getDistance(GoogleMapsAdapter.java:29) at geo.GoogleMapsAdapter.main(GoogleMapsAdapter.java:21) Caused by: java.lang.ClassNotFoundException: javax.ws.rs.ext.Providers at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) ... 2 more Java Result: 1 Aparentemente ele não encontra a classe Client, já incluí a classe no ficheiro da classe, e a livraria no projecto. Alguém sabe como posso fazer o cliente para o serviço JSON? Compartilhar este post Link para o post Compartilhar em outros sites
mapb_1990 0 Denunciar post Postado Dezembro 29, 2011 ao que parece para o código acima funcionar, também preciso de adicionar a biblioteca "JAX-RS 1.1". :wallbash: :wallbash: mas agora estou com outro problema, como é que eu acedo às propriedades do json retornado. por exemplo, aceder às propriedades lat e lng de northeast? { routes: [ { bounds: { northeast: { lat: 41.12484000000001, lng: -8.605910000000002 }, southwest: { lat: 41.09972, lng: -8.65043 } }, copyrights: "Dados do mapa ©2011 Tele Atlas", summary: "IC23", } ], status: "OK" } Compartilhar este post Link para o post Compartilhar em outros sites