2014-12-02 19 views
0

我正在PicasaWeb上使用Google App Engine上的web應用程序開展工作。 我使用此代碼上傳照片:從GAE上傳照片至PicasaWeb的不良要求

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) 

你能幫我解決這個問題?

我怎麼能得到關於這方面的更多信息?

感謝 斯特凡諾

+0

不知道這個問題? – stefano 2014-12-22 17:09:00

回答

0

我發現的問題;它與我正在使用的無效內容類型有關。 在我的例子中,我報告了「image/jpeg」作爲「new MediaStreamSource()」方法的參數。在我最初的代碼中,我使用了一個變量作爲內容類型,並且設置的方式很糟糕,因此我有錯誤。