You are on page 1of 5

Proceedings of the 14th International Conference

on Automation & Computing, Brunel University,


West London, UK, 6 September 2008

Study on SOA-Orient WebGIS Framework

Hao Li12, Joan Lu2, Binjing Cai1, Shaowen Yao1


2
School of software, Yunnan University, Kunming, China
2
School of Computing and Engineering, University of Huddersfield,U.K.
Lihao707@ynu.edu.cn, j.lu@hud.ac.uk, bjcai117@gmail.com, yaosw@ynu.edu.cn

Abstract: With the development and popularization of the in the real business process.
Internet, WebGIS gradually entered into people's daily lives,
their functions are no longer simple browse and download We focus on how to employ SOA architecture to solve
online map. SOA SOA is a kind of software development problems in the integration of traditional GIS systems, to
architecture designed for on demand. To a certain extent, SOA accomplish the integration of existing applications, with
could eliminate the current bottlenecks about regarding data powerful interoperability and analysis ability, and to expand
sharing and interoperability bottlenecks existing in WebGIS functionality of existing systems. This paper discusses the
systems. This paper introduces the basic ideas of SOA to
WebGIS design and construction. The SOA-Orient WebGIS is
framework of SOA-Orient WebGIS, and addresses initial
studied and designed from various aspect including the verification of this framework that is implemented in an
conceptual framework, layers model and the realization of the application system developed by Web Service technology
framework, and other aspects of the WebGIS framework, and a based on XML.
prototype system is designed and implemented. It preliminarily
verifies that the feasibility and effectiveness of the framework.
I. RELATED TECHNOLOGIES AND THEORIES
It is also a useful exploration of the development of Service
WebGIS. 2.1 WebGIS Technology
Since the first GIS system, the Canada Geographical
Keywords: WebGIS SOA Web Service Architecture System, was developed, GIS has developed for more than 40
years [4]. Software is core part of GIS. From the view of
software architecture, the development of GIS experienced
1、 INTRODUCTION several phrases: integrated GIS, modular GIS, cored GIS,
With the popularity of the Internet, traditional GIS has component-based GIS and WebGIS.
evolved from the stand-alone ‘information islands’ into the
network marine [1]. Besides simple online map browsing and In the early stage of development of GIS, in order to satisfy
downloading functions, WebGIS functions have been some special requirements, a large amount of different GIS
enriched, such as data servicing and processing functions. function modules were produced. With the changes of
requirements, researchers and developers had to integrate
Although WebGIS solves the shared problem of maps, it those dispersed functional modules into integrated GIS with
has slight help with the implementation of interoperation of multiple functions. Later, in order to make the process of
space data and service. Current WebGIS systems have the development faster, people tried to separate GIS into a
following limitations: 1. Unable to implement interoperation serious of independent functional modules and then develop
of isometric space data; 2. Unable to implement cross- them individually, to make them work together on the same
platform function; 3. Hard to develop, debug and maintain[2]. environment of infrastructure. This is called the modular GIS
Due to these issues, it limits the interoperability of WebGIS. phase. However, both integrated GIS and modular GIS are
In this case, users’ investment cannot be protected. It is difficult to be seamlessly and efficiently integrated with
unacceptable for large and medium-sized GIS applications, management information systems (MIS) or other professional
and unable to meet the development requirements of GIS. application systems. In the context, the concept of cored GIS
was proposed, and its principle is to encapsulate GIS
The appearance of SOA architecture, which is based on functions as dynamic linking libraries. Different applications
Web service and standard protocols of World Wide Web, could be integrated via access to their interfaces.
makes the solution of problems mentioned above possible[3].
SOA is short for Service-Oriented Architecture. With a loose With the development of component technologies such as
coupling of web services and well-accepted standards (such COM/DCOM, and CORBA technologies, different
as XML and SOAP), SOA groups and automates the business components can be regrouped with great flexibility, and they
process, and makes it share information with difference all have visual user interface and well-defined, easily-used
systems. Within SOA, IT systems are package as service, standard interfaces. Component-based GIS had developed
therefore they become easy to be employed and incorporated well. Combining the advantages of the modular GIS and the
cored GIS, component-based GIS separates GIS functions the OGC standards prove that SOA can solve problems of
into different functional components. The components GIS interoperability. The combination based on SOA model
communicate with other systems via standard communication between GIS system and other business systems makes it
interfaces, and the communication problems among possible for those business systems to access existing GIS
heterogeneous systems had been solved. data, service and application. It expands functionality of the
business systems, and improves their accuracy, efficiency and
The development of Internet technologies inspired the productivity. For instance, an ERP tool is employed by
development of Web GIS. Web GIS is a combination of GIS technical staff working in government to deal with spills of
technologies and Internet technologies. GIS become popular chemicals. Under the scenario, the GIS service can be
after being developed on the Internet. Users can assess spatial accessed and employed by the ERP tool to inform the
data, produce special graphics and do various spatial query technical staff how to rush to the scene of the leakage event
and analysis on the World Wide Web by Web GIS faster and more efficiently. In this case, GIS service extends
technologies. the functionality of the ERP system.
2.2 SOA Architecture
SOA is a sort of software development system architecture
Services-Oriented Architecture (SOA) is a software applying to various environments, and it can eliminate the
architecture where functionality is grouped around business bottleneck in sharing WebGIS data and operations. Via
processes and packaged as interoperable services. Within combination with SOA, WebGIS can package the software
well-defined interfaces and contracts among services, SOA resources on the internet as GIS Web Service, to implement
connects different functional units (also called service) loosely coupled heterogeneous systems that could share and
together of applications. The aim is a loose coupling of interoperate data.
services with operating systems, programming languages and
other technologies which underlie applications [5]. Technically, the service-orient GIS is a method rather than
a concrete technology. It focuses on how to convert various
SOA is a sort of 3-layered architecture, mainly containing GIS application and services into standard GIS services, to
three logical parts: Service Consumer, SOA Infrastructure meet different requirements. Web service is a main method of
and Service Producer. Service is core of SOA. The consumer realizing SOA, but not the only way. If a client wants to use a
consumes service that produced by the service producer via GIS service which is on the internet, first she could look for
SOA infrastructure. what she needs at the service registrars, such UDDI, and then
receives the service interface description. The client could
send request to service provider according to the service
description that she receives. Then the service provider
processes the request and sends back the response to the
clients. The whole process is shown in figure 2.

Fig.1.SOA Model
Service is a basic element of SOA. In SOA systems, there
are a group of entities: service provider, service consumer,
service registrar, service terms, service agents and service
contract. These entities explain how to provide and consume
service, and indicate that application systems based on SOA
are definitely distributed. Thus, the key technologies of SOA
are service related technologies and technologies employed in
distributed systems.

Service-related technologies include Web Service


Description Language (WSDL), Universal Description
Discovery and Integration (UDDI), service management
technology, service communication, application and Fig.2. GIS Web Service Sequential Process
development technologies and etc. Basic technologies of
distributed systems contain security management, reliable OGC and ISO/TC211 standards [6] address geographical
transmission, and event management technologies, system information service patterns and standards for special
reliability technology and distributed system management information sharing and interoperability, and from views of
technology, and etc. The description and implementation of computing, information, engineer and technical, OGC and
all technologies employed in distributed system are based on ISO/TC211 standards detail and specify geographical
XML, and implementation may be different in terms of information service patterns and specification. Service-orient
different system architecture. GIS has become the trend of development of GIS. Service-
orient GIS is a GIS technical architecture based on service-
2.3 Combination of WebGIS and SOA orient software engineering method. Serving GIS can be
platform-crossed, network-crossed and language-crossed, and
GIS can be applied for large amount of data exchange and be able to integrate other services on other servers together.
operation. Somebody thinks that GIS does not fit for SOA Servicing GIS can be employed in various SOA architectures,
model. A quantity of Web-based GIS application systems and and integrate with other heterogeneous IT business systems
seamlessly. It makes application developers be able to
develop agile and efficient application systems faster.
II. SOA BASED WEBGIS ARCHITECTURE

3.1Conceptual Framework
SOA-orient WebGIS conceptual architecture is mainly
composed of three parts: GIS Web Service Provider, GIS
Web Service Consumer and GIS Web Service Agent, within
operations of release, search, and requests/responses. The
architecture is shown as follows:

Fig.4. SOA-Orient WebGIS Implementation Framework

Fig.3. SOA-Orient WebGIS Conceptual Architecture [7] SOA infrastructure consists of application, service support
GIS Web Service Provider identify, divide, implement and and service. The three parts combined together to implement
package GIS functions as individual service entities, and functions that includes service registration, service
provide related descriptive information such as service identification, service management and service employment.
function, interface and parameters. Then, the service provider On the application layer, several technologies such as JSP,
will register the service at the GIS Web Service Agent. Servlet, serving as a service support/service coordinator, are
used to support various clients such as fat-client application,
The GIS Web Service Agent is for service registration, Web application and mobile application. Service support
service search and service location. contains directory service, security service, service
management, process service and semantic service, and
GIS Web Service Consumers could request for what they assists other services. Service layer is not only basic GIS
need at the GIS Web Agents. At GIS Web Service Agents, services, but includes non-GIS services; it can not only
they could query services, get services description, find provide data-centric services, but also process-centric
services where they are, and call and employ services services as well.
according to the specifications of the interfaces and
parameters in service description. Service providers are entities that provide services. Besides
providing various kinds of data, they can render services for
In the conceptual framework, interfaces and protocols search engines, enterprise application servers and etc.
are well-defined and different roles communicate with each
other via service entities. Service consumers can get what From the view of application level, the framework consists
they need without knowing the developing languages and of, from top to bottom, data layer, service layer, application
logic for realizing services; meanwhile, updating for existing layer and clients.
service entities could be accomplished without affecting other 3.2.1 Persistent Layer
entities. New service entities could be plugged in easily and
then work instantly. Functions of systems are expanded and In the persistent layer, the databases include spatial data
the construction method and ways to employ data have been and other types of data. It provides functions as inserting,
altered, which could solve problems of WebGIS data sharing updating, and maintenance. With an adapter, it can support
and interoperability, and problems of platform-crossed various types of data, such as Shape File files, common data,
interoperability of heterogeneous systems. PostGIS data. Data access components can be implemented
by any data access technology, such as geotools and JDBC.
3.2 SOA-Orient WebGIS Architecture Implementation
Framework Data sources are on different terminal computers on the
The SOA-Orient WebGIS implementation framework is network. Data users are easy to know the physical data
shown in figure 5 below: structure and the methods to implement functions.
The architecture consists of three parts: service consumers, Heterogeneous data can be share and, via data transforming
SOA infrastructure and service providers. service, GML data can be accessed, so as to seamlessly
Service consumers are entities that use service. It could be integration heterogeneous data and multi-source data. Data
windows applications ( including ‘fat-clients’ and ‘thin- management and data application are separated. Data
client’), web browsers, mobile devices, request service and management and maintenance are implemented and
manipulated by developers. It is useful for ensure data
Portler, and etc. Service consumers have three kinds of roles,
security, consistency and system stability.
that is, common users, IT architecture workers/developers
and GIS specialists/analyzers.
3.2.2 GIS Service Layer
Above persist layer is service layer. Via this layer, Clients
can access space data or other data, and receive services such
as GIS services, directory services, and registration services,
transact and secure services, and other services. Basic GIS
services offered by the service layer contain Web Mapping
Service (WMS), Web Feature Service (WFS), Data Access
Service, GIS function service and space data exchange
service.
3.2.3 Application Layer
The application layer is the core of the whole system. For
clients, it offers functions such as data processing and space
analysis, and it acts as a coordinator between service support
and service. Application servers can call Web service via
SOAP protocol, or OGC WFS/WMS interfaces from other
servers such Geoserver, to receive services and access data.
Fig.5. SOA-Orient WebGIS Software System Architecture
3.2.4 GIS Clients
4.1 The Design and Implementation of Non-
The development of large-sized software has to take the Geographical Data Related Web Service
demand of supporting various hardware environments into
consideration on demand. In the framework, the GIS clients Non-geographical data web services are used to process
can support different hardware. Without clients, all GWS non-geographical information, including common business
modules become useless. There are three types of clients: process and four basic types of database operations. In our
desktop GIS (including commercial products and customized system, we employ one web service to correspond to each
application), common web browsers (such as IE and Mozilla) module. AlarmInfo Service represents the alarm system
and mobile devices (such as PDAs and mobile phones). Users module, including inserting, updating, searching, displaying
can customize their own clients. For example, user can ask and deleting operations of alarm information. PropInfo
that the desktop GIS to be implemented by special extensive Service stands for the property information processing and
technologies, such as AML of AriGIS, COM and MapBasic displaying module, including inserting, updating, searching,
of Mapinfo. Web browser is developed by Javascript. displaying and deleting operations of static, dynamic and
pressure information of the pumping station. Search Service
4 DESIGN AND IMPLEMENTATION OF SOA-ORIENT WEBGIS is corresponding to the search engine used for multi-sourcing
On the basis of the framework discussed above, we search.
designed and develop an application system.

Kunming pressure pumping station management system


includes an alarm system, a network dynamic pressure
detection system, a pumping station dynamic information
detection system and a GIS application system for sharing
and interoperating pumping station space data. Considering
that the management system is core to the operation, Fig.6. Design of Non-Geographical Data Related Web Service
management and maintenance of the whole pumping station,
we need to integrate those legacy systems such as the From above,we have the service that is used to access to
detection and alarm system. We tentatively designed and alarm information, shown as follow:
implement the system on the basis of the SOA-Orient
WebGIS Framework. The system has developed on the
Netbean 6.0, with Java language and geotools which are
open-sourcing GIS tools.

During the design phrase, we divide operations on space


data into GIS Web services of proper size, according to the
graphical functions, such as zoom-in/zoom-out function and
property information function. We also designed and package
related data and business request as web services according to Fig.7. Alarm Information Access Service, GetAlarmService
business requirements. Clients can receive the services that
they need by submitting requests to web servers. The system According to the WSDL description file, corresponding
architecture is show as follow: java classes can be generated on Netbean platform. Then, we
wrote codes in those classes.
Fig.8. GetAlarmService Class Fig.11.WSDL description of WFS

4.2 The Design and Implementation of GIS-Related WSDL description of WMS is shown as follows:
Web Service
GIS-related web services are design to process
geographical information, including displaying and
processing maps, and operating (insert, delete, modify, and
search) geographical information. We packaged all requests
for GIS services as web services. In figure 9, there are some
basic operations on geographical information. The part to the
left of the dotted line represents WMS services, while the Fig.12.WSDL description of WMS
right part presents WFS services.
After being published, clients can uses those Web services
as using common Java classes. Figure 13 shows the views
when the system is working.

Fig.9. Design of GIS-Related Web Service

They are operations, which are zoomIn/zoomOut operation,


DragPan operation, measurement operation, information
retriving operation (GetFeature, RectangleSel, PolygonSel,
CircleSel), and MapScaleBar operation.
4.3 Design and Implementation of Basic GIS Web Services
Fig.13.A Picture of the Running System
This part is for packaging and designing of OGC. Our
system contains WFS protocols that are used to provide III. CONCLUSION AND FUTURE WORK
geographical data and WMS protocols that are used to depict This paper introduces SOA concepts into the construction
and describe maps, and other assistant protocols. of WebGIS systems. We designed SOA-orient WebGIS
framework and developed prototype system. Users can
WSF provides interfaces, such as: GetCapabilities that can request different kinds of clients that they need. It proves
receive services, DescribeFeatureType that describe that, SOA-orient WebGIS framework is helpful to
properties and features, Transaction that manages and development of WebGIS application systems. The design
processes transactions, and LockFeature that is used to lock and implementation of the framework is to be improved in
feature. future, combining with semantic Web and Web 2.0
technologies, which will greatly improve system’s agility
WMF is mainly used for processing and mapping and efficiency.
geographical information. In this system, it provides services,
such as GetMap operation that is employed to access grid REFERENCES
graphics from datasources. [1] Liu Nan, Liu Renyi. WebGIS Principles and Applications.
Beijing: Science Press.2002
Figure 10 shows the implementation of WFS and WMS. [2] Lu Yanhui, Yang Congjun. Study on WebGIS System based on
Web Service.Computer Engineering and Application,
2003.25.pp153
[3] AA. Alesheikh, H.Helali, HA.Behroz. Web GIS:Technologies
and Its Applications. Symposium on Geospatial Theory, Processing
and Applications, Ottawa 2002.
[4] Yao Heling. The PLA Information Engineering University
doctoral thesis: Study on GIS Web Service based on REST. 2005
Fig.10. Design of WFS And WMS Service [5] C. Matthew MacKenzie, Ken Laskey etc. Reference Model for
WSDL description of WFS is shown as follow: Service Oriented Architecture. 2006.2.
[6] George Percivall. OGC Reference Model. 2003.9.16
[7] Li Xuefei. Explore to WebGIS Framework based on SOA.
Computer Application, 2006 (9).

You might also like