Professional Documents
Culture Documents
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.
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.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.
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.