Dear Eric, Though I also told you the delete operation needed a few seconds sleep in past, I think this behavior causes such a trouble against many developers like this. Is it difficult to fix the behavior ?
On 8月4日, 午前4:09, Eric Bidelman <api.e...@google.com> wrote: > Hi John, > I just tried this an it seemed to work. I wonder if it's b/c you're > creating the document, and immediately deleting it. > What if you sleep for a few seconds and then try the delete? > > Eric > > On Sun, Aug 2, 2009 at 1:21 PM, John Brayton <johnbray...@gmail.com> wrote: > > > I am having some difficulty deleting documents from my Google Apps > > accounts, and wonder if someone can help me. The code below > > demonstrates what appears to be the problem. It does the following: > > > 1. Creates and uploads a new document. > > 2. Deletes that document. > > 3. Retrieves a list of documents, and displays the text "entry still > > there". > > > If I set the USERNAME and PASSWORD constants to a gmail.com account, > > this works as expected, and I don't see the "entry still there" text. > > But if I set the USERNAME and PASSWORD constants to a Google Apps > > account, I do see that text and I see the entries within the Google > > Docs UI. > > > Any help would be appreciated. Thanks. > > > John > > > === > > > import com.google.gdata.client.docs.DocsService; > > import com.google.gdata.data.PlainTextConstruct; > > import com.google.gdata.data.docs.DocumentEntry; > > import com.google.gdata.data.docs.DocumentListEntry; > > import com.google.gdata.data.docs.DocumentListFeed; > > import java.io.File; > > import java.net.URL; > > import java.util.List; > > > public class DeleteDemo { > > > private static final String USERNAME="..."; > > private static final String PASSWORD="..."; > > > private static final String DOC_UPLOAD_1 = "docupload1.html"; > > > public static final void main( String[] args ) { > > try { > > > // Build a unique document title. > > String title = "deleteme " + > > String.valueOf(System.currentTimeMillis > > ()); > > > // Upload the document. > > DocsService service = getService(); > > URL url = doInitialUpload(title); > > > // Delete the document. > > DocumentEntry doc = service.getEntry(url, > > DocumentEntry.class); > > doc.delete(); > > > // See if the document is still there. > > checkForDocument(title); > > } catch (Exception e) { > > e.printStackTrace(); > > } > > } > > > /** > > * Display the text "entry still there" if the entry with the > > specified title is present in > > * the account. > > */ > > private static final void checkForDocument(String title) throws > > Exception { > > DocsService service = getService(); > > URL url = new URL(" > >https://docs.google.com/feeds/documents/private/ > > full"); > > DocumentListFeed feed = service.getFeed(url, > > DocumentListFeed.class); > > List<DocumentListEntry> entries = feed.getEntries(); > > for( DocumentListEntry entry : entries ) { > > if (entry.getTitle().getPlainText().equals(title)) { > > System.out.println("entry still there!"); > > } > > } > > } > > > /** > > * Login and return a DocsService object. > > */ > > private static final DocsService getService() throws Exception { > > DocsService service = new DocsService("jbtest"); > > service.setUserCredentials(USERNAME, PASSWORD); > > return service; > > } > > > /** > > * Create a new GoogleDocs document based on a local HTML file. > > Return the URL of the new > > * document. > > */ > > private static final URL doInitialUpload(String title) throws > > Exception { > > DocsService service = getService(); > > System.out.println("title: " + title); > > URL url = new URL(" > >https://docs.google.com/feeds/documents/private/ > > full"); > > DocumentEntry newDocument = new DocumentEntry(); > > File documentFile = new File(DOC_UPLOAD_1); > > newDocument.setFile(documentFile); > > newDocument.setTitle(new PlainTextConstruct(title)); > > DocumentEntry doc = service.insert(url, newDocument); > > return new URL(doc.getId()); > > } > > > } --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Docs Data APIs" group. To post to this group, send email to Google-Docs-Data-APIs@googlegroups.com To unsubscribe from this group, send email to google-docs-data-apis+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/Google-Docs-Data-APIs?hl=en -~----------~----~----~----~------~----~------~--~---