Ws Missed Topics
Ws Missed Topics
Ws Missed Topics
Businesses are increasingly adopting web services due to a variety of compelling motivations. Here
are some key reasons:
1. **Cost Efficiency**:
- **Reduced Infrastructure Costs**: Utilizing web services can significantly cut down on the costs
associated with maintaining physical servers and other IT infrastructure.
- **Pay-as-you-go Pricing**: Many web services offer pricing models that allow businesses to pay
only for the resources they use, which can be more cost-effective than traditional methods.
2. **Scalability**:
- **Elastic Resources**: Web services can easily scale up or down based on demand, allowing
businesses to handle varying workloads without over-provisioning resources.
- **Global Reach**: Leveraging web services enables businesses to provide services to users
around the globe with minimal latency.
- **Rapid Deployment**: Web services allow for quick deployment of applications and services,
enabling businesses to respond swiftly to market changes and opportunities.
- **Integration Capabilities**: Web services facilitate seamless integration with other systems and
services, both internal and external, enhancing overall business agility.
- **Outsourced Maintenance**: By using web services, businesses can offload the maintenance
and management of IT infrastructure to service providers, allowing them to focus on their core
business activities.
5. **Enhanced Collaboration**:
- **Interoperability**: Web services enable different systems and applications to communicate and
work together, improving collaboration across departments and with external partners.
- **Standardization**: Adoption of web services often involves using standard protocols and
formats, which simplifies integration and collaboration efforts.
- **Faster Time-to-Market**: The agility and rapid deployment capabilities of web services help
businesses bring new products and services to market more quickly, gaining a competitive edge.
- **Advanced Security Features**: Many web service providers offer robust security measures and
compliance certifications, ensuring data protection and regulatory compliance.
- **Regular Updates**: Web services often include regular security updates and patches, reducing
the burden on businesses to manage these aspects themselves.
- **Availability and Reliability**: With web services, businesses can offer highly available and
reliable services, improving the overall customer experience.
These motivations highlight why businesses are increasingly turning to web services to drive
efficiency, innovation, and growth.
B2B
These services encompass a wide array of functionalities and capabilities, often tailored to
meet the complex requirements and operational intricacies inherent in B2B relationships.
They serve as virtual conduits through which businesses engage in various forms of
interaction, including procurement, sales, supply chain management, logistics coordination,
financial transactions, and collaborative ventures.
How Do B2B Services Work?
B2B services work by providing digital platforms, technologies, and frameworks that
facilitate interactions, transactions, and collaborations between businesses. Here's a
breakdown of how they typically function:
1. Platform provisioning. B2B service providers create and maintain digital platforms,
which serve as the infrastructure for enabling B2B interactions. These platforms take
various forms, including web-based portals, cloud-based applications, and integrated
software solutions.
2. Onboarding. Businesses interested in using B2B services typically go through an
onboarding process, during which they register, create accounts, and configure their
settings within the platform. This may involve providing information about their
company, business operations, products or services, and preferred communication
channels.
3. Data exchange. B2B services facilitate the exchange of data between participating
businesses. This includes various types of information such as product catalogs,
pricing details, inventory levels, order status, invoices, and shipping information. Data
exchange may occur through standardized formats such as EDI (Electronic Data
Interchange), APIs (Application Programming Interfaces), or proprietary
communication protocols.
4. Transaction processing. B2B services support the processing of transactions
between businesses. This includes activities such as placing orders, generating
invoices, making payments, and updating inventory records. Transactions may be
automated through predefined workflows and business rules.
5. Integration. B2B services often integrate with existing systems and applications used
by businesses, such as ERP (Enterprise Resource Planning), CRM (Customer
Relationship Management), and SCM (Supply Chain Management) systems.
Integration enables seamless data flow between different parts of the business
ecosystem, ensuring consistency and accuracy in information exchange.
6. Collaboration tools. Many B2B services offer collaboration tools that facilitate
communication and teamwork among business partners. These tools include
messaging systems, document sharing platforms, project management tools, and
virtual meeting spaces.
7. Security and compliance. B2B services prioritize security and compliance to protect
sensitive business data and ensure regulatory adherence. They employ encryption,
access controls, authentication mechanisms, and auditing features to safeguard
information against unauthorized access, breaches, and data loss.
8. Analytics and insights. B2B services often include analytics and reporting
capabilities that provide businesses with valuable insights into their operations,
performance metrics, and market trends. By analyzing data generated through B2B
interactions, businesses can make informed decisions, optimize processes, and
identify opportunities for growth and improvement.
B2C:
B2C became immensely popular during the dotcom boom of the late 1990s when it was
mainly used to refer to online retailers who sold products and services to consumers through
the internet.
Key Takeaways
1. Direct sellers. This is the most common model in which people buy goods from online
retailers. These may include manufacturers or small businesses or simply online versions of
department stores that sell products from different manufacturers.
2. Online intermediaries. These are liaisons or go-betweens who don't actually own
products or services that put buyers and sellers together. Sites like Expedia, trivago, and Etsy
fall into this category.
3. Advertising-based B2C. This model uses free content to get visitors to a website. Those
visitors, in turn, come across digital or online ads. Large volumes of web traffic are used to
sell advertising, which sells goods and services. One example is media sites like HuffPost, a
high-traffic site that mixes advertising with its native content.
4. Community-based. Sites like Meta (formerly Facebook), which build online communities
based on shared interests, help marketers and advertisers promote their products directly to
consumers. Websites typically target ads based on users' demographics and geographical
location.
5. Fee-based. Direct-to-consumer sites like Netflix charge a fee so consumers can access
their content. The site may also offer free but limited content while charging for most of it.
The New York Times and other large newspapers often use a fee-based B2C business model.
Web services are an integral part of modern software architecture, enabling applications to
communicate over a network. The technical motivations for using web services include:
1. **Interoperability**:
- Web services allow different applications from various sources to communicate with each other
without time-consuming custom coding. They are platform-independent, meaning that a web service
written in one programming language can be used by an application written in a different language.
2. **Reusability**:
- Web services allow the reuse of services in different applications. This modular approach enables
developers to use existing services to build new applications or enhance existing ones.
3. **Scalability**:
- Web services can be designed to scale easily, accommodating an increasing number of users or
requests. By distributing the load across multiple servers, web services ensure high availability and
performance.
4. **Standardization**:
- Web services use standard protocols and formats such as HTTP, XML, JSON, SOAP, and REST. This
standardization simplifies integration and communication between different systems.
5. **Loose Coupling**:
- Web services promote loose coupling between client and server components. This means that
changes in one component do not necessarily require changes in the other, making maintenance and
updates easier.
6. **Accessibility**:
- Web services can be accessed over the internet using standard web protocols. This makes it easy
to expose functionality to a wide range of clients, including web browsers, mobile apps, and other
services.
7. **Security**:
- Web services can implement robust security measures, such as encryption, authentication, and
authorization, to ensure secure communication and data exchange.
8. **Integration**:
- They facilitate the integration of heterogeneous and distributed systems within and across
organizational boundaries. This is particularly useful for integrating legacy systems with new
applications.
9. **Flexibility**:
- Web services can be composed to form more complex services, allowing businesses to quickly
adapt to changing requirements and market conditions.
- By reusing existing services and reducing the need for custom integration code, web services can
help lower development and maintenance costs.
These motivations highlight why web services are a critical component in building flexible, scalable,
and interoperable systems in today’s interconnected digital landscape.
Unit3
1. HTTP/HTTPS:
o Hypertext Transfer Protocol (HTTP) is the most commonly used protocol
for web services, especially for RESTful services. It provides a simple
request-response model that is well-suited for web applications.
o HTTPS is HTTP over SSL/TLS, providing a secure communication channel
by encrypting the data transmitted between the client and the server.
2. SOAP over HTTP/HTTPS:
o Simple Object Access Protocol (SOAP) is a protocol for exchanging
structured information in the implementation of web services. SOAP can be
transported over various protocols, but HTTP/HTTPS is the most common
transport layer due to its widespread use and compatibility with firewalls and
proxies.
3. SMTP:
o Simple Mail Transfer Protocol (SMTP) is primarily used for sending emails
but can also be used as a transport protocol for web services, especially when
dealing with asynchronous communication. SOAP messages can be sent as
email attachments.
4. JMS:
o Java Message Service (JMS) is a messaging standard that allows application
components to create, send, receive, and read messages. JMS is often used for
asynchronous communication in enterprise environments and can be used as a
transport layer for web services.
5. AMQP:
o Advanced Message Queuing Protocol (AMQP) is an open standard for
passing messages between applications or organizations. It is designed to
support messaging for various business applications and can be used for
reliable, asynchronous communication in web services.
6. MQTT:
o Message Queuing Telemetry Transport (MQTT) is a lightweight
messaging protocol designed for low-bandwidth, high-latency, or unreliable
networks. It is often used in IoT applications and can be employed as a
transport protocol for web services requiring efficient, real-time
communication.
7. WebSocket:
o WebSocket is a protocol providing full-duplex communication channels over
a single TCP connection. It is suitable for applications requiring real-time data
exchange, such as live chat applications, gaming, and real-time notifications.
8. REST over HTTP/HTTPS:
o Representational State Transfer (REST) is an architectural style that uses
standard HTTP/HTTPS methods (GET, POST, PUT, DELETE) for
communication. RESTful services are stateless, and each request from a client
contains all the information the server needs to fulfill that request.
It doesn't matter on which of the endpoints the Request is sent to as the request can be
populated with any combination of PathInfo, QueryString and Request Body. After the
Request binding, the request travels through all user-defined filters and pre-processors for
inspection where it can optionally be handled before it is able to reach the service
implementation. Once the request reaches the service it invokes the best matching selector,
by default it will look for a method with the same name as a HTTP Verb, if it doesn't exist it
falls back to using a catch-all 'Any' method that can be used to handle the request on any
endpoint or route in any format. Even when inside the Service implementation it is able to
further delegate the request to an alternative service or easily proxy the request to a remote
sharded instance if it needs to.
There are many natural benefits gained when adopting a message-based design they offer better
resilience, flexibility, versionability than their RPC cousins. An example of one of the benefits possible
is when you send a request to its one-way endpoint, if the ServiceStack instance has a MQ Host
configured, the request is automatically deferred to the configured MQ Broker and processed in the
background. So even if the ServiceStack Host goes down none of the pending messages are lost and
are automatically processed the next time the Host starts up. This is the type of behavior that is
enabled for free in ServiceStack. When no MQ host is enabled the request is just processed normally,
i.e. synchronously by a HTTP web worker.
Scala Actors
Describing Web services
XML and HTTP is the most fundamental web services platform. The following components
are used by all typical web services:
computer.
WS-Policy
About WS-Policy
WS-Policy is a model and syntax you can use to communicate the policies associated with a
web service. Policies describe the requirements, preferences, or capabilities of a web service.
You attach a policy to a policy subject, for example, a service, endpoint, operation, or
message. After attaching a policy to a policy subject, the policy subject becomes governed by
that policy.
A policy is made up of one or more policy assertions. Each policy assertion conveys a
requirement, preference, or capability of a given policy subject. You specify policy assertions
using XML-based policy expressions.
webMethods Integration Server provides support for Web Services Policy Framework (WS-
Policy) Version 1.2.
In Integration Server, a policy is specified using policy expressions in an XML file called a
WS-Policy file (more simply called policy file). For more information, see WS-Policy Files
and Guidelines for Creating WS-Policy Files.
To have a web service governed by the policy in policy file, you attach the policy to the web
service descriptor. You can attach WS-Policies at the binding operation message type level,
such as input, output, and fault, in a web service descriptor.
3. Updating Endpoints:
o Modify the <service> section to change the URL in the <soap:address>
element.
o This is often necessary when moving a service to a different server or changing the
endpoint path.
Validating WSDL
2. **Tools and
Utilities**:
Use tools like wsdl.exe, WSDL2Java, or online WSDL validators to check the correctness of
the WSDL file.
IDEs like Eclipse or IntelliJ IDEA offer built-in tools for WSDL validation and manipulation.
xml
Copy code
<message name="NewOperationRequestMessage">
<part name="parameters" element="tns:NewOperationRequest"/>
</message>
<message name="NewOperationResponseMessage">
<part name="parameters" element="tns:NewOperationResponse"/>
</message>
xml
Copy code
<types>
<xsd:schema>
<xsd:element name="NewOperationRequest" type="xsd:string"/>
<xsd:element name="NewOperationResponse" type="xsd:string"/>
</xsd:schema>
</types>
xml
Copy code
<portType name="ExamplePortType">
<operation name="NewOperation">
<input message="tns:NewOperationRequestMessage"/>
<output message="tns:NewOperationResponseMessage"/>
</operation>
</portType>
Tools for Manipulating WSDL
1. SOAPUI:
o A popular tool for testing and analyzing web services. It can import WSDL files,
generate requests, and provide a visual interface for examining the service.
2. Apache CXF:
o A framework for developing web services that supports WSDL manipulation. It
provides tools to generate code from WSDL and vice versa.
3. Visual Studio:
o Allows developers to generate client-side code from WSDL files and provides a WSDL
editor.
3. Versioning:
o Implement a versioning strategy for WSDL files to manage changes and backward
compatibility.
4.
o Offers plugins for WSDL creation and editing, including WSDL validation and web
service client generation.
Web Services Discovery provides access to software systems over the Internet using
standard protocols. In the most basic scenario there is a Web Service Provider that publishes a
service and a Web Service Consumer that uses this service. Web Service Discovery is the
process of finding suitable web services for a given task.[1]
Publishing a web service involves creating a software artifact and making it accessible to
potential consumers. Web service providers augment a service endpoint interface with an
interface description using the Web Services Description Language (WSDL) so that a
consumer can use the service.
The Web Services architecture is based upon the interactions between three primary roles:
service provider, service registry, and service requestor. These roles interact using publish,
find and bind operations. The service provider is the business that provides access to the Web
service and publishes the service description in a service registry. The service requestor finds
the service description in a service registry and uses the information in the description to bind
to a service. A logical view of the Web Services architecture is shown in Figure 1. In this
view of the Web Services architecture, the service registry provides a centralized location for
storing service descriptions. A UDDI registry is an example of this type of service registry.
Between these two extremes, there is a need for a distributed service discovery method that
provides references to service descriptions at the service provider's point-of-offering. The
Web Services Inspection Language provides this type of distributed discovery method, by
specifying how to inspect a web site for available Web services. The WS-Inspection
specification defines the locations on a Web site where you could look for Web service
descriptions.
Since the Web Services Inspection Language focuses on distributed service discovery, the
WS-Inspection specification complements UDDI by facilitating the discovery of services
available on Web sites, but which may not yet be listed in a UDDI registry. Additional
information on the relationship between the Web Services Inspection Language and UDDI
can be found in The WS-Inspection and UDDI Relationship (see Resources).
WS-Inspection Overview
The WS-Inspection specification (see Resources) does not define a service description
language. WS-Inspection documents provide a method for aggregating different types of
service descriptions. Within a WS-Inspection document, a single service can have more than
one reference to a service description. For example, a single Web service might be described
with both a WSDL file and within UDDI. References to these two service descriptions should
be put into a WS-Inspection document. If multiple references are available, it is beneficial to
put all of them in the WS-Inspection document so that the document consumer can select the
type of service description that they are capable of understanding and want to use. Figure 2
provides an overview of how WS-Inspection documents are used.
The WS-Inspection specification contains two primary functions, which are discussed in
more detail in the next two sections.
Unit4
Business-to-Business (B2B) interactions refer to the various types of transactions and relationships
that occur between businesses. These interactions can be classified into different types based on
their nature and the purpose they serve. Here are some of the main types of B2B interactions:
- **Description**: Here, manufacturers sell their finished products to distributors who then resell
them to retailers or other businesses.
- **Description**: Distributors supply products to retailers, who then sell them directly to
consumers.
- **Description**: Service providers offer various services to other businesses to support their
operations.
- **Description**: Manufacturers may sell products directly to the business end-users, bypassing
distributors and retailers.
- **Description**: A franchisor grants a franchisee the rights to operate a business under its brand
and sell its products or services.
- **Example**: A fast-food chain allowing an individual to open and operate a franchise location.
### 7. **Joint Ventures and Strategic Alliances**
- **Description**: Businesses may form partnerships to leverage each other's strengths and
capabilities to achieve mutual goals.
- **Description**: Businesses interact to procure goods and services needed for their operations,
often through procurement platforms or sourcing agreements.
- **Description**: Online platforms facilitate B2B transactions by bringing buyers and sellers
together in a digital marketplace.
- **Description**: Companies allow other businesses to sell their products, often with value-added
services.
- **Example**: A software company allowing IT service providers to resell its software with
additional support services.
- **Description**: Professional service firms offer expertise and advice to other businesses to help
them improve operations and strategy.
- **Description**: Interactions involving the planning, implementation, and control of the flow of
goods and services.
These various types of B2B interactions illustrate the complex and interconnected nature of modern
business ecosystems, where businesses rely on each other to create value, enhance efficiency, and
achieve competitive advantage.
Rosetta net
RosettaNet
Named after the famed Rosetta Stone that helped in the understanding of
ancient languages, RosettaNet not only seeks to standardize the grammar and
language for Information Technology (IT) vendors to participate in e-business
transactions but also to specify the business processes in which they take place.
RosettaNet has gained much attention from the heavyweights and over 400
participants in the IT industry, many of which are also members of ebXML and
other efforts. RosettaNet was formed in 1998 as an independent IT and
electronic components–focused industry consortium formed by leading
manufacturers, suppliers, distributors, and resellers. Its main goal is to produce
an e-business specification for the industry that optimizes supply chain
interactions. The result is a comprehensive set of standards and guidelines for
an automated, Internetbased exchange of business information and transactions
between trading partners. RosettaNet was an early proponent of defining B2B
process standards in addition to simplifying business data formats, and perhaps
their work has influenced the direction that other formats such as ebXML are
headed. In essence, the group is focused on enabling businesses to conduct
dynamic trade by means of providing flexible trading networks, improving
operational efficiency, and presenting new business opportunities. An
illustration of RosettaNet’s role in e-business is shown in Figure 20.7, which
references the eCo Framework as well.
The main components of the RosettaNet e-business architecture consist of the
following:
Data dictionaries
Future of RosettaNet
IN THIS CHAPTER
• Manufacturing 977
You may even be reading this book to gain a better understanding of how XML
can ben-efit and improve the operations of your particular business or industry.
As such, the vast majority of this book has addressed the technologies necessary
for these implementa-tions, but what remains are specific examples and advice
for industry-specific implemen-tations of XML technologies. This chapter will
get you well on your way towards under-standing how XML has benefited and
impacted a variety of industries, ranging from manufacturing and health care to
government and entertainment industries. In addition, for those readers who are
now becoming familiar with XML from a technical viewpoint, this chapter
provides real-world implementations of XML so that you can apply your
technical skills to “nontechnical” industries and provide a quick return-on-
investment (ROI) for your skills. In general, this chapter turns XML “promise”
into XML “reality.”
Now imagine the problems facing those whose job it is to create content. It
might be a magazine publisher or it might be a bank, an insurance company, or
an electronics manu-facturer. Very quickly these organizations discover the
problems that information over-load can bring. So don’t they do what I do with
my mail? Simply divide the content into neat categories and store it?
Well, the answer is, of course, that most content is far more complex than my
mail. There may be several different schemes that people could use to find the
content they need. Each piece of content has characteristics that are critical to its
use and reuse. If I am storing images, for example, I need to know not only the
subject matter but also the format and whether I have rights to use the images.
What Is Metadata?
Metadata is frequently described as “data about other data.” Whether detailing the contents of
a web page, the technical details of an image, or information about an asset's usage rights,
metadata provides additional information that facilitates data management so assets can be
located and used more efficiently. In fact, metadata is mainly designed to be machine-
readable — for example, metadata for a web page helps search engines understand and
categorize pages — and is invisible to the casual site visitor. Likewise, the metadata in a
photograph allows an image to be properly categorized and easily found in a digital asset
management (DAM) system. Metadata also has major implications in the universes of
information-sharing, usage rights and content reuse.
In addition, meta tags provide organizations with some control over what people see when
content is delivered via search engines, social media and other collaboration tools, such as
Slack and Messenger. There are three key pieces of metadata that help control what people
see:
For any piece of content, web search engines generally deliver a headline, a description (or
“snippet”) of the content and a link to the page. Search engines typically use the contents of
the title tag as the headline in search results and the contents of the description meta tag as the
snippet. (For a variety of algorithmically related reasons, search engines often rewrite
description tags and, sometimes, title tags.) For example, a search for "ERP software" yields:
Types of Metadata
There are three distinct types of metadata: descriptive, structural and administrative. Each one
plays a different role in data and document management, whether those meta tags are web-
facing or are used within other applications.
Descriptive metadata:
Structural metadata:
Administrative metadata:
The architecture of semantic web is illustrated in the figure below. The first layer, URI and
Unicode, follows the important features of the existing WWW. Unicode is a standard of
encoding international character sets and it allows that all human languages can be used
(written and read) on the web using one standardized form. Uniform Resource Identifier
(URI) is a string of a standardized form that allows to uniquely identify resources (e.g.,
documents). A subset of URI is Uniform Resource Locator (URL), which contains access
mechanism and a (network) location of a document - such as http://www.example.org/.
Another subset of URI is URN that allows to identify a resource without implying its location
and means of dereferencing it - an example is urn:isbn:0-123-45678-9. The usage of URI
is important for a distributed internet system as it provides understandable identification of all
resources. An international variant to URI is Internationalized Resource Identifier (IRI) that
allows usage of Unicode characters in identifier and for which a mapping to URI is defined.
In the rest of this text, whenever URI is used, IRI can be used as well as a more general
concept.
Semantic web architecture in layers
Extensible Markup Language (XML) layer with XML namespace and XML schema
definitions makes sure that there is a common syntax used in the semantic web. XML is a
general purpose markup language for documents containing structured information. A XML
document contains elements that can be nested and that may have attributes and content.
XML namespaces allow to specify different markup vocabularies in one XML document.
XML schema serves for expressing schema of a particular set of XML documents.
A core data representation format for semantic web is Resource Description Framework
(RDF). RDF is a framework for representing information about resources in a graph form. It
was primarily intended for representing metadata about WWW resources, such as the title,
author, and modification date of a Web page, but it can be used for storing any other data. It
is based on triples subject-predicate-object that form graph of data. All data in the semantic
web use RDF as the primary representation language. The normative syntax for serializing
RDF is XML in the RDF/XML form. Formal semantics of RDF is defined as well.
Content management workflow
A content management workflow is a set of tasks a team (most probably your content team)
carries out in order to complete a piece of content on time (for your own brand or a client)
and ensure its publication. In the book Content Strategy For the Web, content strategist and
author Kristina Halvorson states that a content workflow determines "how content is
requested, sourced, created, reviewed, approved, and delivered". A content management
workflow can be simple or complex and will usually be determined by the type of content
you're creating, your budget, your objectives and the scope of your project. The usual steps in
a content production workflow look something like this:
The basic process is to acquire the input, transform the input, and then render the output in
the desired format.
Unit-2
Limitations of CORBA and DCOM
### CORBA Limitations
Both CORBA and DCOM have seen their use diminish due to
these limitations, as more flexible, scalable, and user-friendly
technologies have emerged.
SOA
Service-Oriented Architecture (SOA) is a stage in the evolution of application development and/or integration.
It defines a way to make software components reusable using the interfaces.
Formally, SOA is an architectural approach in which applications make use of services available in the
network. In this architecture, services are provided to form applications, through a network call over the
internet. It uses common communication standards to speed up and streamline the service integrations in
applications.
SOA allows users to combine a large number of facilities from existing services to form applications.
SOA encompasses a set of design principles that structure system development and provide means for
integrating components into a coherent and decentralized system.
SOA-based computing packages functionalities into a set of interoperable services, which can be integrated
into different software systems belonging to separate business domains.
The different characteristics of SOA are as follows :
o Provides interoperability between the services.
o Provides methods for service encapsulation, service discovery, service composition,
service reusability and service integration.
o Facilitates QoS (Quality of Services) through service contract based on Service Level
Agreement (SLA).
o Provides loosely couples services.
o Provides location transparency with better scalability and availability. There are two major roles within
Service-oriented Architecture:
1. Service provider: The service provider is the maintainer of the service and the organization that makes
available one or more services for others to use. To advertise services, the provider can publish them in a
registry, together with a service contract that specifies the nature of the service, how to use it, the
requirements for the service, and the fees charged.
2. Service consumer: The service consumer can locate the service metadata in the registry and develop the
required client components to bind and use the service.
Services might aggregate information and data retrieved from other services or create workflows of services to
satisfy the request of a given service consumer. This practice is known as service orchestration Another
important interaction pattern is service choreography, which is the coordinated interaction of services without a
single point of control.
Components of SOA:
Advantages of SOA:
Service reusability: In SOA, applications are made from existing services. Thus, services can be reused to
make many applications.
Easy maintenance: As services are independent of each other they can be updated and modified easily
without affecting other services.
Platform independent: SOA allows making a complex application by combining services picked from
different sources, independent of the platform.
Availability: SOA facilities are easily available to anyone on request.
Reliability: SOA applications are more reliable because it is easy to debug small services rather than huge
codes
Scalability: Services can run on different servers within an environment, this increases scalability
Disadvantages of SOA:
High overhead: A validation of input parameters of services is done whenever services interact this
decreases performance as it increases load and response time.
High investment: A huge initial investment is required for SOA.
Complex service management: When services interact they exchange messages to tasks. the number of
messages may go in millions. It becomes a cumbersome task to handle a large number of messages.
Unit3
WSDL
WSDL stands for Web Services Description Language. It is the
standard format for describing a web service. WSDL was
developed jointly by Microsoft and IBM.
Features of WSDL
WSDL is an XML-based protocol for information exchange in
decentralized and distributed environments.
WSDL definitions describe how to access a web service and
what operations it will perform.
WSDL is a language for describing how to interface with
XML-based services.
WSDL is an integral part of Universal Description, Discovery,
and Integration (UDDI), an XML-based worldwide business
registry.
WSDL is the language that UDDI uses.
WSDL is pronounced as 'wiz-dull' and spelled out as 'W-S-D-
L'.
WSDL Usage
WSDL is often used in combination with SOAP and XML Schema
to provide web services over the Internet. A client program
connecting to a web service can read the WSDL to determine
what functions are available on the server. Any special datatypes
used are embedded in the WSDL file in the form of XML Schema.
The client can then use SOAP to actually call one of the functions
listed in the WSDL.
Definition
TargetNamespace
DataTypes
Messages
Porttype
Bindings
Service
example
<!-- WSDL definition structure -->
<definitions
name="Guru99Service"
targetNamespace=http://example.org/math/
xmlns=http://schemas.xmlsoap.org/wsdl/>
<!-- abstract definitions -->
<types> ...
<message> ...
<portType> ...
2)SOAP:
What is SOAP?
SOAP is an XML-based protocol for accessing web services over HTTP. It
has some specification which could be used across all applications.
SOAP is known as the Simple Object Access Protocol, but in later times
was just shortened to SOAP v1.2. SOAP is a protocol or in other words is
a definition of how web services talk to each other or talk to client
applications that invoke them.
Example program
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Tutorial Name" type="string"/>
<xsd:element name="Tutorial Description" type="string"/>
</xsd:sequence>
</xsd:complexType>
Advantages of SOAP