Introduction
This article discusses how an enterprise bean can act as a Web-Service component. Since Web-Services itself is a vast technology, the first part of the article discusses more about Web-Services. Specifically, the first part of the article discusses what Web-Services are, its unique features among other related technologies, its architecture, and the various base components upon which Web- Services are built. The second part of the article describes the JSR-181 which is the “Web-Services Meta-data for the Java Platform” and how enterprise beans can make use of the API’s available under this JSR to expose themselves as Web-Services components.
Web Services
Introduction
Normally a Service represents any kind of feature or some piece of functionality that a specific kind of client can be benefited from. Say for a printer service, the clients are either the applications or the programs using the printers or users. Consumers of an ATM service are Bank Customers, like-wise the list of real-world services goes on.
Like these kinds of service, a Web-Service is a kind of remote service that is available in the web and it can be accessed through some standard protocols. A Web-Service can be imagined as a program that is running in a remote machine, usually guarded by a server, so that it can be made accessible by remote clients. How Web-Services are very different from the existing technologies is that, Web-Services have some unique features that are very uncommon to other existing technologies. The clients for these Web-Services can be any one, it can be a user or HTML browser, or even another Web-Service.
Features of Web Services
Following are the unique features of a Web-Service based application.
- Language Independent
- Operating System Independent
Language Independent
Let us assume that a Web-Service is running in a remote machine. Suppose an application (can be a Web-Service also) want to gain the functionality of the Web-Service by accessing it. It is not that both the Web-Service and the client application must be built in the same language or technology. They can be different. From this, we can infer that a Web-Service can be built in Java, running in some remote machine and the client of the Web-Service can be a legacy C++ application or a DotNET application.
Communication between Web-Service and heterogeneous clients

From the above diagram, we can see that 3 different applications (built on 3 different technologies) are accessing the same Web-Service. |