1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 8 pdf

18 256 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 892,31 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các lớp trong chương trình các lỗi về cho client khi có lỗi trong request Other/OtherTasks Chứa tên các FeatureType trong chương trình Chức các thuộc tính của các FeatureType Chứa các h

Trang 1

xmlns:wfs="http://www.opengis.net/wfs"

xmlns:xsi="http://www.w3.org/2001/XMLSchema- instance" xsi:schemaLocation="http://www.opengis.net/wfs

/wfs/1.0.0/WFS-transaction.xsd">

<wfs:Update typeName="duong">

<wfs:Property>

<wfs:Name>NAME</wfs:Name>

<wfs:Value>Ngô Gia Tự</wfs:Value>

</wfs:Property>

<ogc:Filter>

<ogc:FeatureId fid="duong.3"/>

</ogc:Filter>

</wfs:Update>

<wfs:Delete typeName=”quan”>

<ogc:Filter>

<ogc:FeatureId fid="quan.1"/>

</ogc:Filter>

</wfs:Delete>

</wfs:Transaction>

™ Mỗi XmlNode sẽ tương ứng với 1 tag trong chuỗi Xml, chẳng hạn tag

<wfs:Transaction> là 1 XmlNode

™ Mỗi XmlNode có chứa nhiều XmlNode con, và có thể chứa các Attributes của node đó

Chẳng hạn, trong ví dụ trên thì node <wfs:Transaction> có 2 node con là

<wfs:Update> và <wfs:Delete> Node <wfs:Update> này chứa 2 node con

là <wfs:Property> và <ogc:Filter>

Node <wfs:Update> và node <wfs:Delete> có 1 attribute là “typeName”

Trang 2

™ Đọc dữ liệu từ chuỗi Xml này

ƒ Trước hết, cần phải tạo 1 XmlDocument tương ứng với chuỗi này:

XmlDocument requestDocument = new XmlDocument();

requestDocument.LoadXml(sRequestXml);

ƒ Lấy node đầu tiên <wfs:Transaction>:

XmlNode first = requestDocument.FirstNode;

ƒ Lấy 2 node con <wfs:Update> và <wfs:Delete>:

XmlNodeList childs = first.ChildNodes;

XmlNode updateNode = childs[0];

XmlNode deleteNode = childs[1];

ƒ Lấy attribute “typeName” của node <wfs:Update>

string sUpdateTypeName = updateNode.Attributes[“typeName”];

ƒ Nếu như node không chứa attribute này thì hàm này trả về null

ƒ Lấy giá trị của Node <wfs:Name>, sử dụng thuộc tính InnerXml của lớp XmlNode

string Name = updateNode.FirstChild.FirstChild.InnerXml;

ƒ Lấy tên của Node <wfs:Update>, có cả phần NameSpace phía trước tên node

string sNodeName = updateNode.Name;

Khi đó sNodeName = “wfs:Update”, trong đó “wfs” là NameSpace của Update”

ƒ Lấy tên của Node <wfs:Update>, không lấy phần NameSpace phía trước tên node

string sLocalNodeName = updateNode.LocalName;

Khi đó sLocalNodeName = “Update”

Trang 3

ƒ Để lấy chuỗi Xml tương ứng với Node <wfs:Update>:

string xmlUpdate = updateNode.OuterXml;

Khi đó, chuỗi xmlUpdate sẽ có giá trị là:

<wfs:Update typeName="duong">

<wfs:Property>

<wfs:Name>NAME</wfs:Name>

<wfs:Value>Ngô Gia Tự</wfs:Value>

</wfs:Property>

<ogc:Filter>

<ogc:FeatureId fid="duong.3"/>

</ogc:Filter>

</wfs:Update>

6.5 Các lớp trong chương trình

các lỗi về cho client khi có lỗi trong request

Other/OtherTasks Chứa tên các FeatureType trong

chương trình Chức các thuộc tính của các FeatureType

Chứa các hàm thực hiện những tác vụ phụ trong chương trình

WFS/CheckBasicParameterClasses/Abstra

ctHTTPClass

Lớp trừu tượng, có tác dụng lấy các tham số mà client gửi lên trong request

Trang 4

GetClass

Kế thừa từ lớp CheckBasicParameterClasses/Abstrac tHTTPClass, có tác dụng lấy các tham

số mà client gửi lên trong 1 HTTP GET request

WFS/CheckBasicParameterClasses/HTTP

PostClass

Kế thừa từ lớp CheckBasicParameterClasses/Abstrac tHTTPClass, có tác dụng lấy các tham

số mà client gửi lên trong 1 HTTP POST request

WFS/FeatureClass/AbstractFeature Là 1 lớp abstract, gồm các hàm dùng

để thực hiện các tác vụ liên quan đến các FeatureType trên Server, chẳng hạn như:

Đọc từ cơ sở dữ liệu để lấy về các Feature thỏa 1 số điều kiện nào đó Tạo ra chuỗi Xml mô tả các Feature

để trả về cho client (chức năng này được cài đặt cụ thể ở các lớp con của nó)

Lấy các thuộc tính của Feature

……

Trang 5

WFS/FeatureClass/DistrictFeature Kế thừa từ lớp

WFS/FeatureClass/AbstractFeature

Có chức năng thực hiện các thao tác trên loại Feature “Quan”:

Lấy các thuộc tính của loại Feature

“Quan”

Tạo chuỗi Xml mô tả với các Feature

“Quan” lấy được từ cơ sở dữ liệu để trả về cho client

WFS/FeatureClass/PlaceFeature Kế thừa từ lớp

WFS/FeatureClass/AbstractFeature

Có chức năng thực hiện các thao tác trên các Feature thuộc loại Feature

“nơi chốn”

Lấy các thuộc tính của loại Feature

“noi chon”

Tạo chuỗi Xml mô tả với các Feature

“noi chon” lấy được từ cơ sở dữ liệu

để trả về cho client WFS/FeatureClass/RiverFeature Kế thừa từ lớp

WFS/FeatureClass/AbstractFeature

Có chức năng thực hiện các thao tác trên các Feature thuộc loại Feature

“Song”

Lấy các thuộc tính của loại Feature

“Song”

Tạo chuỗi Xml mô tả với các Feature

“Song” lấy từ csdl trả về cho client

Trang 6

WFS/FeatureClass/RoadFeature Kế thừa từ lớp

WFS/FeatureClass/AbstractFeature

Có chức năng thực hiện các thao tác trên các Feature thuộc loại Feature

“Duong”

Lấy các thuộc tính của loại Feature

“Duong”

Tạo chuỗi Xml mô tả với các Feature

“Duong” lấy được từ cơ sở dữ liệu để trả về cho client

WFS/FeatureClass/UniversityEnrollmentF

eature

Kế thừa từ lớp WFS/FeatureClass/AbstractFeature

Có chức năng thực hiện các thao tác trên các Feature thuộc loại Feature

“UBNDQuan”

Lấy các thuộc tính của loại Feature

“UBNDQuan”

Tạo chuỗi Xml mô tả với các Feature

“UBNDQuan” lấy được từ cơ sở dữ liệu để trả về cho client

WFS/FeatureClass/YPageSitFeature Kế thừa từ lớp

WFS/FeatureClass/AbstractFeature

Có chức năng thực hiện các thao tác trên các Feature thuộc loại Feature

“YPageSit”

Lấy các thuộc tính của loại Feature

“YPageSit”

Tạo chuỗi Xml mô tả với các Feature

“YPageSit” lấy từ csdl trả về client

Trang 7

WFS/FilterClasses/FilterSolution Có chức năng tạo ra chuỗi query dùng

để truy vấn cơ sở dữ liệu từ đối tượng XmlDocument mô tả chuỗi Filter WFS/WFS Operation

Classes/DescribeFeatureTypeSolution/Get

ParameterClasses/AbstractHttp

Là 1 lớp ảo, có tác dụng lấy các tham

số của DescribeFeatureType request

WFS/WFS Operation

Classes/DescribeFeatureTypeSolution/Get

ParameterClasses/HttpGetRequest

Là lớp con của lớp WFS/WFS OperationClasses/DescribeFeatureTyp eSolution/GetParameterClasses/Abstr actHttp

Có tác dụng lấy các tham số của

DescribeFeatureType request được

gởi lên bằng giao thức HTTP GET WFS/WFS Operation

Classes/DescribeFeatureTypeSolution/Get

ParameterClasses/HttpPostRequest

Là lớp con của lớp WFS/WFS OperationClasses/DescribeFeatureTyp eSolution/GetParameterClasses/Abstr actHttp

Có tác dụng lấy các tham số của

DescribeFeatureType request được

gởi lên bằng giao thức HTTP POST WFS/WFS Operation

Classes/DescribeFeatureTypeSolution/Des

cribeFeatureTypeSolution

Có chức năng nhận 1

DescribeFeatureType request, lấy về

mô tả của các loại Feature và tạo chuỗi response bằng Xml

WFS/WFS Operation

Classes/GetFeatureSolution/GetParameter

Classes/AbstractHttp

Là 1 lớp ảo, có tác dụng lấy các tham

số của GetFeature request

WFS/WFS Operation

Classes/GetFeatureSolution/GetParameter

Là lớp con của lớp WFS/WFS OperationClasses/GetFeatureSolution/

Trang 8

Classes/HttpGetRequest GetParameterClasses/AbstractHttp

Có tác dụng lấy các tham số của

GetFeature request được gởi lên

bằng giao thức HTTP GET

WFS/WFS Operation

Classes/GetFeatureSolution/GetParameter

Classes/HttpPostRequest

Là lớp con của lớp WFS/WFS OperationClasses/GetFeatureSolution/

GetParameterClasses/AbstractHttp

Có tác dụng lấy các tham số của

GetFeature request được gởi lên

bằng giao thức HTTP POST

WFS/WFS Operation

Classes/GetFeatureSolution/GetFeatureSo

lution

Có chức năng nhận 1 GetFeature

request, truy vấn cơ sở dữ liệu để lấy

về các Feature được yêu cầu và tạo chuỗi response bằng Xml

WFS/WFS Operation

Classes/LockFeatureSolution/GetParamet

erClasses/AbstractHttp

Là 1 lớp ảo, có tác dụng lấy các tham

số của LockFeature request

WFS/WFS Operation

Classes/LockFeatureSolution/GetParamet

erClasses/HttpGetRequest

Là lớp con của lớp WFS/WFS OperationClasses/LockFeatureSolutio n/GetParameterClasses/AbstractHttp

Có tác dụng lấy các tham số của

LockFeature request được gởi lên

bằng giao thức HTTP GET

WFS/WFS Operation

Classes/LockFeatureSolution/GetParamet

erClasses/HttpPostRequest

Là lớp con của lớp WFS/WFS OperationClasses/LockFeatureSolutio n/GetParameterClasses/AbstractHttp

Có tác dụng lấy các tham số của

LockFeature request được gởi lên

bằng giao thức HTTP POST

Trang 9

WFS/WFS Operation

Classes/LockFeatureSolution/LockFeature

Solution

Có chức năng nhận 1 LockFeature

request, khóa các Feature theo yêu cầu

và tạo chuỗi response bằng Xml WFS/WFS Operation

Classes/LockFeatureSolution/DataBaseAc

cess

Gồm các hàm thực hiện các thao tác trên cơ sở dữ liệu liên quan tới chức năng khóa và mở khóa các Feature WFS/WFS Operation

Classes/TransactionSolution/OperationSol

ution/HTTPGETDelete

Có chức năng nhận Transaction

request với Operation là Delete, được

gởi lên bằng giao thức HTTP GET, thực hiện xóa các Feature theo yêu cầu và tạo response tương ứng

WFS/WFS Operation

Classes/TransactionSolution/OperationSol

ution/HTTPPOSTDelete

Có chức năng nhận Transaction

request với Operation là Delete, được

gởi lên bằng HTTP POST, thực hiện xóa các Feature theo yêu cầu và tạo response tương ứng

WFS/WFS Operation

Classes/TransactionSolution/OperationSol

ution/HTTPPOSTUpdate

Có chức năng nhận Transaction

request với Operation là Update,

được gởi lên bằng HTTP POST, thực hiện việc cập nhật các Feature theo yêu cầu và tạo response tương ứng WFS/WFS Operation

Classes/TransactionSolution/OperationSol

ution/HTTPPOSTInsert

Có chức năng nhận Transaction

request với Operation là Insert, được

gởi lên bằng HTTP POST, thực hiện việc thêm các Feature theo yêu cầu và tạo response tương ứng

WFS/WFS Operation

Classes/TransactionSolution/DataBaseAcc

ess

Gồm các hàm dùng để thao tác trên cơ

sở dữ liệu Thực hiện thêm, xóa, sửa các bảng trong csdl theo yêu cầu

Trang 10

WFS/WFS Operation

Classes/TransactionSolution/TransactionS

olution

Có chức năng nhận 1 Transaction request, thực hiện yêu cầu transaction tương ứng và trả về chuỗi response bằng Xml

WFS/WFS Operation

Classes/GetCapabilitiesSolution

Có chức năng nhận 1 GetCapabilities request, lấy thông tin về các khả năng của server và trả về chuỗi response bằng Xml

WFS/WFS Operation

Classes/FeatureRequest

Chứa 1 loại Feature cần truy vấn và các điều kiện truy vấn đối với lớp đó WFS/WFSSolution Nhận 1 WFS request, xác định loại

request cụ thể và gọi lớp tương ứng để thực hiện request này

Bảng 6.8.Các lớp trong chương trình

™ Chương trình có 1 trang ASP.NET ở địa chỉ

http://localhost/OpenGISServer/VNesOpenGISServer.aspx

Trang này sẽ trực tiếp nhận các request từ client, thực hiện 1 số kiểm tra để đảm bảo tính hợp lệ của request, xác định loại request là WFS hay WMS và gọi lớp tương ứng để đáp ứng request

™ Các file Xml lưu trữ các thông tin về server

ƒ File XmlFiles/WFS_Capabilities.xml: File này chứa nội dung của tài liệu

Xml dùng làm response cho request GetCapabilities

ƒ File XmlFiles/ExceptionFrame.xml: File này chứa phần khung nội dung của chuỗi Xml dùng làm response khi request có lỗi

ƒ Các file trong thư mục WFS/FeatureTypeFiles: đây là các file chứa các tài liệu xml dùng để mô tả các loại Feature Các file này hỗ trợ cho response

của DescribeFeatureType request

Trang 11

Chương 7 Cài đặt các chương trình client

7.1 Cài đặt chương trình OpenGisClientDemo

7.1.1 Giới thiệu

7.1.1.1 Tính năng

™ Chương trình OpenGISClient là 1 chương trình được cài đặt bằng C# ở dạng Window Form

™ Chức năng của chương trình là minh họa 1 cách cụ thể, rõ ràng việc thực hiện các request WFS và WMS lên các server hỗ trợ WFS và WMS

™ Chương trình lưu 1 danh sách các server hỗ trợ WFS và WMS, có thể thêm các server mới Trong quá trình thực hiện request, ta có thể chọn bất kì server nào để gởi request và nhận kết quả từ server đó

™ Các request mà OpenGISClient hỗ trợ gồm:

ƒ WFS:

• GetCapabilities

• DescribeFeatureType

• GetFeature

• LockFeature

• Transaction

ƒ WMS:

• GetCapabilities

• GetMap

™ Chương trình sử dụng bộ thư viện CarbonTools Bộ thư viện này hỗ trợ thực hiện request

Trang 12

7.1.1.2 Màn hình giao diện

7.1.1.2.1 Màn hình chính

Hình 7.1 Màn hình chính

Trang 13

7.1.1.2.2 Màn hình minh họa thực hiện request WFS - GetCapabilities

Hình 7.2.Màn hình minh họa thực hiện request WFS – GetCapabilities

Trang 14

7.1.1.2.3 Màn hình minh họa thực hiện request WFS – DescribeFeatureType

Hình 7.3.Màn hình minh họa thực hiện request WFS – DescribeFeatureType

Trang 15

7.1.1.2.4 Màn hình minh họa thực hiện request WFS – GetFeature

Hình 7.4.Màn hình minh họa thực hiện request WFS – GetFeature

Trang 16

7.1.1.2.5 Màn hình minh họa thực hiện request WFS – GetFeature

Hình 7.5.Màn hình minh họa thực hiện request WFS – GetFeature

Trang 17

7.1.1.2.6 Màn hình minh họa thực hiện request WFS – Transaction

Hình 7.6.Màn hình minh họa thực hiện request WFS – Transaction

Trang 18

7.1.1.2.7 Màn hình minh họa thực hiện request WMS – GetCapabilities

Hình 7.7.Màn hình minh họa thực hiện request WMS – GetCapabilities

Ngày đăng: 30/07/2014, 17:20

HÌNH ẢNH LIÊN QUAN

Bảng 6.8.Các lớp trong chương trình - Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 8 pdf
Bảng 6.8. Các lớp trong chương trình (Trang 10)
Hình 7.1. Màn hình chính - Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 8 pdf
Hình 7.1. Màn hình chính (Trang 12)
Hình 7.2.Màn hình minh họa thực hiện request WFS – GetCapabilities - Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 8 pdf
Hình 7.2. Màn hình minh họa thực hiện request WFS – GetCapabilities (Trang 13)
Hình 7.3.Màn hình minh họa thực hiện request WFS – DescribeFeatureType - Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 8 pdf
Hình 7.3. Màn hình minh họa thực hiện request WFS – DescribeFeatureType (Trang 14)
Hình 7.4.Màn hình minh họa thực hiện request WFS – GetFeature - Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 8 pdf
Hình 7.4. Màn hình minh họa thực hiện request WFS – GetFeature (Trang 15)
Hình 7.5.Màn hình minh họa thực hiện request WFS – GetFeature - Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 8 pdf
Hình 7.5. Màn hình minh họa thực hiện request WFS – GetFeature (Trang 16)
Hình 7.6.Màn hình minh họa thực hiện request WFS – Transaction - Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 8 pdf
Hình 7.6. Màn hình minh họa thực hiện request WFS – Transaction (Trang 17)
Hình 7.7.Màn hình minh họa thực hiện request WMS – GetCapabilities - Web cho ứng dụng GIS và xây dựng ứng dụng minh họa khai thác dịch vụ - 8 pdf
Hình 7.7. Màn hình minh họa thực hiện request WMS – GetCapabilities (Trang 18)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm