2010-11-16 6 views
3

Я пытаюсь получить сериализованные классы с помощью Restlet 2.1 с Android в качестве клиента и GAE в качестве сервера. Это соответствующий код:Restlet On Android - Проблемы с сериализацией

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

Первоначально я тестировал это в отдельном классе JSE, и все работало нормально. Когда я пытаюсь запустить то же самое в Android, объект myData имеет значение NULL. Есть идеи?

+0

разместить в LogCat output –

+0

Из моих тестов логарифм имел предупреждение: 'Невозможно найти конвертер для этого представления: [application/json, UTF-8]' –

ответ

7

Вы можете проверить здесь Android особенностей: RESTLet android page

я провел несколько часов до того, чтобы понять эту проблему, а также, необходимо явно зарегистрировать Джексона конвертора подобное:

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

Спасибо, благодарю вас. Ваш ответ поставил меня на путь восстановления от пути к безумию, пытаясь понять это. У меня были другие проблемы, чтобы понять, но это был катализатор. Я даже читал страницу, с которой вы связались раньше, но полностью забыл об этом. – Dan

+0

Life saver, хотя я не вижу ничего связанного в предоставленной ссылке: http://wiki.restlet.org/docs_2.0/13-restlet/275-restlet/266-restlet.html :( –

+0

Существует неправильный URL-адрес в этом ответе. Правильная (для воссозданной страницы информации для Android) выглядит следующим образом: http://restlet.org/learn/guide/2.2/editions/android/ Исправлено исходное сообщение. –