Web 2.0 Tutorials
Tutorials
Web 2.0Introduction to Web Services
Introduction to Web Services - Page 2
One such open source solution is Axis from the Apache Foundation (http://ws.apache.org/axis/). It includes a code generator that uses Axis proprietary libraries. This is a reasonable trade-off. While you may be locked-in to Axis when you use their WSDL2JAVA, it is free for the taking so you can migrate to other platforms easily.
On the other side of the equation, BEA, IBM, and Axis allow you to create a skeleton web service from either a WSDL or a Java file. This allows you to create a Plain Old Java Object (POJO) with the methods to call (and their parameter list) and a WSDL and web service is created for you.
The biggest challenge with using Web Services is that you have to marshall and unmarshall the XML into something readable. The code generators take advantage of one of the existing XML models and convert the XML into Java objects for you. So, from the perspective of the calling program, you are calling the remote service in your native tongue and getting back objects, also in your native tongue. You are virtually unscathed by the details of the web service interface.
Compared to J2EE technologies, Web Services are easier to use. The interfaces for the web service are available to the world – you just go to the URL of the webservice and the information is there. (eg: http://services.xmethods.net/soap/urn:xmethods-delayed-quotes.wsdl).
If you want to talk to an Enterprise Java Bean (EJB) you have to find the interfaces either in code or in a document. Creating the EJB requires a lot of esoteric code that nobody ever sees. Home and Remote interfaces, and so on. Then, once implemented, only other Java applications can take advantage of the service. EJB’s are therefore best used in a monolithic environment where only Java is spoken.
While Web Services are normally used for outward facing services, they are gaining momentum inside the enterprise as well. Their simple-to-use interface and self-documenting nature make web services an easy win within the enterprise. An emerging trend is to create an Enterprise Service Bus that offers cross-cutting concerns such as security, auditing, logging, data translation, and routing. BEA and IBM both offer full ESB products, but BEA has an advantage with their Aqualogic offering.
Web Services are a simple to use method of offering data services to the web. Using existing protocols and standards, a web service can allow an enterprises to give access to its data in a platform agnostic way.
Author: Greg Smith
First Page: Introduction to Web Services
