Ich bekomme ungültige Argument Ausnahme bei der Verwendung von Update MediaContent.Google Drive api Java Update Inhalt einer Datei
private static File updateFile(Drive service, String fileId,
String newMimeType, String newFilename, boolean newRevision) {
try {
// First retrieve the file from the API.
File file = service.files().get(fileId).execute();
file.setMimeType(newMimeType);
// File's new content.
java.io.File fileContent = new java.io.File(newFilename);
FileContent mediaContent = new FileContent(newMimeType, fileContent);
// Send the request to the API.
File updatedFile = service.files().update(fileId, file, mediaContent).execute();
return updatedFile;
} catch (IOException e) {
System.out.println("An error occurred: " + e);
return null;
}
}
Ich erhalte diese Ausnahme:
java.lang.IllegalArgumentException
at com.google.api.client.repackaged.com.google.common.base.Preconditions.checkArgument(Preconditions.java:111)
at com.google.api.client.util.Preconditions.checkArgument(Preconditions.java:37)
at com.google.api.client.googleapis.media.MediaHttpUploader.setInitiationRequestMethod(MediaHttpUploader.java:872)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.initializeMediaUpload(AbstractGoogleClientRequest.java:237)
at com.google.api.services.drive.Drive$Files$Update.<init>(Drive.java:3163)
at com.google.api.services.drive.Drive$Files.update(Drive.java:3113)
at sai.sai.vasa.main(vasa.java:247)
wenn ich die Aktualisierung nur die Metadaten einer Datei die Methode Update (fileId, fileMetadata), es funktioniert gut. aber als ich versucht habe, mediacontent als dritten Parameter in Update hinzuzufügen, wie in API definiert, bekomme ich die obige Ausnahme.
Wie löst man diesen Fehler? Wie man es in Version3 macht. Ich möchte es nur in Version 3 tun, aber ich konnte den Update-Code in der Laufwerk-API nicht finden.
Vielen Dank für die Antwort. Der betreffende Code wurde bearbeitet. Wir haben versucht, was Sie gesagt haben aber immer noch den gleichen Fehler. Bitte überprüfen Sie, wo wir wieder Fehler gemacht haben. –