2013-03-24 2 views
0

Я разработал приложение для Android, чтобы собирать заказы, сохраненные в веб-API. я делаю вызов Rest с протоколом HTTP, как это:Звонок на отдых с помощью Restlet Framework

HttpClient httpClient = new DefaultHttpClient(); 

try { 
     HttpGet httpGet = new HttpGet("http://.../api/orders..."); 
     HttpResponse httpResponse = httpClient.execute(httpGet); 
     HttpEntity httpEntity = httpResponse.getEntity(); 
     if (httpEntity != null) { 
      InputStream inputeStream = httpEntity.getContent(); 
     BufferedReader bufferReader = new BufferedReader(
        new InputStreamReader(inputeStream)); 
     StringBuilder stringBuilder = new StringBuilder(); 

     String ligneLue = bufferReader.readLine(); 
     while (ligneLue != null) { 
     stringBuilder.append(ligneLue + "\n"); 
     ligneLue = bufferReader.readLine(); 
     } 
     bufferReader.close(); 
     SONObject jsonObject = new JSONObject(stringBuilder.toString()); 
      ... 
      ... 
      (I collect what I need.) 
      ... 
      ... 
     } 

Теперь я хочу использовать Рамочную Restlet делать то же думать. возможно?

ответ

0

Несомненно, это возможно! Структура Restlet предоставляет класс ClientResource для этого:

ClientResource cr = new ClientResource("http://..."); 
Representation representation = cr.get(); 
JsonRepresentation jsonRepresentation = new JsonRepresentation(representation); 
JSONObject jsonObject = jsonRepresentation.getJsonObject(); 

Обязательно иметь файлы org.restlet.jar и org.restlet.ext.json.jar (и его JSON Lib зависимость) в вашем пути к классам. Позаботьтесь о том, чтобы загрузить версию Restlet для Android, которая гарантирует правильную работу фреймворка в среде Java Android.

Надеюсь, это поможет вам.

Thierry