Logo

Navigation
  • Home
  • Services
    • ERP Solutions
    • Implementation Solutions
    • Support and Maintenance Solutions
    • Custom Solutions
    • Upgrade Solutions
    • Training and Mentoring
    • Web Solutions
    • Production Support
    • Architecture Designing
    • Independent Validation and Testing Services
    • Infrastructure Management
  • Expertise
    • Microsoft Development Expertise
    • Mobile Development
    • SQL Server Database and BI
    • SAP BI, SAP Hana, SAP BO
    • Oracle and BI
    • Oracle RAC
  • Technical Training
    • Learn Data Management
      • Business Intelligence
      • Data Mining
      • Data Modeling
      • Data Warehousing
      • Disaster Recovery
    • Learn Concepts
      • Application Development
      • Client Server
      • Cloud Computing Tutorials
      • Cluster Computing
      • CRM Tutorial
      • EDI Tutorials
      • ERP Tutorials
      • NLP
      • OOPS
      • Concepts
      • SOA Tutorial
      • Supply Chain
      • Technology Trends
      • UML
      • Virtualization
      • Web 2.0
    • Learn Java
      • JavaScript Tutorial
      • JSP Tutorials
      • J2EE
    • Learn Microsoft
      • MSAS
      • ASP.NET
      • ASP.NET 2.0
      • C Sharp
      • MS Project Training
      • Silverlight
      • SQL Server 2005
      • VB.NET 2005
    • Learn Networking
      • Networking
      • Wireless
    • Learn Oracle
      • Oracle 10g
      • PL/SQL
      • Oracle 11g Tutorials
      • Oracle 9i
      • Oracle Apps
    • Learn Programming
      • Ajax Tutorial
      • C Language
      • C++ Tutorials
      • CSS Tutorial
      • CSS3 Tutorial
      • JavaScript Tutorial
      • jQuery Tutorial
      • MainFrame
      • PHP Tutorial
      • VBScript Tutorial
      • XML Tutorial
    • Learn Software Testing
      • Software Testing Types
      • SQA
      • Testing
  • Career Training
    • Career Improvement
      • Career Articles
      • Certification Articles
      • Conflict Management
      • Core Skills
      • Decision Making
      • Entrepreneurship
      • Goal Setting
      • Life Skills
      • Performance Development
      • Personal Excellence
      • Personality Development
      • Problem Solving
      • Relationship Management
      • Self Confidence
      • Self Supervision
      • Social Networking
      • Strategic Planning
      • Time Management
    • Education Help
      • Career Tracks
      • Essay Writing
      • Internship Tips
      • Online Education
      • Scholarships
      • Student Loans
    • Managerial Skills
      • Business Communication
      • Business Networking
      • Facilitator Skills
      • Managing Change
      • Marketing Management
      • Meeting Management
      • Process Management
      • Project Management
      • Project Management Life Cycle
      • Project Management Process
      • Project Risk Management
      • Relationship Management
      • Task Management
      • Team Building
      • Virtual Team Management
    • Essential Life Skills
      • Anger Management
      • Anxiety Management
      • Attitude Development
      • Coaching and Mentoring
      • Emotional Intelligence
      • Stress Management
      • Positive Thinking
    • Communication Skills
      • Conversation Skills
      • Cross Culture Competence
      • English Vocabulary
      • Listening Skills
      • Public Speaking Skills
      • Questioning Skills
    • Soft Skills
      • Assertive Skills
      • Influence Skills
      • Leadership Skills
      • Memory Skills
      • People Skills
      • Presentation Skills
    • Finding a Job
      • Etiquette Tips
      • Group Discussions
      • HR Interviews
      • Interview Notes
      • Job Search Tips
      • Resume Tips
      • Sample Resumes
 

Introduction to Web Services

By Exforsys | on June 20, 2006 |
Web 2.0

Introduction to Web Services

As part of our series on Web 2.0 we turn our attention to data management. Web Services are a way to allow an enterprise to give access to their internal data in a platform agnostic way.

What is unique about web services is that the requests are made across the Internet the same way you would make a request using your web browser – using the HyperText Transfer Protocol (HTTP). This means that an existing infrastructure can be used to set up a web service and make it instantly accessible to the world.

Another significant feature of Web Services is that they use XML to communicate. This creates a generic and well-defined way of passing information. Since XML is the Extensible Markup Language, you can format your message in any way you like. XML just provides the syntax, not the semantics of your message. To define the message further you need a Web Service Definition Language file or WSDL. The WSDL is both in XML and available from the web service as well. Putting your WSDL on line “publishes” the web service for all to see and use.

It isn’t enough to publish the web service and pass XML over HTTP, you need some sort of wrapper to encapsulate the message. The XML is wrapped with a SOAP message (in XML again) that gives some details about the message itself.

The real value of all of this is that it is operating system and language agnostic (Although in this article we’ll look mostly at Java). A web service can be written in .NET and consumed by a client written in Java. Since all the communication between the two parties is in XML, there is no need to translate from one format to another.

All of this does not come without a fee. XML must eventually be consumed and translated into a form that the consumer can understand. This “marshalling” and “unmarshalling” of XML to and from native tongue can take as much as 25% of the processing time of an application; a pretty hefty price to pay for system agnostic messaging.

Creating client code is non-trivial and there are many code generators which will do it for you. BEA’s WebLogic will create a client from a WSDL as well IBM’s WebSphere. Both create clients that require proprietary libraries to work. It is therefore best to use an open source solution that will allow you to migrate your client from one system to another without much work.

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

« « How To Deal With Cheating At Online Colleges
Web 2.0 and The Read/Write Web » »

Author Description

Avatar

Editorial Team at Exforsys is a team of IT Consulting and Training team led by Chandra Vennapoosa.

Free Training

RSSSubscribe 401 Followers
  • Popular
  • Recent
  • Web 2.0 Characteristics

    April 4, 2007 - 0 Comment
  • Web 2.0 and Social Media

    April 6, 2007 - 0 Comment
  • The Business Aspect of Web 2.0

    April 9, 2007 - 0 Comment
  • Advantages and Disadvantages of Web 2.0

    April 25, 2007 - 0 Comment
  • Introduction to Web 2.0

    June 13, 2006 - 0 Comment
  • How Web 2.0 Will Change The Internet

    April 26, 2007 - 0 Comment
  • Web 2.0 and The Read/Write Web

    June 20, 2006 - 0 Comment
  • How Web 2.0 Can Be Valuable To Businesses

    April 29, 2007 - 0 Comment
  • The Potential of Web 2.0

    March 21, 2007 - 0 Comment
  • The Design Aspects of Web 2.0

    March 23, 2007 - 0 Comment
  • How Web 2.0 Can Be Valuable To Businesses

    April 29, 2007 - 0 Comment
  • How Web 2.0 Will Change The Internet

    April 26, 2007 - 0 Comment
  • Advantages and Disadvantages of Web 2.0

    April 25, 2007 - 0 Comment
  • The Business Aspect of Web 2.0

    April 9, 2007 - 0 Comment
  • Web 2.0 and Social Media

    April 6, 2007 - 0 Comment
  • Web 2.0 Characteristics

    April 4, 2007 - 0 Comment
  • Web 2.0 Concepts

    March 30, 2007 - 0 Comment
  • What is Web 2.0

    March 27, 2007 - 0 Comment
  • Web 2.0 Principles

    March 25, 2007 - 0 Comment
  • The Design Aspects of Web 2.0

    March 23, 2007 - 0 Comment

Exforsys e-Newsletter

ebook
 

Related Articles

  • How Web 2.0 Can Be Valuable To Businesses
  • How Web 2.0 Will Change The Internet
  • Advantages and Disadvantages of Web 2.0
  • The Business Aspect of Web 2.0
  • Web 2.0 and Social Media

Latest Articles

  • Project Management Techniques
  • Product Development Best Practices
  • Importance of Quality Data Management
  • How to Maximize Quality Assurance
  • Utilizing Effective Quality Assurance Strategies
  • Sitemap
  • Privacy Policy
  • DMCA
  • Trademark Information
  • Contact Us
© 2022. All Rights Reserved.IT Training and Consulting
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.Accept Reject Read More
Privacy & Cookies Policy
Necessary Always Enabled