Hallo Zusammen,
ich weiß nicht genau ob es hier im Allgemeinen Forum korrekt aufgehoben ist, aber die anderen waren nicht passender. Ich würde gerne wissen wie ich das Bild übertragen muss mittels XML-RPC sodass es korrekt ankommt? Irgendwie habe ich ein Problem mit der Kodierung vermute ich, denn die Datei wird korrekt in Wordpress angelegt jedoch sind die Bilder immer kaputt. Ich versuche das ganze in Java mittels der Redstone XMLRPC Library. Hier mein Codeausschnitt:
Code
public static void uploadPicAndGetId(XmlRpcClient client, String username, String password) throws XmlRpcException, XmlRpcFault, IOException{
String path = "C:\\9783815784457g.jpg";
File file = new File(path);
Map<Object, Object> fileData = new HashMap<Object, Object>();
fileData.put("name", "testbild.jpg");
fileData.put("type", "image/jpeg");
fileData.put("bits", encodeImage(file));
fileData.put("overwrite", Boolean.TRUE);
Object[] params = new Object[]{new Integer(0), username, password, fileData};
client.invoke("metaWeblog.newMediaObject", new Object[] {new Integer(1), username, password, fileData, true} );
System.out.println("done");
}
public static String encodeImage(File file) throws IOException {
FileInputStream imageInFile = new FileInputStream(file);
byte imageData[] = new byte[(int) file.length()];
imageInFile.read(imageData);
return Base64.encodeBase64URLSafeString(imageData);
}
Alles anzeigen
Das merkwürdige ist in der Doku von wordpress steht dass das Bild nicht Base64 codiert sein soll, aber alle Beispiele die ich finde sind Base64 codiert. Freue mich über jegliche Hilfe.
Gruß!