在java中使用SOAP在共享点中创建新目录

在java中使用SOAP在共享点中创建新目录,java,soap,Java,Soap,我刚刚开始使用java开发share point,我的公司使用share point 2010版本,所以我必须使用SOAP,我已经完成了以下功能。 从共享点下载文档。 将文档上载到共享点 但我在创建新目录时遇到了困难,我曾通过谷歌搜索尝试过一些代码,但没有成功。 这是我的密码: public void createFolder(ListsSoap ls, String filePathToCreate, String fileName, LoginDO loginDO,

我刚刚开始使用java开发share point,我的公司使用share point 2010版本,所以我必须使用SOAP,我已经完成了以下功能。 从共享点下载文档。 将文档上载到共享点

但我在创建新目录时遇到了困难,我曾通过谷歌搜索尝试过一些代码,但没有成功。 这是我的密码:

public void createFolder(ListsSoap ls, String filePathToCreate,
            String fileName, LoginDO loginDO, HttpServletResponse response)
            throws Exception {
        try {
            String query = "";
            String folderName = "NewFolder";
            // 1. Prepare Query, Query Options and field Options
            if (CommonUtilities.isValidStr(folderName)) {
                // Prepare Query & Query Options for child folders

query = "<Batch OnError=\"Continue\" PreCalc=\"TRUE\" ListVersion=\"0\" " + "RootFolder=\"https://xxx/Shared%20Documents/FPL%20SOs%20-%20JD%20Documents\">" + "<Method ID=\"1\" Cmd=\"New\">" + "<Field Name=\"FSObjType\">1</Field>" +"<Field Name=\"ID\">New</Field>" + "<Field Name=\"BaseName\">" + folderName + "</Field>" + "</Method></Batch>"; } else { // Prepare Query & Query Options for Parent folders query = "<Query><Where><Eq><FieldRef Name=\"FSObjType\" />" + "<Value Type=\"Lookup\">1</Value></Eq></Where></Query>"; } UpdateListItems.Updates updates = null; // 2. Prepare Query, QueryOptions & ViewFields object as per options if (CommonUtilities.isValidStr(query)) { updates = new UpdateListItems.Updates(); updates.getContent().add( sharepointUtil.createSharePointCAMLNode(query)); } // 3. Call Web service to get result for selected options UpdateListItemsResult result = ls .updateListItems(SHAREPOINT_FOLDER_NAME,updates); /* * CommonUtilities * .getApplicationProperty(ApplicationConstants.SHAREPOINT_FOLDER_NAME * ), "", msQuery, viewFields, "", msQueryOptions, ""); */ // 4. Get elements from share point result Element element = (Element) result.getContent().get(0); NodeList nl = element.getElementsByTagName("z:row"); for (int i = 0; i < nl.getLength(); i++) { Node node = nl.item(i); System.out.println("Some.!"); } } catch (Exception e) { e.printStackTrace(); } // logger.logMethodEnd(); }`
无论如何,updateListItems方法执行时没有错误,但结果中并没有任何内容

感谢您的帮助。
谢谢你:

看来这里面有问题


"RootFolder=\"https://xxx/Shared%20Documents/FPL%20SOs%20-%20JD%20Documents\">"

传递根目录以在其中创建文件夹时。 通过传递具有完整目录层次结构的folderName找到了其他解决方法

感谢大家的投入:

也许这会有所帮助