2014-12-02 8 views
0

Я работаю над webapp в Google App Engine с функцией загрузки в PicasaWeb. Я использую этот код для загрузки фото:Плохой запрос, загружающий фотографию в PicasaWeb из GAE

myService = new PicasawebService("my-picasa-web-service"); 
myService.setConnectTimeout(60000); 
myService.setReadTimeout(60000); 
myService.setUserCredentials(USERNAME, PASSWORD); 
PhotoEntry myPhoto = new PhotoEntry(); 
myPhoto.setClient("myAdminClient"); 
MediaStreamSource myMedia = new MediaStreamSource(stream, "image/jpeg"); 
myPhoto.setMediaSource(myMedia); 
PhotoEntry returnedPhoto = myService.insert(new URL(albumFeedUrl), myPhoto); 

где потока переменных является InputStream с загруженным файлом.

Этот код работает, если я запускаю его в отдельной клиентской программе. Но когда я запускаю его с помощью GAE-й последней строки подъемного и исключения, и я могу видеть это в журнале:

com.google.gdata.util.InvalidEntryException: OK 
<HTML> 
<HEAD> 
<TITLE>Bad Request</TITLE> 
</HEAD> 
<BODY BGCOLOR="#FFFFFF" TEXT="#000000"> 
<H1>Bad Request</H1> 
<H2>Error 400</H2> 
</BODY> 
</HTML> 

at com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:602) 
at com.google.gdata.client.http.GoogleGDataRequest.handleErrorResponse(GoogleGDataRequest.java:564) 
at com.google.gdata.client.http.HttpGDataRequest.checkResponse(HttpGDataRequest.java:560) 
at com.google.gdata.client.http.HttpGDataRequest.execute(HttpGDataRequest.java:538) 
at com.google.gdata.client.http.GoogleGDataRequest.execute(GoogleGDataRequest.java:536) 
at com.google.gdata.client.media.MediaService.insert(MediaService.java:400) 

Может ли вы помочь мне исправить эту ошибку?

Как я могу получить дополнительную информацию об этом?

Благодаря Stefano

+0

нет идеи по этой проблеме? – stefano

ответ

0

Я нашел проблему; это было связано с типом контента, который я не использовал. В моем exaqmple я сообщил «image/jpeg» как параметр «нового метода MediaStreamSource()». В моем исходном коде я использовал переменную как тип контента, и она была настроена не так, по этой причине у меня была ошибка.