Home > SOA Tips > The Web Services Advisor > IDEs for Web services – Eclipse
SOA Tips:
EMAIL THIS
 TIPS & NEWSLETTERS TOPICS 

THE WEB SERVICES ADVISOR

IDEs for Web services – Eclipse


William Brogden
01.23.2007
Rating: -3.36- (out of 5)


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   


Probably the best known open source IDE (Integrated Development Environment) is Eclipse. Originally developed by IBM starting in the late 1990s as a development tools platform in Java, it was released to open source licensing in 2001. An organization, the Eclipse Consortium, was created with support from IBM and eight other high tech companies.

In order to dispel the impression that some developers had that Eclipse was too much under IBM control, a totally independent not-for-profit organization, the Eclipse Foundation, with its own staff and budget, was created in 2004. A number of well known software organizations contribute money, developer time and direction to the foundation.

Developers can now choose from a large number of free and commercial plug-ins that build on the Eclipse architecture. These include commercial products from both IBM and competitors since many software tool vendors now use Eclipse as a stable base for specific toolkits and development environments. Because Eclipse and most of the plug-ins run on Java, this makes it easy for tool vendors to reach all major platforms.

There are also a huge number of open source projects and sub-projects hosted by the Eclipse Foundation and an active community of Eclipse users contributing and extending plug-ins. For example, Groovy, the open source Java based scripting language now has a plug-in allowing you to edit, compile and run Groovy scripts.

The Eclipse architecture

Eclipse supporters feel that they have more than an IDE, they have a Rich Client Platform created by a core set of functions that runs plug-ins plus various useful tools such as text editors that can be used to construct an IDE for a specific set of tools. Although plug-ins can be written in other languages, it appears that most have been written in Java. Eclipse provides version support so that you can update specific plug-ins on a case by case basis directly with the update manager.

The Eclipse user interface is organized as a "workbench" window that displays "views" (graphic diagrams, editors, resource lists, etc.) of a project and the resources in a project. The user can customize the location and behavior of the various views to suit each project.

Integration with standard developer tools

Like NetBeans, Eclipse provides support for CVS (Concurrent Versioning System), an open source file management system that can facilitate cooperation between multiple developers on a project. The highly flexible Ant open source "build" tool created by the Apache Software Foundation is used to automate various Eclipse processes. You can even import projects that already have Ant build files.

Starting with Eclipse 3.1, the popular JUnit toolkit is built in. If you favor Test Driven Development you will find it easy to create test cases in Eclipse.

Web service support uses the Apache Axis project version 1.3 for SOAP-related methods and WSDL4J (Web Services Description Language for Java) version 1.5.1 for manipulation of WSDL documents. Note that this is not the absolutely latest version of Axis as there has been a major redesign for Axis2. The version of the Tomcat Web server provided with Eclipse is also several generations behind the latest.

I suppose this sort of gap is inevitable as the various open source development teams go charging off in their own directions. One of the disadvantages of using Eclipse or NetBeans will be the potential for toolkit version conflict between the latest and greatest version and the one packaged with Eclipse.

Web Tools Platform package

The Eclipse project has a single convenient download package for those who would like to investigate the tools for Web-related applications. The over 200mb zipped download includes the basic core platform plus a large number of preconfigured plug-ins.

The Web Standard Tools collection of plug-ins contains tools for manipulation of documents related to specifications published by organizations such as the W3C. For example, there are tools for manipulating XML, XSD, DTD and WSDL documents.

Tools for WSDL

Eclipse has some cool tools for working with WSDL documents. I experimented with importing a published Web service WSDL file into a Web service client project in Eclipse as follows:

1. Launch the Web services explorer and go to the XMethods registry online.

2. Search for a service using the key word "math" - this found one service.

3. Use the import tool to import the WSDL file to the Eclipse workbench - the imported file now shows up in the list of project resources.

4. Select the WSDL file and choose the option to open with the WSDL graphic editor. This brings up a graphic display of all of the WSDL elements for the available operation. You can easily switch between the graphic and editing views.

5. Select the WSDL file and choose the "generate client" option. The Java source files required to execute the client are created and the library jar files required to execute are added to the project.

Creating a Web service

The Eclipse Web Service Wizard supports two approaches to creating a Web service called top-down and bottom-up. In top-down development you start with a service description as a WSDL document. Eclipse guides you through setting up the options which will control running the Axis toolkit to create Java code skeletons using the Axis toolkit and Ant tasks.

Bottom-up creation of a service involves starting with a Java class that is coded with Java "bean" conventions. The Web Services Wizard can guide you though setting up the parameters needed by the automated process, which creates a WSDL file and Web service classes.

Conclusion

Eclipse, like NetBeans, enables the developer to take advantage of the growing volume of high quality open source tools in an integrated environment and with the support of an active user community. The support for these tools by IBM, Sun and other major software companies has validated the open source approach to software development.

Resources

A view of Eclipse projects and plug-ins with current development status.

The Eclipse projects roadmap of long range goals.

History of Eclipse.

Review of Eclipse projects in Wikipedia.

The Eclipse Web Tools Project (WTP).

Home of the Ant build tool.

Groovy plug-in for Eclipse.

An introduction to Eclipse projects with some comparison to NetBeans.


Rate this Tip
To rate tips, you must be a member of SearchSOA.com.
Register now to start rating these tips. Log in if you are already a member.




Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   


RELATED CONTENT
Eclipse Web services
Eclipse, Sun and Oracle team up on persistence API
Using the NetBeans IDE for RESTful Web Services
Eclipse OSGi tops Java tech list
PHP Eclipse tools released
Eclipse Swordfish SOA runtime mixes SCA, JBI and OSGi
IBM Jazz ready for prime time
Swordfish may lure SMBs into SOA waters
MyEclipse supports Cold Fusion
SOA turns on the radio
RedHat JBoss IDE focuses on Ajax

The Web Services Advisor
SOA and Web 2.0: The odd couple?
Project Zero, a RESTful new beginning for IBM
Swordfish: Eclipse's OSGi-based SOA framework
OpenID: Leveraging a widely accepted identity Web service
Using the NetBeans IDE for RESTful Web Services
Comet: Reverse Ajax for streaming data from the server
Support for RESTful Web services: Part 2, toolkits
Support for RESTful Web Services: Part 1
Understanding the SOA lifecycle
Web Services with Ruby on Rails

Ajax and RIA (Rich Internet Applications)
The business and IT roles inside SOA and BPM
SOA runtime major step for Eclipse – Milinkovich
Creating User-Defined Mashups
Junk JavaScript?
Silverlight 2.0 for RIAs coming soon
Unify offers RIA tool for SOA
Comet: Reverse Ajax for streaming data from the server
Web 2.0 bites in Yahoo layoffs
Silverlight shines on bank RIAs
RIA technologies compared
Ajax and RIA (Rich Internet Applications) Research

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
Drupal  (SearchSOA.com)
evergreen  (SearchSOA.com)
Google Spreadsheets  (SearchSOA.com)
meta tag  (SearchSOA.com)
Rich Internet Application (RIA)  (SearchSOA.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary

DISCLAIMER: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.

About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides enterprise IT professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective IT purchase decisions and managing their organizations' IT projects - with its network of technology-specific Web sites, events and magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Reprints  |  Site Map




All Rights Reserved, Copyright 2001 - 2008, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts