2012-03-30 7 views
0

Je l'habitude d'avoir ce code de travail avec mon serveur Tomcat:URLFetchService avec Google App Engine

HttpRequestBase targetRequest = ...; 
HttpResponse targetResponse = httpclient.execute(targetRequest); 
HttpEntity entity = targetResponse.getEntity(); 

Cependant quand je migré avec Google App Engine, je peux » utiliser ce code plus. J'ai donc lu un peu et j'ai trouvé que je devais utiliser un autre code pour y parvenir.

J'ai donc ce code:

URLFetchService fetcher = URLFetchServiceFactory.getURLFetchService(); 
HTTPResponse targetRespose = fetcher.fetch(targetRequest); // Error 
HttpEntity entity = targetResponse.getEntity(); 

Cependant, son évident qu'il ya une erreur avec le code fetcher.fetch.

Tout ce que j'ai besoin d'accomplir pour avoir la même HttpEntity en utilisant l'approche App Engine. Une façon de travailler cela?

+1

Quelle est l'erreur? Un message d'erreur? –

Répondre

0

org.apache.http.HttpRequest et com.google.appengine.api.urlfetch.HTTPRequest sont deux classes totalement différentes de deux bibliothèques différentes, de sorte que vous ne pouvez pas échanger les uns pour les autres.

Si vous souhaitez utiliser Apache HttpClient sur GAE, cela peut être fait avec certaines solutions de contournement: voir here et here.

+0

Je vais essayer de faire le contournement, mais est-ce quelque chose que le moteur d'application pourrait corriger et ne pas fonctionner dans le futur? C'est pourquoi j'essaie de migrer le plus possible vers la méthode App Engine, de toute façon j'essaierai cette solution de contournement ... – xybrek

+0

Ensuite, utilisez simplement 'URLFetchService' et supprimez toutes les classes HttpClient. –

+0

Ok, alors quelle est la plus proche d'un HttpEntity avec moteur App, si aucune quelle est l'alternative afin que je puisse construire le HttpEntity? – xybrek