2011-10-04 99 views
1

我使用GData API的DocumentListEntry的updateMedia(boolean)方法。 有時候這個命令有效,但在大多數情況下拋出異常。在使用「DocumentListEntry.updateMedia()」方法時遇到GData API問題

代碼(documentList是DocumentListEntry對象):

public void flush() throws IOException { 
    try { 
     if(((ByteArrayOutputStream)os).size()>0){ 
      documentList.setMediaSource(
        new MediaByteArraySource(((ByteArrayOutputStream)os).toByteArray(), mimeType)); 
      documentList.updateMedia(true); 
      ((ByteArrayOutputStream)os).reset(); 
     } 
    } catch (ServiceException ex) { 
     throw new IOException(ex); 
    } 
} 

命令 「documentList.updateMedia(真)」;拋出這個例外:

java.lang.reflect.InvocationTargetException 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216) 
     at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:162) 
     at com.ralph.agente.Agent.run(Agent.java:191) 
     at com.ralph.agente.Agent.run(Agent.java:134) 
     at company.google.conexao.RecebeObjetoThread.geraSinaisVitaisAgent(RecebeObjetoThread.java:61) 
     at company.google.conexao.RecebeObjetoThread.run(RecebeObjetoThread.java:133) 
     at java.lang.Thread.run(Thread.java:662) 
Caused by: java.io.IOException: com.google.gdata.util.InvalidEntryException: Unexpected resource version ID 
<errors xmlns='http://schemas.google.com/g/2005'><error><domain>GData</domain><code>invalidResourceVersion</code><internalReason>Unexpected resource version ID</internalReason></error></errors> 

     at com.company.google.io.GoogleDocsOutputStream.flush(GoogleDocsOutputStream.java:142) 
     at com.company.google.io.GoogleDocsOutputStream.close(GoogleDocsOutputStream.java:148) 
     at br.edu.company.google.processo.GeraSinaisVitaisAgent.bodyAgent(GeraSinaisVitaisAgent.java:133) 
     ... 11 more 
Caused by: com.google.gdata.util.InvalidEntryException: Unexpected resource version ID 
<errors xmlns='http://schemas.google.com/g/2005'><error><domain>GData</domain><code>invalidResourceVersion</code><internalReason>Unexpected resource version ID</internalReason></error></errors> 

     at com.google.gdata.client.http.HttpGDataRequest.handleErrorResponse(HttpGDataRequest.java:594) 
     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.update(Service.java:1563) 
     at com.google.gdata.client.Service.update(Service.java:1530) 
     at com.google.gdata.client.GoogleService.update(GoogleService.java:583) 
     at com.google.gdata.client.media.MediaService.update(MediaService.java:484) 
     at com.company.google.io.GoogleDocsOutputStream.flush(GoogleDocsOutputStream.java:137) 

有人可以幫助我嗎?

+0

Correcttion 正確的堆棧跟蹤是這樣的: –

回答