2010-11-16 33 views
3

J'essaie de récupérer des classes sérialisées en utilisant Restlet 2.1 avec Android comme client et GAE comme serveur. Voici le code correspondant:Restlet sur Android - Problèmes de sérialisation

ClientResource cr = new ClientResource("http://localhost:8888/mydata"); 
// Get the MyData object 
MyDataResource resource = cr.wrap(MyDataResource.class); 
MyData myData = resource.retrieve(); 

Je l'ai testé d'abord ceci dans une classe JSE autonome, et tout a bien fonctionné. Lorsque j'essaie de faire la même chose avec Android, l'objet myData est nul. Des idées?

+0

afficher les logcat sortie –

+0

De mes tests, le logcat avait un avertissement: 'Impossible de trouver un convertisseur pour cette représentation: [application/json, UTF-8]' –

Répondre

7

Vous pouvez vérifier ici les spécificités Android: RESTLet android page

J'ai passé quelques heures avant de comprendre le problème aussi bien, vous devez vous inscrire explicitement le convertisseur Jackson comme ça:

Engine.getInstance().getRegisteredConverters().add(new JacksonConverter()); 
+0

Merci, merci, merci. Votre réponse m'a mis sur la voie du rétablissement de la voie de la folie en essayant de comprendre celui-ci. J'avais d'autres problèmes à résoudre, mais c'était le catalyseur. J'ai même lu la page que vous avez liée auparavant, mais complètement oublié à ce sujet. – Dan

+0

Life Saver, bien que je ne vois rien de connexe dans le lien fourni: http://wiki.restlet.org/docs_2.0/13-restlet/275-restlet/266-restlet.html :( –

+0

Il y a un mauvaise URL dans cette réponse.Le bon (à la page d'information android de reposlet) est comme suit: http://restlet.org/learn/guide/2.2/editions/android/ Corrigé le message original aussi bien –