Java integration with Microsoft Exchange

Posted on 2000-02-04
Medium Priority
Last Modified: 2008-03-06

Hi there

I've been trying to integrate Java with Microsoft Exchange for the past few days. I started off by using the Microsoft JDK to wrap around the CDO objects. This approach works but I'd rather use the SUN SDK since this won't tie me to Microsoft. The only way I have found of doing this though is by using J-Integra from Linar to wrap the CDO Com objects. Unfortunately this isn't all that easy and I've been having a few problems. Is there any other way of getting at Exchange objects through Java using the SUN SDK.

Thanks in adavance

Question by:adriansmith
  • 2

Author Comment

ID: 2489150
Adjusted points to 75

Accepted Solution

Jod earned 210 total points
ID: 2489224
How much do you know about COM programming?

You will need to write some native code in C++ and call this from your Java code via the JNI.

Details on how to do this are here:


In your native code you will need to get the pointer to the COM interface and you can then pass this back to the Java code as an int value.

Store this and you can then use this to access the COM interface (EG. in Exchange).

The routines that actually access Exchange will have to be written in  native code such as C++ but once you have these set up you can then call them from Java to control Exchange by passing in the pointer to the interface you have acquired earlier.

Author Comment

ID: 2489266
Thanks Tod. I don't know much about COM programming but I guess this is a good opportunity to learn.

Expert Comment

ID: 13819871
Doing it via JNI/native code means you have to wrap all the CDO functionality in C/C++. This could easily get out of hand but if you have the time and resources, then by all means. If you are like most developers who are always tight on schedule, your best bet would still be to go for a Java to COM bridge like J-Integra for Exchange.

The good thing about proprietary tools is that you'll have support when you need it. Of course, the major drawback is that you have to pay.  

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

By the end of 1980s, object oriented programming using languages like C++, Simula69 and ObjectPascal gained momentum. It looked like programmers finally found the perfect language. C++ successfully combined the object oriented principles of Simula w…
Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
Viewers will learn about the different types of variables in Java and how to declare them. Decide the type of variable desired: Put the keyword corresponding to the type of variable in front of the variable name: Use the equal sign to assign a v…
This tutorial explains how to use the VisualVM tool for the Java platform application. This video goes into detail on the Threads, Sampler, and Profiler tabs.
Suggested Courses
Course of the Month6 days, 18 hours left to enroll

593 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question