Trabajando con Contactos en Exchange Server usando WebDav

Obteniendo Contactos de un Exchange Server

El método listContacts() de la clase ExchangeClient se puede utilizar para obtener información de contacto de un Exchange Server. El método listContacts() requiere la URI de la carpeta de Contactos, que se puede obtener fácilmente con la propiedad ExchangeMailboxInfo.ContactsUri.

Para obtener contactos de un Exchange Server:

  1. Inicializa la clase ExchangeClient con la dirección y las credenciales.
  2. Obtén la URI de la carpeta de Contactos con la propiedad ExchangeClient.getMailboxInfo().getContactsUri().
  3. Llama al método listContacts(). Este devuelve un array de MapiContact.
  4. Realiza un bucle foreach en el array de MapiContact para leer la información de contacto.

El siguiente fragmento de código te muestra cómo usar la clase ExchangeClient para leer todos los contactos de un Exchange Server.

String mailboxURI = "http://ex2003/exchange/administrator"; // WebDAV
String username = "administrator";
String password = "pwd";
String domain = "domain.local";

// Credentials for connecting to Exchange Server
NetworkCredential credential = new NetworkCredential(username, password, domain);
ExchangeClient client = new ExchangeClient(mailboxURI, credential);

// List all the contacts
MapiContact[] contacts = client.listContacts(client.getMailboxInfo().getContactsUri());
for (MapiContact contact : contacts)
{
    // Display name and email address
    System.out.println("Name: " + contact.getNameInfo().getDisplayName() + ", Email Address: " + contact.getElectronicAddresses().getEmail1());
}