0% found this document useful (0 votes)
23 views

Improvement of Data Transfer Over Simple Object Access Protocol Soap

The document discusses improving data transfer over the Simple Object Access Protocol (SOAP). It presents an algorithm for transferring SOAP documents between web services and clients more efficiently. The results showed that using SOAP to exchange XML messages takes less time and uses less memory than without SOAP, especially for binary data.

Uploaded by

Kamal Albashiri
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views

Improvement of Data Transfer Over Simple Object Access Protocol Soap

The document discusses improving data transfer over the Simple Object Access Protocol (SOAP). It presents an algorithm for transferring SOAP documents between web services and clients more efficiently. The results showed that using SOAP to exchange XML messages takes less time and uses less memory than without SOAP, especially for binary data.

Uploaded by

Kamal Albashiri
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

World Academy of Science, Engineering and Technology

Vol:86 2014-01-01

Improvement of Data Transfer over Simple Object


Access Protocol (SOAP)
Khaled Ahmed Kadouh, Kamal Ali Albashiri

• XML specification is only for XML over HTTP and


Abstract—This paper presents a designed algorithm involves XML-RPC is only ASCII compliant.
improvement of transferring data over Simple Object Access Protocol
(SOAP). The aim of this work is to establish whether using SOAP in B. Motivation and Objective
exchanging XML messages has any added advantages or not. The The motivation of this paper is to prove that using SOAP in
results showed that XML messages without SOAP take longer time Web service would ease the difficulties found in exchange
and consume more memory, especially with binary data.
XML documents, such as processing XML messages. In this
paper, objectives can be summarized as follows:
Keywords—JAX-WS, SMTP, SOAP, Web service, XML.
• Review the XML and its success the Web service
I. INTRODUCTION technology.
• Design and implement an algorithm for transferring SOAP
S OAP is defined by World Wide Web Consortium (W3C) document between Web services, and clients.
International Science Index 86, 2014 waset.org/publications/9997465

as a simple and lightweight mechanism for exchanging


• Evaluate the algorithm with different examples and
structured and typed information between peers in a
compare it with another approach.
decentralized, and distributed environment using eXtensible
The paper’s organization is as follows. A brief review of
Markup Language (XML) on Web services. Its design makes
some related work on Web services and SOAP is presented in
it suitable for a wide variety of application messaging and
Section II. The algorithm design and implementation with an
integration patterns. In other words, SOAP is the envelope
overview of the mapping principle, is presented in Section III
syntax for sending and receiving XML messages between
and the proposed approach evaluation is illustrated in Section
client and services that have no prior knowledge of each other.
IV using two scenarios, and finally some conclusions are
Web service is a technology that allows peoples, systems,
presented in Section V.
and applications to communicate with each other. Basically, it
works as an interface that describes a collection of operations
II. WEB SERVICES AND RELATED TECHNOLOGIES
in standard format. The operations are software application
that can be discovered by Universal Description Discovery and Web service is an application service that is a combination
Integration (UDDI) that allows application to discover of programming, data, and human resources. These are made
available from a business Web server for Web users or other
information about Web services [2]. In order to describe the
Web-connected programs. Web services are based on the
message syntax for Web services, the Web Services
specifications of data transfer, method invocation and
Description Language (WSDL) is used [8], [9]. The service is
publishing. Web service accepts requests, from other systems
accessed by many protocols, such as Simple Mail Transfer across the internet or intranet, mediated by lightweight,
Protocol (SMTP) and Hypertext Transport Protocol (HTTP). vendor-neutral communications technologies [1].
These protocols are transporting protocols used to transferring There are many definitions to Web service. W3C
data such as XML document. SOAP is designed to be a new organization defines Web service as “a software system
protocol for decentralized and distributed environments, used identified by a URI whose public interfaces and bindings are
to enhance the power of internet and XML to pass typed defined and described using XML”. Its definition can be
information between the client and services [1]. discovered by other software applications using XML based
SOAP is also a lightweight protocol with independent messages via internet based protocols.
platform, independent transport, and independent operating These applications may then interact with the Web service
system. This flexibility is due to its construct with time testing in a manner prescribed by its definition, using XML-based
systems, like the HTTP protocol and text markup in XML [2]. messages conveyed by internet protocols [2]. In short, a
business application sends a request to a service at a given
A. Problem Definition
URL using the transferring protocols over the internet. The
• XML processing can be slow and memory intensive, service receives the request, processes it, and returns a
especially for binary data. response.
• When the size of file is big the response time is larger. Web server is used in the internet and can be reached using
HTTP or SMTP. HTTP is widely used protocol for data
K. A. Kadouh and K. A. Albashiri are with the Computer Science connections between Web browsers and servers. This protocol
Department, Faculty of Science, Al-Jabal Al-Gharbi University, Gharian,
Libya (e-mail: [email protected], [email protected]). is the current standard for transferring HTML documents.

490
World Academy of Science, Engineering and Technology
Vol:86 2014-01-01

Although it is designed to be extensible to almost any


document format like XML, it can also operate over TCP.
After a successful connection, the client transmits a request
message to the server, which sends a reply message back as
XML document [3].
XML is the most important reason behind the success and
popularity of Web services. In fact it is its backbone [6], [7].

III. DESIGN AND IMPLEMENTATION OF AN ALGORITHM FOR


MAPPING XML TO SOAP
This section describes in detail the technology, and the tools
used to design and implement the proposed algorithm. We
present an algorithm to build the service, client, and
transferring SOAP document, after mapping as a request, Fig. 1 Algorithm Components
between the client and Web service. B. Mapping XML to SOAP
The algorithm implementation can be described in three
This section discusses how an XML document becomes
steps:
SOAP document by focusing on the document exchange
• Building Web service and adding application to it.
model. As shown in Fig. 2, the work is achieved as follows: (i)
• Creating client application. we put the XML document inside a SOAP body. (ii) we wrap
International Science Index 86, 2014 waset.org/publications/9997465

• Entering XML data and at the same time mapping it to a the SOAP body within the SOAP envelope, namespace
SOAP document, then transferring the document as a declarations and encoding style directives for the serialization
SOAP request and returning it as SOAP response. of data. (iii) we bind the document to a protocol such as
A. Algorithm Design and Implementation HTTP. (iv) the sender class reads XML document, parses it
• The client application uses the JAX-WS programming into a DOM tree, wraps it in a SOAP envelope, and sends it to
model to invoke a Web service operation [7]. a URL destination. The destination is a simple HTTP servlet
that takes the contents of the message and dumps it to the
• The message sender component of the Web services
service.
client, runtime processes the request by sending a SOAP
Various mechanisms such as Java Message Service JMS or
request message to the request queue identified by the
JAXM are used for sending a message [7]. We have used JMS
endpoint location URI associated with the invocation.
in this work. The JMS is a portable, standard messaging API
• The message sender component uses the standard HTTP
that enables Java programs to communicate by exchanging
layer provided by the underlying messaging provider to
messages. JMS is also a component of the Java EE
send the request message.
specification [4], [5].
• The SOAP request message is delivered to the request
queue by the messaging provider.
• The message receiving component of the Web services
server runtime uses the HTTP to receive the SOAP
request message.
• The Web services server runtime uses the EJB container
to dispatch the request to the Web service implementation
class.
• After the Web service operation ends, the Web services
server runtime uses the HTTP to send the SOAP response
message to the reply queue.
• The Web services client runtime uses the HTTP to receive
the reply message.
• The client then processes the reply to finish the Fig. 2 Components Work of the Algorithm
invocation, and returns control back to the client
C. Required Software
application, as shown in Fig. 1.
The proposed algorithm is implemented using the software
tools shown in Table I. Many examples will be used as input
of the algorithm. The input to the algorithm is an XML data.
The algorithm shows how to build and deploy Web service
and the client receives the data as XML document as forms
found in a client application transferring it as SOAP message.

491
World Academy of Science, Engineering and Technology
Vol:86 2014-01-01

TABLE I TABLE II
IMPLEMENTATION REQUIRED SOFTWARE FILE SIZE AND RESPONSE TIME
Software Version required Application File Size Operation Response Response
NetBeans IDE Java tools bundle (6.5.1) (byte) time time
Java2EE or application server Without With
GlassFish application server V2.1 or
NetBeans IDE SOAP SOAP
Tomcat server
Calculator 314 Add 10707 ms 10503
Java development Kit (JDK) Version 5 or version 6
WS ms
331 Subtract 10770 ms 10650
IV. EVALUATION OF THE ALGORITHM ms
370 Division 19870 ms 19750
To evaluate the algorithm, we used many examples as input ms
data for operations located in JSP, which are created in 400 Multiplication 19088 ms 19070
ms
advance.
Flower WS 1030 Get Image sec132 121sec
Another evaluation of the algorithm is to compare between 1334 Get Image 221 sec sec212
deploying the application to GlassFish server and deploying it 1668 Get Image sec256 249 sec
to Tomcat server, and to make another comparison between 1993 Get Image sec285 sec276
the results of the proposed algorithm and those of other
approaches. B. Comparing the Proposed Algorithm with another
Approach
A. Evaluation by Using Many Examples
The second part of evaluation shows the results of the
As mentioned in pervious section, the algorithm is willing to proposed algorithm compared with other approach.
accept XML data, dynamically maps it to SOAP document,
International Science Index 86, 2014 waset.org/publications/9997465

There are many techniques used to send SOAP document


and transfers it as a SOAP request. from client to services as mentioned in Section I. However,
The first part of evaluation will shows how we can compare most of these approaches are not publically available.
the results of the proposed algorithm when transferring the Fortunately, there was one approach available and similar to
XML document with and without SOAP WS from client to ours. It is called Building a Generic SOAP Framework over
two of our applications (calculator WS, and flower image). Binary XML [10]. This approach measures the message
The calculator application is used to respond to calculation response time for small sized messages in which the model
requests such as summation, subtraction, multiplication or size of the data set range is from 0 to 1000 byte, constructs the
division. The flower image application is used to process data over BXSA and transmit over TCP.
image requests. The comparison is conducted by applying a number of
When one of the operations (i.e. sum operation) is chosen, operations to several files, as number data and binary data
the two numbers are calculated by the application that returns construct to SOAP and binding to HTTP, and measuring the
the result through method invocation. response time of the two approaches, as shown in Fig. 4.
One example is the sum of two numbers. Fig. 3 shows the
constructed SOAP request.

Fig. 3 Soap Request Example

The size of file and response time of results of each sending


file is measured using SOAP-UI. This tool is used to test
messages over SOAP.
To evaluate the algorithm, a number of experiments were Fig. 4 Comparing the Proposed Algorithm with other Approach
conducted to analyze the effect of: (i) the size of the data (in
terms of file size), and (ii) the response time. The results shown in Fig. 4 indicate that our proposed
Table II shows measured results of applying a number of algorithm offers positive advantages in that it was more
messages using a regular protocol and a SOAP WS. computationally efficient than the other algorithm. The results
of the analysis also indicated that our approach coped best
with a large number of data set.

492
World Academy of Science, Engineering and Technology
Vol:86 2014-01-01

V. CONCLUSION [4] Carlos M. Gutierrez, Secretary," Guide to Secure Web Services", 2007,
Information Technology Laboratory National Institute of Standards and
SOAP based on web services is designed with a common Technology.
XML-based protocol. The goal is to allow for a machine [5] Phil Adams and Zina Mostafia, "Develop a SOAP Web services
application with WebSphere Application Server V7 and Rational
readable document to be passed over any multiple connection
Application Developer V7.5", 2009, IBM Corporation.
protocols to create a decentralized, distributed system. [6] Christian Platzer, "Trust-based Security in Web Services", 2004,
SOAP is fundamentally a stateless, one-way message Technical University of Vienna.
exchanging paradigm between SOAP nodes, from a SOAP [7] Santa Clara, "The Java EE 5 for Sun Java System Application Server
9.1", 2008, SunMicrosystems, Inc. 4150Network Circle.
sender to a SOAP receiver by combining one-way exchanges [8] Irmen de Jong, "Web Services SOAP and CORBA", 2004, Knowledge
with features provided by the underlying transport protocol Systems Institute.
and/or application specific information. SOAP can be used to [9] Jack Koftikian," Simple Object Access Protocol (SOAP)", 2001,
Technical University Hamburg-Hamburg.
create more complex interactions such as SOAP request and [10] Wei Lu, Kenneth Chiu, Dennis Gannon," Building a Generic SOAP
SOAP response. Framework over Binary XML", 2005, Department of Computer Science,
Web service applications should be able to use a SOAP to State University of New York (SUNY) at Binghamton.
make delivery mechanism improve its reliability, scalability,
and performance. Since a document message is usually a self-
contained XML file, it is better suited for asynchronous
processing and can be placed directly into the queue. SOAP
message is XML documents consisting of envelope, header,
body, and fault. The envelope contains a body, a mandatory,
and an optional header. The header contains information
International Science Index 86, 2014 waset.org/publications/9997465

relevant to how the message is processed, and how to be sent


to different paths. This includes meta-data entries that help
describe or augment the main content of the SOAP message.
The body is the mandatory element within a SOAP envelope.
It contains the actual message, and the message that is
included in an XML format.
This work introduced a design and implementation of an
algorithm for transferring the SOAP document from client to
services. We used two applications, calculate WS, which
contains many operations, such as summation, multiplication,
division and subtraction, as well as another application, named
flower images WS. The evaluation of the algorithm was
through comparison its work with several operations and
results to the work of another approach.
The first part of evaluation showed how we were able to
compare the results of the proposed algorithm with transfer the
XML document from client using two applications (calculator
WS, and flower image) with/without SOAP.
The size of file and response time of results of each sending
file is evaluated using SOAP-UI. This tool is used to test
messages over SOAP.
The experiments results showed that the algorithm, designed
in this paper, can be tested by using many examples as input
data for operations located in JSP. The results also showed
that deploying the application to GlassFish server is faster than
deploying it to Tomcat server. In addition, the results showed
that the proposed algorithm scaled well when compared to
other approach in terms of data size and response time.

REFERENCES
[1] Nan-Chao Huang, “Cross Platform Web Service Implementation Using
SOAP", 2003, Knowledge Systems Institute.
[2] Stephanie Bodoff, Debbie Carson, Maydene Fisher, "The Java™ Web
Services Tutorial", 2004, California 94303 U.S.A.
[3] Brian Suda, "SOAP Web Services", 2002, School of Informatics
University of Edinburgh.

493

You might also like