JEC - The Best-Run Businesses Run JECText-Only View

 |  |  Features  |  Benefits | About

Evaluation & Licensing Information
User Guide

Both JEC and EWSJ have the same goal, which is a smooth Java, Microsoft Exchange© Server Interoperability, they Just do it with different protocols. JEC uses Webdav, EWSJ uses EWS (Exchange Web Services).


    Core Engine
  • SSL/NO SSL - Connect to exchange server with or without SSL.
  • FBA (Form Based Authentication) support.
  • NTLM (Windows Integrated Authentication) Support.
  • NTLMv2 Support.
  • Kerberos Authentication Support (EWSJ 365).
  • Digest Authentication support.
  • Basic Authentication support.
  • All operations can be performed on specific exchange folders including support for i18n folder names and public folders.
  • browse folders.
  • Connect via non default port to Exchange.
  • Zimbra support. (See for all operations supported)
  • Kerio support. (See for all operations supported)

  • EWSJ Supplements
  • EWS Filters.
  • EWSJ pagination support (see: getEmailsWithPagingExample() )
  • NTLMv2 (Windows Integrated Authentication) Support.
  • EWSJ mailbox sharing (user1 can access user2 mailbox using user1 credentials).
  • EWSJ Impersonation support. (see addEventToAnotherUserCalendarExample() ).
  • PSB (Power Shell Bridge) client support (see runRemotePowerShellScriptExample() ).
  • Get User Defined (Custom) properries get support.
  • Get User Defined (Custom) properries batch get support.
  • User Defined (Custom) properries update support.
  • User Defined (Custom) properries batch update support.
  • Ability to Prefer Basic or Digest authentication (If supported by Exchange) to increase preformance (See disableNTLMAuthenticationExample() )
  • Create folder support. (See createFolderExample() )
  • Access resources support (see Accessing resources guide )
  • Move Item support (see moveItemExample() ).
  • Support for general attachment addition (to events, tasks, contacts), see example: addAttachmentsToEventExample().
  • Batch delete support, see example: batchDeleteItemsExample().
  • Pagination support, see example: getEmailsWithPagingExample().
  • Set OOF (Out Of Office) reply support, see example: setOOFReplyExample().
  • Get OOF (Out Of Office) reply support, see example: getOofReplayExample().
  • get Exchange version support, see example: getExchangeVersionExample().
  • Is item exists support, see example: isItemExistExample().
  • Delete folder, see example: createFolderAndDeleteItExample().
  • Session persistance (to speed-up 365 performance), see example: addEventWithSessionPersistanceExample().
  • Delete attachment support, see example: deleteEventAttachmentExample().

  • JEC Supplements
  • Create folder support, supporting folder types: email, calendar, task. see example: createFolderExample()
  • Attachments support for all handlers.
  • Set Signature support. (see setOptionsExample() ).
  • Set auto-reply support (see setOptionsExample() ).
  • Move Item support (see moveEmailExample() ).
  • Get all items by URL (see getContactByURLExample() ).
  • Get attachments info without the content support for all handlers (see: getAttachmentsInfoExample() )
  • Support for soft delete and item (see softDeleteItemExample() ).

  • getContacts(...) - Get contacts from exchange, including all contact details, contacts are returned as simple DTO objects.
  • addContact(...) - Create a DTO object that represents a contact, and use JEC interface to add it to exchange.
  • updateContact(...) - Get a contact from exchange, update it, and apply the update on exchange server.
  • getContacts(...) - Get a list of contacts from exchange
  • deleteContact(...) - Delete a contact on exchange server.
  • Add / update / delete Public contacts.
  • Add / update / delete contacts on any sub folder.
  • Sorter support, can sort on using every field (see: getContactsWithSorterExample() )
  • Genearl field filtering support
  • . (see getContactsWithFilterExample()).
  • Gal Find command support. (see galFindExample() )

  • JEC Supplements
  • Get/Set user defined fields. see example: getContactsWithUserDefinedFieldsExample(), updateContactUserDefinedFieldExample().
  • Get, Set contacts Categories. see example:getContactsExample() and addContactsExample().
  • Get Attachment support.
  • Contacts synchronization support: see getContactsWithLastModifiedDateFilterExample().
  • Get Distribution List support (see getDistributionListExample()).

    EWSJ Supplements
  • Contact filters (Search Expression).
  • Sorter support.
  • Resolve Name support, query into Active directory(resolveNameExample())
  • Support for getting distribution lists in get Contacts.
  • Support for getting MAPI fields (see: getContactExtendedFieldExample() ).
  • Support for setting MAPI fields (see: setContactExtendedFieldExample() ).
  • Support for Expand DL (Expand Distribution List) opetration (see: expandDLExample() ).


  • addEvent(...) - Create a DTO object that represents an event and add it to exchange, the event will appear immediately on exchange.
  • getEvents(...) - Get events appearing in exchange server.
  • updateEvent(...) - Get an event represented by a DTO from exchange, update it and apply the changes back to exchange.
  • Delete event.
  • Add event with attendees.
  • Add All-day event.
  • getUserAvailabilityData(...) - get User availability Data.
  • Events synchronization support: see getEventsWithLastModifiedDateFilterExample()
  • Get attachments support.

  • JEC Supplements
  • sendMeetingRequest(...) - Sends a meeting request.
  • acceptMeetingRequest(...) - Accepts a meeting request.
  • getEventsFiltered(...) - Get events filtered by a certain criteria, for example, start date and end date criteria.
  • Get, Set Event categories (getEventsExample(), addEventExample()).
  • Get Event sensitivity (getEventsExample()).
  • Send Meeting request via SMTP/Secured SMTP.
  • Send and Accept Meeting Requests via WebDav.
  • Decline meeting request support (
  • Tentative meeting request response support (
  • Getting recurrence rule (see addRecurrentEventAndGetThisEventRecurrenceRuleStrExample()).
  • Create recurrence support. (see addRecurrentEventExample() ).
  • UID filtering support.
  • Create appointment support (meeting with no attendees).
  • Get Attachment support.
  • Sorter support, can sort on using every field (see: getEventsUsingSorterExample() )
  • get Recurrent Events By Uid. this method will get all occurrences exceptions and master record of a recurrent event.
    using its UID. (see getRecurrentEventsByUidExample() ) .

    EWSJ Supplements
  • EWSJ get user availability data.
  • EWSJ update meeting attendees (and send meeting requests accordingly).
  • EWSJ append attendees support.
  • EWSJ recurrence support.
  • EWSJ All-day event creation support.
  • Sorter support.
  • Support for meeting request event association. (getMeetingRequestAndAcceptExample())
  • Support for accept meeting request. (getMeetingRequestAndAcceptExample()).
  • Support for decline meeting request.(getMeetingRequestAndAcceptExample()).
  • Support for tentatively accept meeting request.(getMeetingRequestAndAcceptExample()).
  • Support for Event Append description (body).
  • Get Attachment support (see getFullEventExample()).
  • Get Attendees response support (see getEventAttendeesResponseTypeExample()).
  • Recurrence support get/update(see getRecurrentEventsExample()).
  • update/add/get event categories support(see updateEventExample()).
  • Support for getting Events With User Defined Properties (see getEventsWithUserDefinedPropertiesExample() )
  • Support for getting full events in one method call(see getFullEventsExample()).


  • getEmails(...) - Get emails from exchange server.
  • getEmails with attachments.
  • delete email.
  • update read flag. see example: updateEmailReadFlagExample().
  • sendEmail(...) - send email.
  • sendEmail with attachment.

  • EWSJ Supplements
  • EWSJ Support for rfc822 attachments (email as an attachment).
  • EWSJ update isRead flag. see example: updateEmailReadFlagExample().
  • EWSJ Support for sending emails.
  • EWSJ get email shallow support, getting only the basic email information to increase performance.
  • EWSJ Support for sending emails with attachments.
  • Sorter support.
  • Support for outlook msg file attachments (email that have email attachments in the msg format).
  • Email Forward support(see getFullEmailAndForwardItExample()).
  • Send email with Inline Attachments support(see sendEmailWithInlineAttachmentExample()).
  • Support for getting the full MIME content of the email (base64 encoded).(see getFullEmailExample()).
  • Send email on behalf of group support, see sendEmailFromGroupExample().
  • Inline attachments support for Exchange 2010 see sendEmailWithInlineAttachmentExample().
  • Reply, ReplyAll support see replyOrForwardEmailExample().
  • Forward support see replyOrForwardEmailExample().
  • Support for getting email ids for improved performance (see getEmailIdsExample() ).
  • Support for ReplyTo (see sendEmailExample() ).

  • JEC Supplements
  • Server side subject filtering support.
  • Get emails using range (partitioning) support, date range and index range. (see example: getEmailsUsingRangeExample() ).
  • Emails sync support (see example: getEmailsWithLastModifiedDateFilterExample() ).
  • Sorter support, can sort on using every field (see: getEmailsUsingRangeWithSortExample() )
  • Support for getting msg attachments (email that have an email as an attachment).
  • Support for getting email using its URL.
  • Support for getting email using its UniqueIdForURL.
  • Support Server side Partial email subject filter (see getEmailsUsingSubjectFilterExample()).
  • Server side Partial email body filter support (see getEmailsUsingBodyFilterExample()).
  • Server side exact email body filter support (see getEmailsUsingBodyFilterExample()).


  • getTasks(...) - Get list of tasks from exchange server.
  • addTask(...) - Add tasks to exchange server.
  • updateTask(...) - Update tasks on exchange server.
  • Delete Task(...) - Delete a task on exchange server.
  • Task reminder(...) - Add or update task reminder
  • Sorter support, can sort on using every field.

  • JEC Supplements
  • Get, Set Task categories (addTaskExample()).
  • Get Attachment support (getTaskAttachmentsExample()).
  • get task using its uniqueId support (getTaskUsingItsUniqueIdExample()).
  • Filter support. (getTasksWithSorterAndFilterExample() ).
  • Sorter support. (getTasksWithSorterAndFilterExample()).
  • Synchronization Support. (getTasksWithLastModifiedDateFilterExample()).
  • Assign task support (assignTaskExample()).

  • EWSJ Supplements
  • EWSJ get task with search expression support.
  • EWSJ get full task support.
  • Get attachments support. (see getFullTaskExample() )

    EWSJ Notifications
  • Notification pull subscribe - See notificationsExample()
  • Notification Unsubscribe - See notificationsExample()
  • Get Notification events - See notificationsExample()
Learn more about JEC and EWSJ solutions and services. More ...