java调用wordpress xmlrpc发布图片博客,wordpressxmlrpc,public stati
分享于 点击 48769 次 点评:264
java调用wordpress xmlrpc发布图片博客,wordpressxmlrpc,public stati
public static void updateSite(String site, String xmlrpc, String user, String passwd, String userid, NewsPo news) { XmlRpcClient client = null; try { client = new XmlRpcClient(new URL(xmlrpc), true); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } // if (news.getAttach() != null && news.getAttach().length > 0) { StringBuffer sb = new StringBuffer(); for (int i = 0; i < news.getAttach().length; i++) { File orig = new File(news.getAttach()[i]); Map<Object, Object> origData = new HashMap<Object, Object>(); origData.put("name", orig.getName()); origData.put("type", "image/jpeg"); try { origData.put("bits", FileUtils.readFileToByteArray(orig)); } catch (IOException ex) { Logger.getLogger(WPtools.class.getName()).log(Level.SEVERE, null, ex); } origData.put("overwrite", Boolean.TRUE); Object[] origParams = new Object[]{new Integer(0), user, passwd, origData}; Object origUploadResult; try { origUploadResult = client.invoke("metaWeblog.newMediaObject", origParams); Map<String, String> origResult = (HashMap<String, String>) origUploadResult; sb.append("<br/><a href=" + origResult.get("url") + " >查看大图</a>"); } catch (XmlRpcException ex) { Logger.getLogger(WPtools.class.getName()).log(Level.SEVERE, null, ex); } catch (XmlRpcFault ex) { Logger.getLogger(WPtools.class.getName()).log(Level.SEVERE, null, ex); } } news.setContent(news.getContent() + " <br/>欢迎欣赏 [gallery]" + sb.toString()); } // 取数据更新rpc Vector v = new Vector(); v.add(userid); v.add(user); v.add(passwd); Hashtable hashtable = new Hashtable(); hashtable.put("title", news.getTitle()); hashtable.put("description", news.getContent()); hashtable.put("dateCreated", news.getCreated()); String category[] = new String[1]; category[0] = news.getCat(); hashtable.put("categories", category); hashtable.put("mt_keywords", news.getKeywords()); v.add(hashtable); v.add("true"); try { Object result = client.invoke("metaWeblog.newPost", v); System.out.println("received: " + result + news.getTitle()); //删掉这个文件 new File(news.getOrgFile()).delete(); } catch (Exception e) { System.out.println(e); }}//该片段来自于http://byrx.net
用户点评