2012-02-23 3 views
2

Я был настолько удручен Google API. Каждый раз, когда я пытаюсь, он просто не работает даже после сбора тонны банок отсюда и там. Я был бы очень признателен, если кто-то может помочь мне с ниже фрагмент кода ->Невозможно запустить google gdata api для google docs

import java.net.URL; 
import com.google.gdata.client.docs.DocsService; 
import com.google.gdata.data.docs.DocumentListEntry; 
import com.google.gdata.data.docs.DocumentListFeed; 


public class TestGoogleDocs { 

    public static void main(String[] args) { 
     try { 
      System.err.println("== Testing Google Docs =="); 
      DocsService docService = new DocsService("Document list"); 
      docService.setUserCredentials("*****@gmail.com", "******"); 

      URL documentFeedURL = new URL("http://docs.google.com/feeds/documents/private/full"); 

      DocumentListFeed docsFeed = docService.getFeed(documentFeedURL, DocumentListFeed.class); 

      for(DocumentListEntry entry: docsFeed.getEntries()){ 
       System.err.println(entry.getTitle().getPlainText()); 
      } 
     } catch (Exception e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
    } 

} 

я добавил следующие фляги файлы в пути к классам:

gdata-client-1.0.jar 
gdata-client-meta-1.0.jar 
gdata-core-1.0.jar 
gdata-media-1.0.jar 
gdata-docs-3.0.jar 
gdata-docs-meta-3.0.jar 

activation.jar 
mail.jar 
servlet-api.jar 

guava-r09.jar 

Ошибка я получаю это:

com.google.gdata.util.ResourceNotFoundException: Not Found 
<HTML> 
<HEAD> 
<TITLE>Not Found</TITLE> 
</HEAD> 
<BODY BGCOLOR="#FFFFFF" TEXT="#000000"> 
<H1>Not Found</H1> 
<H2>Error 404</H2> 
</BODY> 
</HTML> 

    at com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:591) 
    at com.google.gdata.client.http.GoogleGDataRequest.handleErrorResponse(GoogleGDataRequest.java:563) 
    at com.google.gdata.client.http.HttpGDataRequest.checkResponse(HttpGDataRequest.java:552) 
    at com.google.gdata.client.http.HttpGDataRequest.execute(HttpGDataRequest.java:530) 
    at com.google.gdata.client.http.GoogleGDataRequest.execute(GoogleGDataRequest.java:535) 
    at com.google.gdata.client.Service.getFeed(Service.java:1135) 
    at com.google.gdata.client.Service.getFeed(Service.java:998) 
    at com.google.gdata.client.GoogleService.getFeed(GoogleService.java:631) 
    at com.google.gdata.client.Service.getFeed(Service.java:1017) 
    at com.javainsight.cloud.TestGoogleDocs.main(TestGoogleDocs.java:21) 

ответ

3

Я думаю, что URL-адрес является проблемой URL-адреса - см. Ниже для более подробной информации.

Я думаю, что лучше начать с примера кода в gdata/java/sample/docs и взять классы исключения DocumentList и DocumentList из примера.

Если вы делаете так, что уменьшает выше пример:

import com.google.gdata.data.docs.DocumentListEntry; 
import com.google.gdata.data.docs.DocumentListFeed; 

public class Example { 

static public void main(String[] args) throws Exception { 
    DocumentList docList = new DocumentList("document"); 
    docList.login("********@gmail.com", "********"); 
    DocumentListFeed feed = docList.getDocsListFeed("all"); 
    for (final DocumentListEntry entry : feed.getEntries()) { 
     System.out.println(entry.getTitle().getPlainText()); 
    } 
    } 
} 

Этот пример работал для меня (с R09 гуавы JAR).

Трассировка этот пример показывает, что сгенерированный URL является

"https://docs.google.com/feeds/default/private/full" 
+0

Большое спасибо.! Это решило мою проблему. – user381878

0

Да, это как далеко я тоже. Интересно, имеет ли проблема что-то с библиотекой Guava - я попробовал Guava 11, но они вытащили вызов ImmutableSet.of (Object [] objs) в октябре 2011 года после текущей версии gdata (сентябрь 2011 г.).

Мое первое подозрение было бы URL-адресом ... вот что я пытаюсь сейчас.

0

Я хотел бы добавить одно замечание для тех, кто, возможно, имели ту же проблему, что у меня было:

Веб-адрес был просто отлично , но я использовал guava-11.0.1, попробовал guava-11.0.2, попробовал guava-14, и никто из них не работал. Увидев это, я вместо этого использовал guava-r09, и он отлично работал.

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