2010-11-15 6 views
4

Я искал исходный код, доступный из Restlet official tutorial.Учебное приложение RESTlet не возвращает объекты Java (только JSON)

Я пытаюсь попасть на сервер Restlet с помощью приложения Android из учебника и я получаю только ответ JSON, а не объект Java. Я пытался использовать все библиотеки и расширения, ничего не работает. Когда я ударил URL-адрес учебника, хотя (http://restlet-example-serialization.appspot.com/contacts/123), я получаю желаемый ответ. Есть идеи? Кстати, я просто использую сервер (GAE) в примере, а не интерфейс GWT.

+0

Кроме того, клиент Java SE отлично работает. Это просто клиент Android, который не работает. – oviroa

ответ

-1

Используйте GSOn для преобразования json в объект java. GSON вы можете получить от Google в качестве своего своего кода:

http://code.google.com/p/google-gson/

Другой способ:

Response res = client.handle(req); 
    ObjectRepresentation<Item> obj = new ObjectRepresentation<Item>(res.getEntity()); 
    Item item = obj.getObject(); 
+0

Я не хочу этого делать. Теоретически красота Restlet заключается в том, что вы имеете дело только с объектами Java, и вам не нужно сериализовать/десериализовать. Любые другие идеи? – oviroa

+0

Другой способ: Response res = client.handle (req); ObjectRepresentation obj = new ObjectRepresentation (res.getEntity()); Элемент item = obj.getObject(); –

+1

Итак, в Android-клиенте учебник содержит этот фрагмент кода: contact = resource.retrieve(); где контакт имеет тип Contact и Resource имеет тип ContactServerResource. Как ваш код заменяет это? И почему этот код работает, когда я обращаюсь к приложению ESET-пример-сериализации, но не при развертывании кода под моим приложением в GAE? – oviroa

Смежные вопросы