aspose file tools*
The moose likes Web Services Certification (SCDJWS/OCEJWSD) and the fly likes What Is Web Services? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Web Services Certification (SCDJWS/OCEJWSD)
Bookmark "What Is Web Services?" Watch "What Is Web Services?" New topic
Author

What Is Web Services?

JiaPei Jen
Ranch Hand

Joined: Nov 19, 2000
Posts: 1309
I am new.

What is Web Services? How does it differ from XML (Maybe this is a funny question)?
Chintan Rajyaguru
Ranch Hand

Joined: Aug 19, 2001
Posts: 341
This is not a funny question. A lot of people still don't get it (may be I am one of them) but here is your answer.

Web Services are services provided over the web. Architecturally speaking it is a way of implementing Service Oriented Architecture SOA). Technically, web services provide a way of invoking "other" applications over the web.

Let me give you a simple example, You are developing an e commerce website to sell items. People use credit cards to buy stuff. Now your core competency is to sell things online, you do not want to have to write software to validate credit cards. So you use a credit card validation service. If I am a credit card validation service provider, I would
[1] Write software application (using any platform and programming language) and expose this application as a service and REGISTER or PUBLISH the service in a registry that maintains a list of credit card validation providers. Think of this registry as yellow pages.
[2] When your application needs to validate a credit card, your application goes to the registry (your application must know how to go to the registry) and asks for credit card validation services. In other words your application will FIND the service it is looking for.
[3] The registry returns an xml document DESCRIBING my service. Your application also gets information on how to connect to my services.
[4] Your application BINDS to the serivice and using the xml document, which describes my services, your application finds out how to invoke my service (what data to supply etc.)
[5] When you INVOKE my service (remember your application could be on any platform written in any programming language), the data yousend me (card number, expiry date etc.) get converted to an xml document. My application understands xml.
[6] My application validates the card and returns results as an xml document.
[7] Your application and my application both understand xml and have tools on both sides to convert data to xml and vice versa. So, when I return results, tools on your side convert xml results to the data in your programming language.

This FIND, BIND and INVOKE paradigm comes from Service Orietnted Architecture (SOA) concepts. It just means that architecture should be designed as services and a client should be able to find them, bind with them and invoke them. This way client does not have to rewrite the serivice someone has already written.

Web services is a way to implement SOA and allow service invocation over the web. JINI is another one. Common examples of web services are Microsoft passport services, stock quote service, credit card validation service etc. Go to http://www.xmethods.net to see more examples of this kind.

If you want to learn about web services I would recommend
[1] Learn what is SOA (chapter 2 of Java Web Services Architecture)
[2] Learn what is web serivces (do a google search on introduction to web services)
[3] Learn what is WS-I (http://www.ws-i.org/) and how industries are supporting open standards
[4] Learn what is SOAP, WSDL and UDDI
[5] Learn how web services are implemented on the platform of your choice (Microsoft, J2EE)
[6] Learn what tools are available that could make your life easier as you develop web service (these tools automate various tasks such as convert data into xml SOAP, convert SOAP to data, generate client code from WSDL etc.).

Hope this helped.


ChintanRajyaguru.com
SOADevelopment.com - Coming soon!
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: What Is Web Services?