עבודה עם תיקיות ב-WebDav

רישום כל התיקיות מהשרת

Aspose.Email API מספקת את היכולת להתחבר ל-Exchange Server ולרשום את כל התיקיות והתת‑תיקיות. ניתן גם לאחזר את כל התת‑תיקיות מכל תיקייה באופן רקורסיבי. מאמר זה מציג כיצד לאחזר את כל התת‑תיקיות משרת ה‑Exchange וכן לאחזר תיקיות עם דפדוף.

שימוש ב-WebDav

קטע הקוד הבא מציג כיצד לרשום תיקיות מ-Exchange Server.

public static void run() {
    try {
        ExchangeClient client = new ExchangeClient("http://ex07sp1/exchange/Administrator", "user", "pwd", "domain");
        System.out.println("Downloading all messages from Inbox....");

        ExchangeMailboxInfo mailboxInfo = client.getMailboxInfo();
        System.out.println("Mailbox URI: " + mailboxInfo.getMailboxUri());
        String rootUri = client.getMailboxInfo().getRootUri();
        // List all the folders from Exchange server
        ExchangeFolderInfoCollection folderInfoCollection = client.listSubFolders(rootUri);
        for (ExchangeFolderInfo folderInfo : folderInfoCollection) {
            // Call the recursive method to read messages and get sub-folders
            listSubFolders(client, folderInfo);
        }

        System.out.println("All messages downloaded.");
    } catch (Exception ex) {
        System.err.println(ex);
    }
}

private static void listSubFolders(ExchangeClient client, ExchangeFolderInfo folderInfo) {
    System.out.println(folderInfo.getDisplayName());
    try {
        // If this folder has sub-folders, call this method recursively to get messages
        ExchangeFolderInfoCollection folderInfoCollection = client.ListSubFolders(folderInfo.Uri);
        for (ExchangeFolderInfo subfolderInfo : folderInfoCollection) {
            listSubFolders(client, subfolderInfo);
        }
    } catch (Exception ex) {
        System.err.println(ex);
    }
}