IBM has put considerable effort into improving WebSphere programmability over recent years. WebSphere means Java, and Java, in the early days, meant "roll your own."
That has changed. One of IBM's most significant contributions to improved Java programmability has been Eclipse. In fact, Eclipse can be viewed as an IBM tool alternative to Microsoft's lower-end .NET tool sets, albeit in the form of open source software, since IBM ceded its Eclipse framework and IDE to the Eclipse Consortium in 2001.
The Lotus Workplace client adheres to the Eclipse framework. WebSphere Studio Application Developer is based on Eclipse. Just as important, the ability to debug Java agents that comes with Lotus Notes/Domino 7 will bring Eclipse into closer view for Notes developers. Java agents can run in both Notes/Domino and WebSphere, as well as Workplace settings.
In an article that can be found on IBM's DeveloperWorks site, Ian Connor, a maintenance software engineer with IBM who also works on Lotus Team Workplace, describes some of the ins and outs of using Lotus Notes with Eclipse to manage agents. The article tells how to install Eclipse, how to create a project for Lotus Notes/Domino, and how to import the project into a Domino Java agent. Another article on the site, also authored by Connor, shows how to use Eclipse to access the Notes/Domino back-end Java classes. [See links below.]
For Notes/Domino developers, these types of projects can be useful steps toward Java and Workplace. In an interview with searchDomino, Connor outlined his use of Eclipse as a way to move (and debug) Java agents into Lotus Notes/Domino 7.
Connor called the multifaceted Eclipse "a framework, an IDE and a platform for building things upon." His first use of Eclipse, he said, was as an IDE. "It is a useful tool with which you can get started writing code," he said. As an IDE, he noted, Eclipse supports debugging and refactoring.
After his first encounter with the software, Connor began to see Eclipse as a means to develop Notes programs and agents. "It looked like a nice way to manage your code," he said. "It's Java friendly."
Friendly Java? How about Domino? Domino has many uses still, says Connor. While you can do whole new systems in Java, it takes many hours of labor. In Notes/Domino, he notes, "you get a huge jump start if you are doing groupware collaboration." What role does Java play in that? In Connor's situation, he had to integrate with a legacy application which had a Java interface.
"For me, the advantage of Java was access to all the other APIs and other code," he said. "Once you get into Java, you can see all the JAR files that you can include. Java is just really brilliant because you can tie in directly to that."
Java agents can also have merit over Domino agents in some enterprise settings. For instance, if a Notes agent were asked to play a role in certain large-scale Java applications, it would have scalability issues, Connor said.
Once you realize you have to accomplish legacy system integration in Java, the next question is how you manage it. That is where Eclipse, debugging and refactoring come in, said Connor. Use the links below to read the full story.
Using Lotus Notes with Eclipse to manage and run your Java programs – IBM DeveloperWorks
Creating a Notes/Domino plug-in with Eclipse – IBM DeveloperWorks
This was first published in March 2005