SlideShare una empresa de Scribd logo
1 de 64
Tutorial de GeoServer
Elaborado por: Marco Minghini (Politécnico de Milão, Itália)
Traduzido e adaptado por: Marcos R. Rosa (CIH)
Foz do Iguaçu, 2013
2
GeoServer
✔ Criado em 2001, GeoServer é um servidor de mapas Java-based que
permite aos usuários visualizar, editar e publicar dados espaciais a partir de
uma fonte.
✔ É disponibilizado gratuitamente, reduzindo consideravelmente os custos
financeiros com produtos de geotecnologia tradicionais.
✔ É open source: as correções de problemas e melhorias de recursos são
muito realizada em tempo menor quando comparados a soluções de
software tradicionais.
✔ O projeto GeoServer é um projeto vinculado a fundação OSGeo,
desenvolvido, testado e suportado por muitos grupos de indivíduos e
organizações do todo o mundo. Sua versão atual é a 2.3.3.
✔ Pode ser executado em ambiente Linux, Unix, Mac OSX e Microsoft
Windows.
http://geoserver.org
3
GeoServer - Características
✔ O GeoServer contempla algumas funções (a lista completa pode ser
conferida em http://geoserver.org/display/GEOS/Features):
➔ totalmente compatível com padrões OGC: WMS, WFS e WCS;
➔ ferramenta web de fácil configuração;
➔ suporte a PostGIS, shapefile, ArcSDE, DB2 and Oracle;
➔ suporta qualquer arquivo formato vetorial e raster;
➔ reprojeção de dados para WMS and WFS;
➔ pré-visualização integrada utilizando OpenLayers;
➔ possui GeoWebCache para aceleração de visualização de camadas
geográficas;
➔ interface de usuário disponível em vários idiomas;
➔ completa documentação (http://docs.geoserver.org/stable/en/user)
4
GeoServer login/logout
✔ Vamos utilizar para este tutorial o ambiente OSGeo Live 6.0 (live.osgeo.org)
✔ Para iniciar o GeoServer selecione: Applications → Geoservers →
GeoServer → Start GeoServer or Geospatial → WebServices → GeoServer
→ Start GeoServer.
✔ Efetuar o login com o usuário: admin e senha: geoserver.
✔ Para efetuar o Logout, clique no botão localizado no canto superior direto;
✔ Para parar o GeoServer: Applications → Geoservers → GeoServer → Stop
GeoServer or Geospatial → WebServices → GeoServer → Stop GeoServer.
5
GeoServer – Painel de interface
Informações do ambiente Geoserver
Gerenciamento de dados
espaciais
Configuração dos protocolos
Geoserver
links para exemplos de requisições WMS, WFS
e WCS
Configurações
de segurança
Configurações
gerais
Descrição dos serviços disponíveis
6
GeoServer – Diretório de Dados
Diretório de dados do
Geoserver
7
GeoServer Logs
8
GeoServer – Informações de Contato
✔ A página “Contact Information” deixa pública
as informações de contato na requisição WMS
realizada ao servidor (GetCapabilities):
9
Pré-visualização de camadas
Tipo camada Breve descrição da camada Formatos de Visualização e download
✔ A página Layer Preview permite visualizar uma lista de camadas com as
seguintes informações:
➔ A visualização OpenLayers permite ter uma prévia das camadas
➔ Usuários podem realizar o download dos arquivos em KML entre outros
formatos
workspace e nome da camada
10
Pré-visualização de camadas
✔ A função OpenLayers permite uma rápida pré-visualização:
➔ Na URL gerada pode-se visualizar a
chamada WMS GetMap
➔ O código javascript da página pode ser
recuperado e utilizado
➔ Clicando em um feição do mapa, pode-se
visualizar os atributos dos dados pela
requisição WMS GetFeatureInfo
➔ O botão disponibiliza várias funções na
camada, como: mudar estilos, formatos,
filtrar dados, etc.
11
Pré-visualização de camadas
✔ As camadas publicadas no Geoserver podem ser obtidas utilizando
requisições WMS e WFS em um software desktop, por exemplo o Quantum
GIS:
URL do servidor WMS GeoServer URL do servidor WFS GeoServer
12
Publicando camadas
✔ Os dados publicados pelo Geoserver encontram-se localizados no diretório
usr/local/lib/geoserver-2.1.3/data_dir.
✔ Navegue até esta pasta e crie uma nova pasta chamada Ecuador dentro da
pasta data (usr/local/lib/geoserver-2.1.3/data_dir/data/Ecuador).
✔ Efetue o download dos arquivos a partir do link
http://dl.dropbox.com/u/30921037/Ex3_QuantumGIS_data.rar, após o download, extrair
o arquivo zipado para a nova pasta criada.
13
Publicando um shapefile - Workspace
✔ O primeiro passo é criar um workspace para o shapefile, um espaço que
será usado posteriormente para agrupar um conjunto de camadas.
✔ Abra a página Workspaces e clique no botão Add new workspace para criar
um novo workspace:
✔ Nesta página também é possível excluir workspaces existentes usando o
botão Remove selected workspace(s).
14
Publicando um shapefile - Workspace
✔ Defina um nome para o workspace, ou seja, um identificador que descreva
o projeto (exemplo: OSGIS_course) e um Namespace URI (Uniform
Resource Identifier), por exemplo: uma endereço web que represente o
projeto no qual estamos trabalhando.
✔ Selecione o workspace como default (padrão) e pressione Submit:
15
Publicando um shapefile - Store
✔ Próximo passo é a criação de um store para o shapefile, ou seja, uma
entidade para representar este shapefile.
✔ Abra a página Stores e clique no botão Add new Store para criar um novo
store:
✔ Nesta página também é possivel excluir stores existentes utilizando o botão
Remove selected Stores.
16
Publicando um shapefile - Store
✔ Na sequência será exibido uma lista de formatos de dados espaciais
suportados pelo GeoServer, que são divididos em Vector Data Sources e
Raster Data Sources.
✔ Selecione Shapefile:
17
Publicando um shapefile - Store
✔ Agora vamos especificar a fonte de dados vetorial para criar um novo store:
➔ Selecione o workspace OSGIS_course
➔ Insira o nome (Ecuador_roads), no campo
description escreva uma breve descrição e
logo abaixo clique na caixa Enabled
➔ Navegue no diretório de dados do
GeoServer, clicando no opção Browse e
selecione o shapefile ECU_roads.shp
(data/Ecuador/Ex3_Quantum_GIS_data)
➔ Clique no botão Save
18
Publicando um shapefile - Store
✔ Após o store ser publicado, é apresentada uma lista com todos os stores já
cadastrados e seus atributos: Data Type, Workspace, Store Name e Type:
✔ Clicando no link Store Name, pode-se acessar novamente a página para
editar editar as informações.
19
Publicando um shapefile - Camada
✔ Para publicar uma nova camada, abra a página Layers e clique no botão Add
a new resource:
20
Publicando um shapefile - Camada
✔ Na página New Layer, selecione no menu Add layer from o workspace e o
store recentemente criado (OSGIS_course:Ecuador_roads).
✔ Quando é apresentada a lista de camadas a serem publicadas, clique no link
Publish para a camada ECU_roads:
21
Publicando um shapefile - Camada
✔ Na página Edit Layer (aba Data), vamos inserir as seguintes configurações:
➔ Especificar o nome da camada no
campo Name (sem espaço e sem
caracteres especiais - #$/|!& ...)
➔ No campo Title insira uma breve
descrição
➔ Inserir no Abstract um resumo
(opcional)
➔ Caso julgue necessário, também é
possível inserir algumas palavras-chave
relacionadas a camada, campo New
Keyword (estas palavras serão visíveis
nas requisições WMS and WFS
GetCapabilities)
22
Publicando um shapefile - Camada
➔ No campo Declared SRS, escreva a
projeção do shapefile: EPSG:4326 ou
pesquise (usando o código EPSG)
clicando no botão Find...
➔ Selecione no campo SRS handling da
camada como Force declared
➔ Especifique os campos Native
Bounding Box e Lat/Lon Bounding Box;
para isso use os comandos clicando
nos links: Compute from data e
Compute from native bounds para
autocompletar os valores.
✔ Vamos continuar configurando a camada na página Edit Layer (aba Data):
23
Publicando um shapefile - Camada
➔ Certifique-se que o GeoServer apresentou todos os atributos do shapefile
na tabela Feature Type Details e clique no botão Save
✔ Vamos continuar configurando a camada na página Edit Layer (aba Data):
24
Publicando um shapefile - Camada
✔ Após salvar a camada, vamos novamente editá-la.
✔ Clique no link Layers localizado no grupo de opções Data, será apresenta
uma lista de camadas, clique na camada ECU_roads.
✔ Na página Edit Layer (aba Publishing) nas opções de publicação temos:
➔ Se necessário configurar as opções WFS
Settings. Onde é possível escolher o número
máximo de recursos disponibilizados para
cada requisição WFS (Per-Request Feature
Limit) e arquivo de saída GML Maximum
number of decimals (utilizável para grandes
conjunto de dados)
➔ Clique na opção Enable localizada logo
abaixo, para marcar como visível a camada
para o serviço WFS
➔ NOTA: as informações de cache-control são
enviadas para os clientes, para avisá-los
quanto tempo a informação de cache será
gerada pelo GeoServer
25
Publicando um shapefile - Camada
➔ O campo Default Style é responsável pela representação do estilo da camada
WMS (Atenção: o estilo para esta camada deve ser do tipo polígono!). Para
adicionar estilos adicionais (caso desejado) clique no botão → movendo o
estilo da caixa Available Styles para Selected Styles
✔ Vamos continuar na página Edit Layer (aba Publishing) configurando as
opções da Aba Publishing:
➔ Selecione a caixa Queryable em WMS Settings, para
configurar se a requisição GetFeatureInfo WMS deve
estar disponível
26
Publicando um shapefile - Camada
➔ Alterando o link gerado automaticamente pelo Geoserver na URL, é possível
editar a requisição WMS GetMap (mudando por exemplo o estilo de
representação, o bounding box, as dimensões do mapa, etc.)
✔ Após clicar no botão Save, acamada é publicada e pode ser pré-
visualizada na página Layer Preview:
27
Publicando um shapefile - Exercício
✔ Execute o mesmo procedimento para publicar o shapefile ECU_adm1.shp no
qual representa as províncias do Equador (camada vetorial de polígonos):
➔ Utilize o mesmo workspace OSGIS_course criado anteriormente
➔ Crie um novo store com nome Ecuador_provinces
➔ Nas configurações defina como Default Style: polygon e o estilo
cite_lakes como Selected Styles
28
Publicando um shapefile
✔ Em uma requisição WMS GetMap pode-se visualizar uma ou mais camadas:
os nomes das camadas devem estar separados por vírgula, como no
exemplo:
OSGIS_course:ECU_adm1,ECU_roads
29
Publicando um grupo de shapefiles
✔ Um conjunto de shapefiles podem ser publicados juntos em um único data
store, desde estejam configurados em uma mesma pasta.
✔ Suponha que gostaríamos de publicar um grupo constituído pelos seguintes
shapefiles:
➔ ECU_adm3.shp (Equador - paróquias)
➔ ECU_water_areas_dcw.shp (Equador – aréas com água)
➔ ECU_water_lines_dcw.shp (Equador - rios)
➔ ECU_rails.shp (Equador - ferrovias)
✔ Copie e cole os arquivos shapefiles em uma nova pasta (com o nome de
Ecuador_group) dentro do diretório Data no GeoServer usr/local/lib/geoserver-
2.1.3/data_dir.
✔ Crie um novo store a partir de Store → Add New Store; na página New Data
Source, selecione Directory of spatial files (shapefiles) como opção:
30
Publicando um grupo de shapefiles
✔ Especifique as configurações do grupo de vetores que deseja criar:
➔ Escolha o workspace OSGIS_course
➔ Insira um nome (Ecuador_group) no
campo Name, uma breve descrição para o
conjunto de dados, e marque a caixa
Enabled
➔ Selecione o diretório onde estão os
shapefiles no GeoServer, pasta
Ecuador_group criada anteriormente.
31
Publicando um grupo de shapefiles
✔ Cada camada shapefile deve ser publicada separadamente, como visto
anteriormente; após a publicação da primeira, selecione Add a new resource
da página Layers para publicar as outras camadas, selecionando
OSGIS_course:Ecuador_group e a opção Add layer from.
32
Publicando um grupo de shapefiles
✔ Demonstração do possível resultado:
33
Publicando um grupo de camadas
✔ Se quisermos publicar mais camadas (não importa sua natureza, raster ou
vetor) juntos como um único conjunto de dados, é possivel definir um grupo
de camadas.
✔ Considere a necessidade de publicar um grupo de camadas, com a seguinte
configuração:
➔ ECU_adm1.shp (Equador - províncias)
➔ ECU_water_areas_dcw.shp (Equador – áreas com água)
➔ ECU_water_lines_dcw.shp (Equador - rios)
➔ ECU_rails.shp (Ecuador - ferrovias)
➔ ECU_roads.shp (Ecuador - rodovias)
34
Publicando um grupo de camadas
✔ Vamos agora publicar um grupo de camadas, abra a página Layer Groups e
clique no botão Add new layer group para criar um novo grupo de camadas:
✔ Nesta mesma página também é possível excluir um grupo de camadas
existentes, clicando no botão Remove selected layer group(s).
35
Publicando um grupo de camadas
✔ Vamos configurar o grupo de camadas:
➔ Insira o nome do grupo (Equador)
➔ Clique no botão Add Layer... e importe as
camadas (uma por vez)
➔ Selecione a opção Generate Bounds para
gerar automaticamente a projeção e o
bounding box
➔ Ordenar as camadas na forma desejada (a
primeira camada da lista é a primeira a ser
desenhada) e altere os estilos, caso seja
necessário
➔ Clique no botão Save
36
Publicando um grupo de camadas
✔ Exemplo de visualização do resultado:
37
Publicando uma camada do tipo PostGis
✔ Agora vamos publicar uma camada diretamente do banco de dados
PostgreSQL com PostGis. Para isso, vamos utilizar o gvSIG para enviar o
shapefile diretamente ao banco de dados.
➔ No Gestor de Projetos, crie uma
nova vista com a projeção
ESPG:4326.
➔ Adicione uma camada do tipo
shapefile e selecione o arquivo
ECU_adm2.shp.
➔ No canto esquerdo, clique no
nome da camada ECU_adm2
➔ Selecione o menu Camada →
Exportar para → PostGIS
➔ Será apresentada uma caixa
onde deve ser inserido o nome
da tabela, digite ecu_adm2
38
Publicando uma camada do tipo PostGis
✔ Após digitar o nome da tabela, serão solicitados os seguintes dados para
conexão:
➔ Insira um nome para conexão: localhost
(conexão local)
➔ No campo computador, insira o
endereço localhost (caso o banco de
dados esteja em um servidor remoto,
neste campo é informado o IP ou o
domínio do servidor)
➔ Porta 5432, Usuário: user, Senha: user
➔ O banco de dados deve ser criado
previamente (utilizando como template o
template_postgis), no campo BD vamos
inserir oficinacplp
➔ Clique no botão Aceitar para enviar o
shapefile ao banco
39
Publicando uma camada do tipo PostGis
✔ Vamos agora verificar se a operação de enviar shapefile para o banco de
dados foi concluída:
➔ Selecione o menu Geospatial →
Databases → PgAdmin III
➔ Vamos verificar se a tabela
ecu_adm2 foi criada.
➔ Também verificar se na tabela
geometry_columns está presente o
registro automático com a
configuração da nova tabela.
➔ Após analisar estes dados, vamos
voltar para o GeoServer.
40
Publicando uma camada do tipo PostGis
✔ Voltando ao Geoserver, vamos selecionar a opção Store → Add New Store
✔ Diferente dos demais exercícios, vamos selecionar a opção PostGIS –
PostGIS Database
41
Publicando uma camada do tipo PostGis
✔ Vamos configurar o store com as seguintes informações:
➔ Insira o nome do Data Source
ecu_adm2_db
➔ Uma descrição e clique na caixa
Enabled.
➔ Nos parâmetros de configuração
insira os mesmos dados utilizados
no gvSIG
➔ Host: localhost, port: 5432, database:
oficinacplp, schema: public, user:
user, passwd: user.
42
Publicando uma camada do tipo PostGis
✔ Após criar o store, automaticamente somos direcionados para uma tela com
as camadas disponíveis a partir da conexão com o banco.
✔ Selecione o link Publish da camada ecu_adm2
43
Publicando uma camada do tipo PostGis
✔ Vamos configurar a camada da mesma forma já executada anteriormente.
✔ Inserir um nome, título, resumo, projeção, e gerar automaticamente os
bounding boxes.
✔ Somente altere o valor dos dois campos Min X Bounding Boxes para
-91,82680599999, pois o GeoServer não conseguirá configurar
corretamente no modo automático.
✔ Depois clique no botão Save.
44
Publicando uma camada do tipo PostGis
✔ Se tudo ocorrer corretamente, teremos a seguinte visualização da camada:
45
Publicando um camada do tipo raster - Store
✔ Vamos agora publicar um DTM (Digital Terrain Model) do Equador, derivado do
SRTM (Shuttle Radar Topographic Mission)
✔ Faça download do arquivo a partir do link:
https://dl.dropbox.com/u/30921037/SRTM.rar e mova a pasta SRTM dentro da pasta
Ecuador (o caminho da nova pasta deve ser usr/local/lib/geoserver-
2.1.3/data_dir/data/Ecuador/SRTM).
✔ Todos os arquivos podem ser baixados a partir de http://srtm.csi.cgiar.org, que
fornece dados de elevação mundiais de 90 metros de resolução.
46
Publicando um camada do tipo raster - Store
✔ Abra a página Stores e clique no botão Add new Store para criar um novo store
para a imagem raster.
✔ Entre a lista de fontes de dados Raster Data Sources suportados pelo
Geoserver, selecione GeoTIFF:
47
Publicando um camada raster - Camada
✔ Vamos configurar as seguintes opções:
➔ Escolha o workspace OSGIS_course
➔ Insira um nome (srtm_18_12) e uma breve
descrição para a fonte de dados, selecione
também a caixa Enabled
➔ Navegue no diretório Data do Geoserver e
selecione a camada raster srtm_18_12.tif na
pasta data/Ecuador/SRTM)
48
Publicando um camada raster - Camada
✔ Após a criação do store, vamos configurar a camada. Na página Edit Layer
(aba Data) devem ser definidas as seguintes configurações:
➔ Insira o nome da camada no campo
Name (lembre-se sem espaços e sem
caracteres especiais)
➔ Uma breve descrição no campo Title
➔ Um resumo (opcional) no campo Abstract
➔ Caso necessário, inserir algumas
palavras-chave relacionadas a camada,
no campo Keywords (estas informações
serão visíveis na requisição
GetCapabilities WMS e WCS)
49
Publicando um camada raster - Camada
✔ Vamos continuar configurando nossa camada raster:
➔ No campo de projeção, Declared SRS,
escreva EPSG:4326 ou pesquise
(usando o código EPSG) com o
comando Find...
➔ Selecione no campo SRS handling da
camada como to Force declared
➔ Especifique os campos Native Bounding
Box e Lat/Lon Bounding Box; use os
comandos: Compute from data e
Compute from native bounds para
autocompletar os valores.
➔ Selecione a cor a ser utilizada como
transparência (se necessário) e o campo
tile size
50
Publicando um camada raster - Camada
✔ Vamos configurar agora a aba Publishing:
➔ Caso seja necessário, especificar o sistema de
referência para as requisições e respostas WCS
➔ Nas opções Default Interpolation Method, escolha
nearest neighbour na caixa Selected selecione
bicubic e linear
➔ Selecione no campo Native Format como GeoTIFF,
e especifique os outros como Selected Formats
51
Publicando um camada raster - Camada
✔ Vamos continuar a configurar nossa camada raster na aba Publishing, agora
as configurações WMS:
➔ Selecione a caixa Queryable se a requisição WMS
GetFeatureInfo devem estar disponíveis
➔ Escolha o estilo dem no campo Default Style (Atenção: deve
ser um estilo para representar uma camada raster!).
52
Publicando camada raster - Exercício
✔ Agora vamos executar o mesmo procedimento para publicar outros arquivos
SRTM GeoTIFF (srtm_18_13.tif, srtm_19_12.tif, srtm_19_13.tif):
➔ Utilize o mesmo workspace OSGIS_course criado anteriormente
➔ Crie um novo data store para cada camada raster
➔ Nas configurações WMS, escolha dem como Default Style para cada
camada
➔ Criar um grupo de camadas incluindo todos os quatro camadas GeoTIFF
publicadas
✔ Exemplo da pré-visualização:
53
Definindo Estilos para uma camada WMS - SLD
✔ O GeoServer utiliza o padrão OGC SLD (Styled Layer Descriptor) para
aplicar estilos às feições cartográficas nas camadas WMS.
✔ O padrão (v. 1.1.0) pode ser efetuado download a partir do link
http://opengeospatial.org/standards/sld#overview
➔ Um estilo é um arquivo XML capaz de representar toda a configuração do
mapa em um único documento.
➔ O cookbook (soluções rápidas) pode ser obtido a partir do link
docs.geoserver.org/stable/en/user/styling/sld-cookbook
54
Definindo Estilos para uma camada WMS - SLD
✔ Os estilos disponíveis no GeoServer estão listados na página Styles; a partir
desta página um novo estilo pode ser adicionado clicando no botão Add a
new style e estilos já existentes podem ser excluídos com a opção Removed
selected style(s):
55
Definindo Estilos para uma camada WMS - SLD
✔ Clicando no nome do estilo, pode-se acessar a página de edição:
➔ Especifica ou altera o nome do estilo
➔ Escrita do código XML usando o padrão
SLD
➔ Enviar um arquivo SLD já existente
➔ Validar o código antes de salvar
56
Definindo Estilos para uma camada WMS - SLD
✔ Vamos considerar por exemplo o estilo simple_roads (usado para camadas
do tipo polígono):
➔ Linhas são representadas em cor vermelha, com a largura de 2 pixels
Cor da borda da linha (#AA3333 = vermelho claro)
Largura da linha (pixels)
57
Definindo Estilos para uma camada WMS - SLD
✔ Vamos criar um novo estilo, chamado pipe_roads, usado para melhor
visualizar as rodovias. Para conseguir o efeito, vamos desenhar as linhas
duas vezes: a primeira maior na cor cinza escuro, e a mais estreita na cor
cinza claro. Isto cria um efeito como “tubo cheio” que geralmente é utilizado
na representação de rodovias em mapas na web.
✔ Copie e cole o estilo simple_roads com o botão Copy... , depois:
➔ Mude o nome do estilo, o título e o resumo
Nome do estilo
Título e resumo do estilo
58
Definindo Estilos para uma camada WMS - SLD
➔ Defina duas tags <FeatureTypeStyle>, representando a borda (cinza escuro,
4 pixels de largura) e o enchimento (cinza claro, 2 pixels de largura):
primeiro estilo representando a borda
Segundo estilo representando o enchimento
59
Definindo Estilos para uma camada WMS - SLD
➔ Pressione o botão Validate para validar seu código: se não ocorrer erros,
um aviso na cor verde será apresentado dizendo No validation errors.
➔ Marque este novo estilo como default style para a camada ECU_roads e
veja o resultado na página Layer Preview:
60
Definindo Estilos para uma camada WMS - SLD
✔ Alguns SIG desktop permitem salvar estilos para camadas em um arquivo
SLD, que posteriormente pode ser importado pelo Geoserver.
✔ O software Quantum GIS tem um plugin (chamado de Save As SLD) que
abilita salvar simples estilos de camadas de acordo com o padrão SLD ou
diretamente importá-los dentro do Geoserver:
➔ Abra o Quantum GIS e selecione no menu Plugins → Fetch Python
Plugins
➔ Na aba Repositories e pressione o botão Add...
➔ Escreva QGIS Contributed Repository no campo Name e
http://pyqgis.org/repo/contributed como URL, marque Enabled e presione OK:
61
Definindo Estilos para uma camada WMS - SLD
✔ Na aba Plugins, veja o plugin Save As SLD e pressione o botão Install plugin
para instalar o plugin.
✔ Ligue somente a camada ECU_adm1 (Equador províncias) e edite a lista de
estilos para setar a gradução da cor e o label (nome) das províncias:
62
Definindo Estilos para uma camada WMS - SLD
✔ Selecione Plugins → Save Style As SLD... → Save style As SLD...:
➔ Previsualização do documento
SLD
➔ Opção para fazer upload do
estilo direto no Geoserver
➔ Salve o estilo SLD
63
Definindo Estilos para uma camada WMS - SLD
✔ Abrindo a página Styles do Geoserver, você poderá realizar o upload do
novo estilo:
✔ Marque o novo estilo como default style para a camada ECU_adm1 e veja o
resultado no página Layer Preview:
✔ Atenção: Este tipo de geração de plugin não suporta definições complexas
de estilos.
64
Referências
✔ GeoServer official website: http://geoserver.org
✔ GeoServer user documentation: http://docs.geoserver.org/stable/en/user
✔ GeoSolutions GeoServer Workshop at GeoCamp Summer School, Foligno
(Italy), June 25-29 2012 (Live DVD)
✔ CGIAR-CSI SRTM: http://srtm.csi.cgiar.org
➔ http://creativecommons.org/licenses/by-nc-sa/3.0

Más contenido relacionado

La actualidad más candente

Introduction to GeoNode
Introduction to GeoNodeIntroduction to GeoNode
Introduction to GeoNodeGeoSolutions
 
Introdução ao OpenLayers
Introdução ao OpenLayersIntrodução ao OpenLayers
Introdução ao OpenLayersFernando Quadro
 
Introduction of Open Source GIS
Introduction of Open Source GISIntroduction of Open Source GIS
Introduction of Open Source GISSANGHEE SHIN
 
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례BJ Jang
 
Mapserver vs. geoserver
Mapserver vs. geoserverMapserver vs. geoserver
Mapserver vs. geoserver鸣 饶
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesGeoSolutions
 
Hortonworks Technical Workshop - Operational Best Practices Workshop
Hortonworks Technical Workshop - Operational Best Practices WorkshopHortonworks Technical Workshop - Operational Best Practices Workshop
Hortonworks Technical Workshop - Operational Best Practices WorkshopHortonworks
 
[FOSS4G Korea 2016] Workshop - Advanced GeoServer
[FOSS4G Korea 2016] Workshop - Advanced GeoServer[FOSS4G Korea 2016] Workshop - Advanced GeoServer
[FOSS4G Korea 2016] Workshop - Advanced GeoServerMinPa Lee
 
공간정보거점대학 1.geo server_고급과정
공간정보거점대학 1.geo server_고급과정공간정보거점대학 1.geo server_고급과정
공간정보거점대학 1.geo server_고급과정BJ Jang
 
오픈소스 공간통계분석 패키지 개발
오픈소스  공간통계분석 패키지 개발오픈소스  공간통계분석 패키지 개발
오픈소스 공간통계분석 패키지 개발MinPa Lee
 
QGIS 기초
QGIS 기초 QGIS 기초
QGIS 기초 slhead1
 
GeoServer Developers Workshop
GeoServer Developers WorkshopGeoServer Developers Workshop
GeoServer Developers WorkshopJody Garnett
 
PostGIS and Spatial SQL
PostGIS and Spatial SQLPostGIS and Spatial SQL
PostGIS and Spatial SQLTodd Barr
 
오픈소스GIS 개론 과정 - OpenLayers 기초
오픈소스GIS 개론 과정 - OpenLayers 기초오픈소스GIS 개론 과정 - OpenLayers 기초
오픈소스GIS 개론 과정 - OpenLayers 기초HaNJiN Lee
 
Geo server 성능향상을 위한 튜닝 기법 20111028
Geo server 성능향상을 위한 튜닝 기법 20111028Geo server 성능향상을 위한 튜닝 기법 20111028
Geo server 성능향상을 위한 튜닝 기법 20111028BJ Jang
 
GeoServer 2.4.x 한국어 사용자 지침서
GeoServer 2.4.x 한국어 사용자 지침서GeoServer 2.4.x 한국어 사용자 지침서
GeoServer 2.4.x 한국어 사용자 지침서SANGHEE SHIN
 
Integrating PostGIS in Web Applications
Integrating PostGIS in Web ApplicationsIntegrating PostGIS in Web Applications
Integrating PostGIS in Web ApplicationsCommand Prompt., Inc
 
공간정보거점대학 PostGIS 고급과정
공간정보거점대학 PostGIS 고급과정공간정보거점대학 PostGIS 고급과정
공간정보거점대학 PostGIS 고급과정JungHwan Yun
 

La actualidad más candente (20)

Introduction to GeoNode
Introduction to GeoNodeIntroduction to GeoNode
Introduction to GeoNode
 
Introdução ao OpenLayers
Introdução ao OpenLayersIntrodução ao OpenLayers
Introdução ao OpenLayers
 
Introduction of Open Source GIS
Introduction of Open Source GISIntroduction of Open Source GIS
Introduction of Open Source GIS
 
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
 
Mapserver vs. geoserver
Mapserver vs. geoserverMapserver vs. geoserver
Mapserver vs. geoserver
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
 
Hortonworks Technical Workshop - Operational Best Practices Workshop
Hortonworks Technical Workshop - Operational Best Practices WorkshopHortonworks Technical Workshop - Operational Best Practices Workshop
Hortonworks Technical Workshop - Operational Best Practices Workshop
 
[FOSS4G Korea 2016] Workshop - Advanced GeoServer
[FOSS4G Korea 2016] Workshop - Advanced GeoServer[FOSS4G Korea 2016] Workshop - Advanced GeoServer
[FOSS4G Korea 2016] Workshop - Advanced GeoServer
 
공간정보거점대학 1.geo server_고급과정
공간정보거점대학 1.geo server_고급과정공간정보거점대학 1.geo server_고급과정
공간정보거점대학 1.geo server_고급과정
 
오픈소스 공간통계분석 패키지 개발
오픈소스  공간통계분석 패키지 개발오픈소스  공간통계분석 패키지 개발
오픈소스 공간통계분석 패키지 개발
 
QGIS 기초
QGIS 기초 QGIS 기초
QGIS 기초
 
GeoServer Developers Workshop
GeoServer Developers WorkshopGeoServer Developers Workshop
GeoServer Developers Workshop
 
PostGIS and Spatial SQL
PostGIS and Spatial SQLPostGIS and Spatial SQL
PostGIS and Spatial SQL
 
오픈소스GIS 개론 과정 - OpenLayers 기초
오픈소스GIS 개론 과정 - OpenLayers 기초오픈소스GIS 개론 과정 - OpenLayers 기초
오픈소스GIS 개론 과정 - OpenLayers 기초
 
Geo server 성능향상을 위한 튜닝 기법 20111028
Geo server 성능향상을 위한 튜닝 기법 20111028Geo server 성능향상을 위한 튜닝 기법 20111028
Geo server 성능향상을 위한 튜닝 기법 20111028
 
GeoServer 2.4.x 한국어 사용자 지침서
GeoServer 2.4.x 한국어 사용자 지침서GeoServer 2.4.x 한국어 사용자 지침서
GeoServer 2.4.x 한국어 사용자 지침서
 
Learning postgresql
Learning postgresqlLearning postgresql
Learning postgresql
 
Integrating PostGIS in Web Applications
Integrating PostGIS in Web ApplicationsIntegrating PostGIS in Web Applications
Integrating PostGIS in Web Applications
 
GeoServer 기초
GeoServer 기초GeoServer 기초
GeoServer 기초
 
공간정보거점대학 PostGIS 고급과정
공간정보거점대학 PostGIS 고급과정공간정보거점대학 PostGIS 고급과정
공간정보거점대학 PostGIS 고급과정
 

Destacado

Desenvolvendo aplicações geográficas com Software Livre
Desenvolvendo aplicações geográficas com Software LivreDesenvolvendo aplicações geográficas com Software Livre
Desenvolvendo aplicações geográficas com Software LivreFernando Quadro
 
MapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactMapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactGeoSolutions
 
Sistema de Informação Geográfica: Um mundo a ser desvendado.
Sistema de Informação Geográfica: Um mundo a ser desvendado.Sistema de Informação Geográfica: Um mundo a ser desvendado.
Sistema de Informação Geográfica: Um mundo a ser desvendado.Fernando Quadro
 

Destacado (7)

Introdução ao PostGIS
Introdução ao PostGISIntrodução ao PostGIS
Introdução ao PostGIS
 
Por dentro do GeoServer
Por dentro do GeoServerPor dentro do GeoServer
Por dentro do GeoServer
 
Geoserver
GeoserverGeoserver
Geoserver
 
Desenvolvendo aplicações geográficas com Software Livre
Desenvolvendo aplicações geográficas com Software LivreDesenvolvendo aplicações geográficas com Software Livre
Desenvolvendo aplicações geográficas com Software Livre
 
GISVM
GISVMGISVM
GISVM
 
MapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactMapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and React
 
Sistema de Informação Geográfica: Um mundo a ser desvendado.
Sistema de Informação Geográfica: Um mundo a ser desvendado.Sistema de Informação Geográfica: Um mundo a ser desvendado.
Sistema de Informação Geográfica: Um mundo a ser desvendado.
 

Similar a GeoServer Tutorial - Publicando Dados Espaciais

Tutorial_PostGis
Tutorial_PostGisTutorial_PostGis
Tutorial_PostGisANAMSIGOT
 
Manual Nuxeo DM 5.4.2 para os profissionais da infomação
Manual Nuxeo DM 5.4.2 para os profissionais da infomaçãoManual Nuxeo DM 5.4.2 para os profissionais da infomação
Manual Nuxeo DM 5.4.2 para os profissionais da infomaçãoSérgio Lampert
 
Apostila completa q_gis
Apostila completa q_gisApostila completa q_gis
Apostila completa q_gisrailano
 
Criando Sites Com CMS
Criando Sites Com CMSCriando Sites Com CMS
Criando Sites Com CMSClaudio Toldo
 
Windows 2003 guia_completo
Windows 2003 guia_completoWindows 2003 guia_completo
Windows 2003 guia_completocleanrail
 
Delimitação de Bacias Hidrográficas, rede de drenagem e outros parâmetros uti...
Delimitação de Bacias Hidrográficas, rede de drenagem e outros parâmetros uti...Delimitação de Bacias Hidrográficas, rede de drenagem e outros parâmetros uti...
Delimitação de Bacias Hidrográficas, rede de drenagem e outros parâmetros uti...Lucas Cavalcante
 
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEMQGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEMJorge Santos
 
Servidor - Criação de Domínios
Servidor - Criação de DomíniosServidor - Criação de Domínios
Servidor - Criação de Domíniosrphasaigg
 
Instalação DSpace 4.x Windows
Instalação DSpace 4.x WindowsInstalação DSpace 4.x Windows
Instalação DSpace 4.x WindowsRodrigo De Jesus
 
Instalação DSpace 4.x Windows
Instalação DSpace 4.x WindowsInstalação DSpace 4.x Windows
Instalação DSpace 4.x WindowsRodrigo Prado
 
Desenvolvimento de Apps e Games para Android - Parte 5
Desenvolvimento de Apps e Games para Android - Parte 5Desenvolvimento de Apps e Games para Android - Parte 5
Desenvolvimento de Apps e Games para Android - Parte 5Erisvaldo Junior
 

Similar a GeoServer Tutorial - Publicando Dados Espaciais (20)

Tutorial_PostGis
Tutorial_PostGisTutorial_PostGis
Tutorial_PostGis
 
Manual Nuxeo DM 5.4.2 para os profissionais da infomação
Manual Nuxeo DM 5.4.2 para os profissionais da infomaçãoManual Nuxeo DM 5.4.2 para os profissionais da infomação
Manual Nuxeo DM 5.4.2 para os profissionais da infomação
 
Apostila completa q_gis
Apostila completa q_gisApostila completa q_gis
Apostila completa q_gis
 
Zabbix 3 0-cinfotec
Zabbix 3 0-cinfotecZabbix 3 0-cinfotec
Zabbix 3 0-cinfotec
 
Criando Sites Com CMS
Criando Sites Com CMSCriando Sites Com CMS
Criando Sites Com CMS
 
Apostila dreamweaver
Apostila dreamweaver Apostila dreamweaver
Apostila dreamweaver
 
Aula 8 active diretory - 29092012
Aula 8   active diretory - 29092012Aula 8   active diretory - 29092012
Aula 8 active diretory - 29092012
 
Windows 2003 guia_completo
Windows 2003 guia_completoWindows 2003 guia_completo
Windows 2003 guia_completo
 
Tutorial +login+mvc
Tutorial +login+mvcTutorial +login+mvc
Tutorial +login+mvc
 
Delimitação de Bacias Hidrográficas, rede de drenagem e outros parâmetros uti...
Delimitação de Bacias Hidrográficas, rede de drenagem e outros parâmetros uti...Delimitação de Bacias Hidrográficas, rede de drenagem e outros parâmetros uti...
Delimitação de Bacias Hidrográficas, rede de drenagem e outros parâmetros uti...
 
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEMQGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
QGIS 2.18: Delimitação de Bacias Hidrográficas com o TauDEM
 
Servidor - Criação de Domínios
Servidor - Criação de DomíniosServidor - Criação de Domínios
Servidor - Criação de Domínios
 
Windows 2003 guia_completo
Windows 2003 guia_completoWindows 2003 guia_completo
Windows 2003 guia_completo
 
Instalação DSpace 4.x Windows
Instalação DSpace 4.x WindowsInstalação DSpace 4.x Windows
Instalação DSpace 4.x Windows
 
Instalação DSpace 4.x Windows
Instalação DSpace 4.x WindowsInstalação DSpace 4.x Windows
Instalação DSpace 4.x Windows
 
Metasys school server resumido
Metasys school server resumidoMetasys school server resumido
Metasys school server resumido
 
Desenvolvimento de Apps e Games para Android - Parte 5
Desenvolvimento de Apps e Games para Android - Parte 5Desenvolvimento de Apps e Games para Android - Parte 5
Desenvolvimento de Apps e Games para Android - Parte 5
 
tutorial nagios
tutorial nagiostutorial nagios
tutorial nagios
 
dbaccess.pdf
dbaccess.pdfdbaccess.pdf
dbaccess.pdf
 
Manual dsg tools_3.2
Manual dsg tools_3.2Manual dsg tools_3.2
Manual dsg tools_3.2
 

GeoServer Tutorial - Publicando Dados Espaciais

  • 1. Tutorial de GeoServer Elaborado por: Marco Minghini (Politécnico de Milão, Itália) Traduzido e adaptado por: Marcos R. Rosa (CIH) Foz do Iguaçu, 2013
  • 2. 2 GeoServer ✔ Criado em 2001, GeoServer é um servidor de mapas Java-based que permite aos usuários visualizar, editar e publicar dados espaciais a partir de uma fonte. ✔ É disponibilizado gratuitamente, reduzindo consideravelmente os custos financeiros com produtos de geotecnologia tradicionais. ✔ É open source: as correções de problemas e melhorias de recursos são muito realizada em tempo menor quando comparados a soluções de software tradicionais. ✔ O projeto GeoServer é um projeto vinculado a fundação OSGeo, desenvolvido, testado e suportado por muitos grupos de indivíduos e organizações do todo o mundo. Sua versão atual é a 2.3.3. ✔ Pode ser executado em ambiente Linux, Unix, Mac OSX e Microsoft Windows. http://geoserver.org
  • 3. 3 GeoServer - Características ✔ O GeoServer contempla algumas funções (a lista completa pode ser conferida em http://geoserver.org/display/GEOS/Features): ➔ totalmente compatível com padrões OGC: WMS, WFS e WCS; ➔ ferramenta web de fácil configuração; ➔ suporte a PostGIS, shapefile, ArcSDE, DB2 and Oracle; ➔ suporta qualquer arquivo formato vetorial e raster; ➔ reprojeção de dados para WMS and WFS; ➔ pré-visualização integrada utilizando OpenLayers; ➔ possui GeoWebCache para aceleração de visualização de camadas geográficas; ➔ interface de usuário disponível em vários idiomas; ➔ completa documentação (http://docs.geoserver.org/stable/en/user)
  • 4. 4 GeoServer login/logout ✔ Vamos utilizar para este tutorial o ambiente OSGeo Live 6.0 (live.osgeo.org) ✔ Para iniciar o GeoServer selecione: Applications → Geoservers → GeoServer → Start GeoServer or Geospatial → WebServices → GeoServer → Start GeoServer. ✔ Efetuar o login com o usuário: admin e senha: geoserver. ✔ Para efetuar o Logout, clique no botão localizado no canto superior direto; ✔ Para parar o GeoServer: Applications → Geoservers → GeoServer → Stop GeoServer or Geospatial → WebServices → GeoServer → Stop GeoServer.
  • 5. 5 GeoServer – Painel de interface Informações do ambiente Geoserver Gerenciamento de dados espaciais Configuração dos protocolos Geoserver links para exemplos de requisições WMS, WFS e WCS Configurações de segurança Configurações gerais Descrição dos serviços disponíveis
  • 6. 6 GeoServer – Diretório de Dados Diretório de dados do Geoserver
  • 8. 8 GeoServer – Informações de Contato ✔ A página “Contact Information” deixa pública as informações de contato na requisição WMS realizada ao servidor (GetCapabilities):
  • 9. 9 Pré-visualização de camadas Tipo camada Breve descrição da camada Formatos de Visualização e download ✔ A página Layer Preview permite visualizar uma lista de camadas com as seguintes informações: ➔ A visualização OpenLayers permite ter uma prévia das camadas ➔ Usuários podem realizar o download dos arquivos em KML entre outros formatos workspace e nome da camada
  • 10. 10 Pré-visualização de camadas ✔ A função OpenLayers permite uma rápida pré-visualização: ➔ Na URL gerada pode-se visualizar a chamada WMS GetMap ➔ O código javascript da página pode ser recuperado e utilizado ➔ Clicando em um feição do mapa, pode-se visualizar os atributos dos dados pela requisição WMS GetFeatureInfo ➔ O botão disponibiliza várias funções na camada, como: mudar estilos, formatos, filtrar dados, etc.
  • 11. 11 Pré-visualização de camadas ✔ As camadas publicadas no Geoserver podem ser obtidas utilizando requisições WMS e WFS em um software desktop, por exemplo o Quantum GIS: URL do servidor WMS GeoServer URL do servidor WFS GeoServer
  • 12. 12 Publicando camadas ✔ Os dados publicados pelo Geoserver encontram-se localizados no diretório usr/local/lib/geoserver-2.1.3/data_dir. ✔ Navegue até esta pasta e crie uma nova pasta chamada Ecuador dentro da pasta data (usr/local/lib/geoserver-2.1.3/data_dir/data/Ecuador). ✔ Efetue o download dos arquivos a partir do link http://dl.dropbox.com/u/30921037/Ex3_QuantumGIS_data.rar, após o download, extrair o arquivo zipado para a nova pasta criada.
  • 13. 13 Publicando um shapefile - Workspace ✔ O primeiro passo é criar um workspace para o shapefile, um espaço que será usado posteriormente para agrupar um conjunto de camadas. ✔ Abra a página Workspaces e clique no botão Add new workspace para criar um novo workspace: ✔ Nesta página também é possível excluir workspaces existentes usando o botão Remove selected workspace(s).
  • 14. 14 Publicando um shapefile - Workspace ✔ Defina um nome para o workspace, ou seja, um identificador que descreva o projeto (exemplo: OSGIS_course) e um Namespace URI (Uniform Resource Identifier), por exemplo: uma endereço web que represente o projeto no qual estamos trabalhando. ✔ Selecione o workspace como default (padrão) e pressione Submit:
  • 15. 15 Publicando um shapefile - Store ✔ Próximo passo é a criação de um store para o shapefile, ou seja, uma entidade para representar este shapefile. ✔ Abra a página Stores e clique no botão Add new Store para criar um novo store: ✔ Nesta página também é possivel excluir stores existentes utilizando o botão Remove selected Stores.
  • 16. 16 Publicando um shapefile - Store ✔ Na sequência será exibido uma lista de formatos de dados espaciais suportados pelo GeoServer, que são divididos em Vector Data Sources e Raster Data Sources. ✔ Selecione Shapefile:
  • 17. 17 Publicando um shapefile - Store ✔ Agora vamos especificar a fonte de dados vetorial para criar um novo store: ➔ Selecione o workspace OSGIS_course ➔ Insira o nome (Ecuador_roads), no campo description escreva uma breve descrição e logo abaixo clique na caixa Enabled ➔ Navegue no diretório de dados do GeoServer, clicando no opção Browse e selecione o shapefile ECU_roads.shp (data/Ecuador/Ex3_Quantum_GIS_data) ➔ Clique no botão Save
  • 18. 18 Publicando um shapefile - Store ✔ Após o store ser publicado, é apresentada uma lista com todos os stores já cadastrados e seus atributos: Data Type, Workspace, Store Name e Type: ✔ Clicando no link Store Name, pode-se acessar novamente a página para editar editar as informações.
  • 19. 19 Publicando um shapefile - Camada ✔ Para publicar uma nova camada, abra a página Layers e clique no botão Add a new resource:
  • 20. 20 Publicando um shapefile - Camada ✔ Na página New Layer, selecione no menu Add layer from o workspace e o store recentemente criado (OSGIS_course:Ecuador_roads). ✔ Quando é apresentada a lista de camadas a serem publicadas, clique no link Publish para a camada ECU_roads:
  • 21. 21 Publicando um shapefile - Camada ✔ Na página Edit Layer (aba Data), vamos inserir as seguintes configurações: ➔ Especificar o nome da camada no campo Name (sem espaço e sem caracteres especiais - #$/|!& ...) ➔ No campo Title insira uma breve descrição ➔ Inserir no Abstract um resumo (opcional) ➔ Caso julgue necessário, também é possível inserir algumas palavras-chave relacionadas a camada, campo New Keyword (estas palavras serão visíveis nas requisições WMS and WFS GetCapabilities)
  • 22. 22 Publicando um shapefile - Camada ➔ No campo Declared SRS, escreva a projeção do shapefile: EPSG:4326 ou pesquise (usando o código EPSG) clicando no botão Find... ➔ Selecione no campo SRS handling da camada como Force declared ➔ Especifique os campos Native Bounding Box e Lat/Lon Bounding Box; para isso use os comandos clicando nos links: Compute from data e Compute from native bounds para autocompletar os valores. ✔ Vamos continuar configurando a camada na página Edit Layer (aba Data):
  • 23. 23 Publicando um shapefile - Camada ➔ Certifique-se que o GeoServer apresentou todos os atributos do shapefile na tabela Feature Type Details e clique no botão Save ✔ Vamos continuar configurando a camada na página Edit Layer (aba Data):
  • 24. 24 Publicando um shapefile - Camada ✔ Após salvar a camada, vamos novamente editá-la. ✔ Clique no link Layers localizado no grupo de opções Data, será apresenta uma lista de camadas, clique na camada ECU_roads. ✔ Na página Edit Layer (aba Publishing) nas opções de publicação temos: ➔ Se necessário configurar as opções WFS Settings. Onde é possível escolher o número máximo de recursos disponibilizados para cada requisição WFS (Per-Request Feature Limit) e arquivo de saída GML Maximum number of decimals (utilizável para grandes conjunto de dados) ➔ Clique na opção Enable localizada logo abaixo, para marcar como visível a camada para o serviço WFS ➔ NOTA: as informações de cache-control são enviadas para os clientes, para avisá-los quanto tempo a informação de cache será gerada pelo GeoServer
  • 25. 25 Publicando um shapefile - Camada ➔ O campo Default Style é responsável pela representação do estilo da camada WMS (Atenção: o estilo para esta camada deve ser do tipo polígono!). Para adicionar estilos adicionais (caso desejado) clique no botão → movendo o estilo da caixa Available Styles para Selected Styles ✔ Vamos continuar na página Edit Layer (aba Publishing) configurando as opções da Aba Publishing: ➔ Selecione a caixa Queryable em WMS Settings, para configurar se a requisição GetFeatureInfo WMS deve estar disponível
  • 26. 26 Publicando um shapefile - Camada ➔ Alterando o link gerado automaticamente pelo Geoserver na URL, é possível editar a requisição WMS GetMap (mudando por exemplo o estilo de representação, o bounding box, as dimensões do mapa, etc.) ✔ Após clicar no botão Save, acamada é publicada e pode ser pré- visualizada na página Layer Preview:
  • 27. 27 Publicando um shapefile - Exercício ✔ Execute o mesmo procedimento para publicar o shapefile ECU_adm1.shp no qual representa as províncias do Equador (camada vetorial de polígonos): ➔ Utilize o mesmo workspace OSGIS_course criado anteriormente ➔ Crie um novo store com nome Ecuador_provinces ➔ Nas configurações defina como Default Style: polygon e o estilo cite_lakes como Selected Styles
  • 28. 28 Publicando um shapefile ✔ Em uma requisição WMS GetMap pode-se visualizar uma ou mais camadas: os nomes das camadas devem estar separados por vírgula, como no exemplo: OSGIS_course:ECU_adm1,ECU_roads
  • 29. 29 Publicando um grupo de shapefiles ✔ Um conjunto de shapefiles podem ser publicados juntos em um único data store, desde estejam configurados em uma mesma pasta. ✔ Suponha que gostaríamos de publicar um grupo constituído pelos seguintes shapefiles: ➔ ECU_adm3.shp (Equador - paróquias) ➔ ECU_water_areas_dcw.shp (Equador – aréas com água) ➔ ECU_water_lines_dcw.shp (Equador - rios) ➔ ECU_rails.shp (Equador - ferrovias) ✔ Copie e cole os arquivos shapefiles em uma nova pasta (com o nome de Ecuador_group) dentro do diretório Data no GeoServer usr/local/lib/geoserver- 2.1.3/data_dir. ✔ Crie um novo store a partir de Store → Add New Store; na página New Data Source, selecione Directory of spatial files (shapefiles) como opção:
  • 30. 30 Publicando um grupo de shapefiles ✔ Especifique as configurações do grupo de vetores que deseja criar: ➔ Escolha o workspace OSGIS_course ➔ Insira um nome (Ecuador_group) no campo Name, uma breve descrição para o conjunto de dados, e marque a caixa Enabled ➔ Selecione o diretório onde estão os shapefiles no GeoServer, pasta Ecuador_group criada anteriormente.
  • 31. 31 Publicando um grupo de shapefiles ✔ Cada camada shapefile deve ser publicada separadamente, como visto anteriormente; após a publicação da primeira, selecione Add a new resource da página Layers para publicar as outras camadas, selecionando OSGIS_course:Ecuador_group e a opção Add layer from.
  • 32. 32 Publicando um grupo de shapefiles ✔ Demonstração do possível resultado:
  • 33. 33 Publicando um grupo de camadas ✔ Se quisermos publicar mais camadas (não importa sua natureza, raster ou vetor) juntos como um único conjunto de dados, é possivel definir um grupo de camadas. ✔ Considere a necessidade de publicar um grupo de camadas, com a seguinte configuração: ➔ ECU_adm1.shp (Equador - províncias) ➔ ECU_water_areas_dcw.shp (Equador – áreas com água) ➔ ECU_water_lines_dcw.shp (Equador - rios) ➔ ECU_rails.shp (Ecuador - ferrovias) ➔ ECU_roads.shp (Ecuador - rodovias)
  • 34. 34 Publicando um grupo de camadas ✔ Vamos agora publicar um grupo de camadas, abra a página Layer Groups e clique no botão Add new layer group para criar um novo grupo de camadas: ✔ Nesta mesma página também é possível excluir um grupo de camadas existentes, clicando no botão Remove selected layer group(s).
  • 35. 35 Publicando um grupo de camadas ✔ Vamos configurar o grupo de camadas: ➔ Insira o nome do grupo (Equador) ➔ Clique no botão Add Layer... e importe as camadas (uma por vez) ➔ Selecione a opção Generate Bounds para gerar automaticamente a projeção e o bounding box ➔ Ordenar as camadas na forma desejada (a primeira camada da lista é a primeira a ser desenhada) e altere os estilos, caso seja necessário ➔ Clique no botão Save
  • 36. 36 Publicando um grupo de camadas ✔ Exemplo de visualização do resultado:
  • 37. 37 Publicando uma camada do tipo PostGis ✔ Agora vamos publicar uma camada diretamente do banco de dados PostgreSQL com PostGis. Para isso, vamos utilizar o gvSIG para enviar o shapefile diretamente ao banco de dados. ➔ No Gestor de Projetos, crie uma nova vista com a projeção ESPG:4326. ➔ Adicione uma camada do tipo shapefile e selecione o arquivo ECU_adm2.shp. ➔ No canto esquerdo, clique no nome da camada ECU_adm2 ➔ Selecione o menu Camada → Exportar para → PostGIS ➔ Será apresentada uma caixa onde deve ser inserido o nome da tabela, digite ecu_adm2
  • 38. 38 Publicando uma camada do tipo PostGis ✔ Após digitar o nome da tabela, serão solicitados os seguintes dados para conexão: ➔ Insira um nome para conexão: localhost (conexão local) ➔ No campo computador, insira o endereço localhost (caso o banco de dados esteja em um servidor remoto, neste campo é informado o IP ou o domínio do servidor) ➔ Porta 5432, Usuário: user, Senha: user ➔ O banco de dados deve ser criado previamente (utilizando como template o template_postgis), no campo BD vamos inserir oficinacplp ➔ Clique no botão Aceitar para enviar o shapefile ao banco
  • 39. 39 Publicando uma camada do tipo PostGis ✔ Vamos agora verificar se a operação de enviar shapefile para o banco de dados foi concluída: ➔ Selecione o menu Geospatial → Databases → PgAdmin III ➔ Vamos verificar se a tabela ecu_adm2 foi criada. ➔ Também verificar se na tabela geometry_columns está presente o registro automático com a configuração da nova tabela. ➔ Após analisar estes dados, vamos voltar para o GeoServer.
  • 40. 40 Publicando uma camada do tipo PostGis ✔ Voltando ao Geoserver, vamos selecionar a opção Store → Add New Store ✔ Diferente dos demais exercícios, vamos selecionar a opção PostGIS – PostGIS Database
  • 41. 41 Publicando uma camada do tipo PostGis ✔ Vamos configurar o store com as seguintes informações: ➔ Insira o nome do Data Source ecu_adm2_db ➔ Uma descrição e clique na caixa Enabled. ➔ Nos parâmetros de configuração insira os mesmos dados utilizados no gvSIG ➔ Host: localhost, port: 5432, database: oficinacplp, schema: public, user: user, passwd: user.
  • 42. 42 Publicando uma camada do tipo PostGis ✔ Após criar o store, automaticamente somos direcionados para uma tela com as camadas disponíveis a partir da conexão com o banco. ✔ Selecione o link Publish da camada ecu_adm2
  • 43. 43 Publicando uma camada do tipo PostGis ✔ Vamos configurar a camada da mesma forma já executada anteriormente. ✔ Inserir um nome, título, resumo, projeção, e gerar automaticamente os bounding boxes. ✔ Somente altere o valor dos dois campos Min X Bounding Boxes para -91,82680599999, pois o GeoServer não conseguirá configurar corretamente no modo automático. ✔ Depois clique no botão Save.
  • 44. 44 Publicando uma camada do tipo PostGis ✔ Se tudo ocorrer corretamente, teremos a seguinte visualização da camada:
  • 45. 45 Publicando um camada do tipo raster - Store ✔ Vamos agora publicar um DTM (Digital Terrain Model) do Equador, derivado do SRTM (Shuttle Radar Topographic Mission) ✔ Faça download do arquivo a partir do link: https://dl.dropbox.com/u/30921037/SRTM.rar e mova a pasta SRTM dentro da pasta Ecuador (o caminho da nova pasta deve ser usr/local/lib/geoserver- 2.1.3/data_dir/data/Ecuador/SRTM). ✔ Todos os arquivos podem ser baixados a partir de http://srtm.csi.cgiar.org, que fornece dados de elevação mundiais de 90 metros de resolução.
  • 46. 46 Publicando um camada do tipo raster - Store ✔ Abra a página Stores e clique no botão Add new Store para criar um novo store para a imagem raster. ✔ Entre a lista de fontes de dados Raster Data Sources suportados pelo Geoserver, selecione GeoTIFF:
  • 47. 47 Publicando um camada raster - Camada ✔ Vamos configurar as seguintes opções: ➔ Escolha o workspace OSGIS_course ➔ Insira um nome (srtm_18_12) e uma breve descrição para a fonte de dados, selecione também a caixa Enabled ➔ Navegue no diretório Data do Geoserver e selecione a camada raster srtm_18_12.tif na pasta data/Ecuador/SRTM)
  • 48. 48 Publicando um camada raster - Camada ✔ Após a criação do store, vamos configurar a camada. Na página Edit Layer (aba Data) devem ser definidas as seguintes configurações: ➔ Insira o nome da camada no campo Name (lembre-se sem espaços e sem caracteres especiais) ➔ Uma breve descrição no campo Title ➔ Um resumo (opcional) no campo Abstract ➔ Caso necessário, inserir algumas palavras-chave relacionadas a camada, no campo Keywords (estas informações serão visíveis na requisição GetCapabilities WMS e WCS)
  • 49. 49 Publicando um camada raster - Camada ✔ Vamos continuar configurando nossa camada raster: ➔ No campo de projeção, Declared SRS, escreva EPSG:4326 ou pesquise (usando o código EPSG) com o comando Find... ➔ Selecione no campo SRS handling da camada como to Force declared ➔ Especifique os campos Native Bounding Box e Lat/Lon Bounding Box; use os comandos: Compute from data e Compute from native bounds para autocompletar os valores. ➔ Selecione a cor a ser utilizada como transparência (se necessário) e o campo tile size
  • 50. 50 Publicando um camada raster - Camada ✔ Vamos configurar agora a aba Publishing: ➔ Caso seja necessário, especificar o sistema de referência para as requisições e respostas WCS ➔ Nas opções Default Interpolation Method, escolha nearest neighbour na caixa Selected selecione bicubic e linear ➔ Selecione no campo Native Format como GeoTIFF, e especifique os outros como Selected Formats
  • 51. 51 Publicando um camada raster - Camada ✔ Vamos continuar a configurar nossa camada raster na aba Publishing, agora as configurações WMS: ➔ Selecione a caixa Queryable se a requisição WMS GetFeatureInfo devem estar disponíveis ➔ Escolha o estilo dem no campo Default Style (Atenção: deve ser um estilo para representar uma camada raster!).
  • 52. 52 Publicando camada raster - Exercício ✔ Agora vamos executar o mesmo procedimento para publicar outros arquivos SRTM GeoTIFF (srtm_18_13.tif, srtm_19_12.tif, srtm_19_13.tif): ➔ Utilize o mesmo workspace OSGIS_course criado anteriormente ➔ Crie um novo data store para cada camada raster ➔ Nas configurações WMS, escolha dem como Default Style para cada camada ➔ Criar um grupo de camadas incluindo todos os quatro camadas GeoTIFF publicadas ✔ Exemplo da pré-visualização:
  • 53. 53 Definindo Estilos para uma camada WMS - SLD ✔ O GeoServer utiliza o padrão OGC SLD (Styled Layer Descriptor) para aplicar estilos às feições cartográficas nas camadas WMS. ✔ O padrão (v. 1.1.0) pode ser efetuado download a partir do link http://opengeospatial.org/standards/sld#overview ➔ Um estilo é um arquivo XML capaz de representar toda a configuração do mapa em um único documento. ➔ O cookbook (soluções rápidas) pode ser obtido a partir do link docs.geoserver.org/stable/en/user/styling/sld-cookbook
  • 54. 54 Definindo Estilos para uma camada WMS - SLD ✔ Os estilos disponíveis no GeoServer estão listados na página Styles; a partir desta página um novo estilo pode ser adicionado clicando no botão Add a new style e estilos já existentes podem ser excluídos com a opção Removed selected style(s):
  • 55. 55 Definindo Estilos para uma camada WMS - SLD ✔ Clicando no nome do estilo, pode-se acessar a página de edição: ➔ Especifica ou altera o nome do estilo ➔ Escrita do código XML usando o padrão SLD ➔ Enviar um arquivo SLD já existente ➔ Validar o código antes de salvar
  • 56. 56 Definindo Estilos para uma camada WMS - SLD ✔ Vamos considerar por exemplo o estilo simple_roads (usado para camadas do tipo polígono): ➔ Linhas são representadas em cor vermelha, com a largura de 2 pixels Cor da borda da linha (#AA3333 = vermelho claro) Largura da linha (pixels)
  • 57. 57 Definindo Estilos para uma camada WMS - SLD ✔ Vamos criar um novo estilo, chamado pipe_roads, usado para melhor visualizar as rodovias. Para conseguir o efeito, vamos desenhar as linhas duas vezes: a primeira maior na cor cinza escuro, e a mais estreita na cor cinza claro. Isto cria um efeito como “tubo cheio” que geralmente é utilizado na representação de rodovias em mapas na web. ✔ Copie e cole o estilo simple_roads com o botão Copy... , depois: ➔ Mude o nome do estilo, o título e o resumo Nome do estilo Título e resumo do estilo
  • 58. 58 Definindo Estilos para uma camada WMS - SLD ➔ Defina duas tags <FeatureTypeStyle>, representando a borda (cinza escuro, 4 pixels de largura) e o enchimento (cinza claro, 2 pixels de largura): primeiro estilo representando a borda Segundo estilo representando o enchimento
  • 59. 59 Definindo Estilos para uma camada WMS - SLD ➔ Pressione o botão Validate para validar seu código: se não ocorrer erros, um aviso na cor verde será apresentado dizendo No validation errors. ➔ Marque este novo estilo como default style para a camada ECU_roads e veja o resultado na página Layer Preview:
  • 60. 60 Definindo Estilos para uma camada WMS - SLD ✔ Alguns SIG desktop permitem salvar estilos para camadas em um arquivo SLD, que posteriormente pode ser importado pelo Geoserver. ✔ O software Quantum GIS tem um plugin (chamado de Save As SLD) que abilita salvar simples estilos de camadas de acordo com o padrão SLD ou diretamente importá-los dentro do Geoserver: ➔ Abra o Quantum GIS e selecione no menu Plugins → Fetch Python Plugins ➔ Na aba Repositories e pressione o botão Add... ➔ Escreva QGIS Contributed Repository no campo Name e http://pyqgis.org/repo/contributed como URL, marque Enabled e presione OK:
  • 61. 61 Definindo Estilos para uma camada WMS - SLD ✔ Na aba Plugins, veja o plugin Save As SLD e pressione o botão Install plugin para instalar o plugin. ✔ Ligue somente a camada ECU_adm1 (Equador províncias) e edite a lista de estilos para setar a gradução da cor e o label (nome) das províncias:
  • 62. 62 Definindo Estilos para uma camada WMS - SLD ✔ Selecione Plugins → Save Style As SLD... → Save style As SLD...: ➔ Previsualização do documento SLD ➔ Opção para fazer upload do estilo direto no Geoserver ➔ Salve o estilo SLD
  • 63. 63 Definindo Estilos para uma camada WMS - SLD ✔ Abrindo a página Styles do Geoserver, você poderá realizar o upload do novo estilo: ✔ Marque o novo estilo como default style para a camada ECU_adm1 e veja o resultado no página Layer Preview: ✔ Atenção: Este tipo de geração de plugin não suporta definições complexas de estilos.
  • 64. 64 Referências ✔ GeoServer official website: http://geoserver.org ✔ GeoServer user documentation: http://docs.geoserver.org/stable/en/user ✔ GeoSolutions GeoServer Workshop at GeoCamp Summer School, Foligno (Italy), June 25-29 2012 (Live DVD) ✔ CGIAR-CSI SRTM: http://srtm.csi.cgiar.org ➔ http://creativecommons.org/licenses/by-nc-sa/3.0

Notas del editor

  1. GeoServer was started in 2001 by The Open Planning Project (TOPP), a non-profit technology incubator based in New York. TOPP was creating a suite of tools to enable open democracy and to help make government more transparent. The first of these was GeoServer. The GeoServer founders envisioned a Geospatial Web, analogous to the World Wide Web. With the World Wide Web, one can search for and download text. With the Geospatial Web, one can search for and download spatial data. Data providers would be able to publish their data straight to this web, and users could directly access it, as opposed to the now indirect and cumbersome methods of sharing data that exist today. Those involved with GeoServer founded the GeoTools project, an open source GIS Java toolkit. Through GeoTools, support for Shapefiles, Oracle databases, ArcSDE integration, and much more was added. GeoServer can now output data to many other spatial data viewers, such as Google Earth, a popular 3-D virtual globe. In addition, GeoServer is currently working directly with Google in order to allow GeoServer data to be searchable on Google Maps. Soon a search for spatial data will be as easy as a Google search for a web page. Thus GeoServer is continuing on its mission to make spatial data more accessible to all.
  2. GeoServer is the reference implementation of the OGC WFS (1.0 and 1.1) and WCS (1.0 and 1.1) standards, as well as a high performance certified compliant WMS (1.1.1 and 1.3). It also implements WPS 1.0, for which OGC does not provide a test suite providing proof of compliance. GeoServer provides a very intuitive user-interface, proving to be very simple with respect, for instance, to MapServer, where we have to write some configuration files. There is a full support for every kind of vector format (like MapInfo) and raster format (MrSID, ECW, JPEG2000, DTED, Erdas Image and so on, and more in general for any format supported by GDAL). On the opposite with respect to MapServer, GeoServer implements also the WFS-T protocol and also the SLD (Styled Layer Description), which is the reference OGC standard to define the layer style. Alla fine, aprire la pagina della documentazione e dire che vedremo solo i principi base.
  3. Login with the default username: admin and password: geoserver (they can be changed by editing the security/users.properties file in the GeoServer Data Directory, or in the section Security → Users, where you can add and remove users, modify the user credentials and change the user roles).
  4. The Server section provides access to GeoServer environment information. It is a combination of diagnostic and configuration tools, and can be particularly useful for debugging. The GeoServer Logs show the list of all the activities performed by the web server. The Server Status page shows a summary of server configuration parameters and run-time status. The Contact Information page sets the public contact information in the Capabilities document of the WMS server. The About GeoServer section provides links to the GeoServer documentation, homepage and bug tracker (mostrarle una per una). The Data section is the one we&apos;re going to work on, and provides tools for adding, editing and publishing data. The Services section is for advanced users needing to configure the request protocols used by GeoServer (WMS, WFS and WPS). The Settings section allows the configuration of some general properties of the server, GeoWebCache, some JAI (Java Advanced Imaging) and Coverage parameters. The Demos section finally provides some examples of requests using the supported OGC protocols (sceglierne una), a list of all the reference systems known to GeoServer and a WCS Request Builder. This page is accessible even before the login (mostrarne una: WMS_getMap.url, copiare e incollare l&apos;URL nel browser e vedere il risultato). On the right part of the screen we have instead the possibility to perform a GetCapabilities request on each of the implemented protocols (mostrarne una). TMS=Tile Map Service: it is a standard similar to WMS, but tiles are required (it is not an OGC standard); WTMS=Web Tile Map Service (it is an OGC standard).
  5. Opening the Server Status page, we access the server configuration and controlling parameters; in particular, in the first line we know what is the GeoServer Data Directory. The GeoServer data directory is the location in the file system where GeoServer stores its configuration information. The configuration defines things such as what data is served by GeoServer, where it is stored, and how services such as WFS and WMS interact with and serve the data. The data directory also contains a number of support files used by GeoServer for various purposes.
  6. Opening the Server Status page, we access a lot of the server configuration parameters; in particular, in the first line we know what is the GeoServer Data Directory. The GeoServer data directory is the location in the file system where GeoServer stores its configuration information. The configuration defines things such as what data is served by GeoServer, where it is stored, and how services such as WFS and WMS interact with and serve the data. The data directory also contains a number of support files used by GeoServer for various purposes.
  7. Opening the Server Status page, we access a lot of the server configuration parameters; in particular, in the first line we know what is the GeoServer Data Directory. The GeoServer data directory is the location in the file system where GeoServer stores its configuration information. The configuration defines things such as what data is served by GeoServer, where it is stored, and how services such as WFS and WMS interact with and serve the data. The data directory also contains a number of support files used by GeoServer for various purposes. Prendere ad esempio il GetCapabilities del WCS e mostrare com&apos;è organizzato: all&apos;inizio ci sono informazioni generali sul servizio, poi le informazioni sul contatto; poi, ci sono tutte le richieste che il servizio gestisce (GetCapabilities, DescribeCoverage, GetCoverage) e alla fine ci sono I dati, con le loro informazioni (descrizione, sistema di riferimento, bounding box). Per il WMS, è la stessa cosa, ma dopo l&apos;elenco delel funzionalità c&apos;è una lunga lista di tutti I sistemi di riferimento supportati, e poi I layer, con (per ciascuno) l&apos;elenco degli stili supportati.
  8. In the Data section, clicking on Layers Preview we access a page with the list of all the layers that have been published in GeoServer (as you can see, these are the layers available by default). This page helps to visually verify and explore the configuration of a particular layer. In the first column (“Type”), there is an icon indicating the layer datatype. The “Name” column tells the Workspace (we&apos;ll come in a minute to this concept) and Layer Name of a layer, while “Title” displays the brief description of the layer configured in the Edit Layer Data panel. Finally, “Common Formats” include OpenLayers, KML, and GML where applicable, while the “All Formats” include additional output formats for further use or data sharing. For instance, the user can click the OpenLayers command and access the OpenLayers viewer, which is integrated into GeoServer and gives a fast and immediate view of the layer. It is also possible to download the layer in a variety of formats, such as KML (suitable for Google Earth) or PDF. For vector data, it is also possible to click the GML option, that perform a WFS GetFeature request, or to download the data as a shapefile, and so on.
  9. If we click on OpenLayers, we have access to a a preview of the data built with an OpenLayers client which is integrated by default into GeoServer. First thing to note is the WMS GetMap request that you can read as the URL of the page. In this request, you can see that we are specifying the WMS version, the type of request and all the request parameters: the layer name, the style (in this case, the used style is the default one and so it is not specified), the geographical bounding box, the dimensions (width and height, in pixels) of the OpenLayers map and the layer reference system. The request can be also changed by modifying directly the page URL (for instance, modifying the bounding box or the dimension of the map). If we right-click on the web page and select View Page Source, we can access the code of the html page, in which there is also the OpenLayers javascript code that we can copy and paste in order to set up faster our client. Thanks to the GetFeatureInfo WMS request, if we select a feature on the map, we have access to the information retrieved from the attribute table. Finally, clicking on this button, we can adjust some configurations of the WMS GetMap request through an intuitive web interface.
  10. In order to see if the Geoserver WMS server and WFS server work, we can use a simple WMS or WFS viewer, such as Quantum GIS. As we saw during the QGIS practice, it is sufficient to specify a name for the connection and to insert the service URL, which is always http://localhost:8080/geoserver/ wms or /wfs. In this way, you can access the same layers as WMS and (obviously just for vector layers) WFS.
  11. All the data that we want to serve using GeoServer are stored into the GeoServer Data Directory (actually, it is possible to serve data that are stored elsewhere in the file system). As we saw few minutes ago, in our GeoServer this directory is this one. Let&apos;s try to look at it: we open the File System and we find it. As you can see, in the subfolder “data” all the data that are already published by GeoServer (for instance the ones we looked at using the OpenLayers viewer) are stored inside this folder. Suppose we want to publish as WMS (and, for vector layers, also WFS) the Ecuador layers we have used before in the Quantum GIS practice. First thing to do is to put all these data (that you can download again, or simply copy and paste from where you saved it before) in a new folder, called “Ecuador” and placed inside the “data” folder. In order to unzip the data, you can install the Archive RAR package as suggested.
  12. Let&apos;s see first of all how it is possible to publish a shapefile with GeoServer. The first thing to do is to create a workspace, that is a container grouping some layers together, a sort of a working group to be used then to put the data. To create a new workspace, click the “Add new workspace” button. As you can see, selecting one or more existing workspaces, from this page it is also possible to remove them.
  13. In the next window you have to select a name and a namespace URI to your workspace. A workspace name is a identifier describing your project. It must not exceed ten characters or contain spaces. A Namespace URI (Uniform Resource Identifier) is typically a URL associated with your project, perhaps with an added trailing identifier indicating the workspace.
  14. Once you have created the workspace, you have to create also a store, which is the actual geographic entity representing the shapefile. Open the “Stores” page and click on the “Add new store” button. From the same page it is also possible to select and delete existing data stores.
  15. In the next page, you have to specify some parameters related to the store creation: first of all select the workspace “OSGIS_course” you created before; then enter a name for the data source, which can&apos;t have spaces (for example “Ecuador_roads”) and a brief description (which can include spaces); enable the store by checking the corresponding box, and finally browse the GeoServer Data Directory to select the shapefile roads.shp. Finally, press “Save”.
  16. Once this has been done, you can find the store into the “Stores” page.
  17. Finally, the new layer must be added by opening the “Layers” page and clicking the “Add a new resource” button.
  18. In the next page, select from the drop-down menu the names of the workspace and store you have just created, and then, in the new bottom menu, click “Publish” in order to publish the layer.
  19. Now you have to set all the publishing information for the current layer, selecting the “Data” tab: first of all, write the layer name and then, if you want, you can also insert a title (that is a brief description of the layer content) and an abstract. Then, you can also insert some keywords related to the layer: these keywords will be inserted in the WMS and WFS GetCapabilities XML documents.
  20. “ Metadata Link” allows linking to external documents that describe the data layer. Currently only two standard format types are valid: TC211 and FGDC. TC211 refers to the metadata structure established by the ISO Technical Committee for Geographic Information/Geomatics (ISO/TC 211) while FGDC refers to those set out by the Federal Geographic Data Committee (FGDC) of the United States. It is also mandatory to define a reference system for each datum: when the shapefile has an associated .prj file, but it is not complete, GeoServer says that the “Native SRS of the layer is “UNKNOWN”. Define thus a “Declared SRS” writing “EPSG:4326” (where 4326 is the EPSG code corresponding to WGS84); in the drop-down menu, in this case we select “Force declared” in order to assign the WGS84 reference system to the published layer. If the native SRS does not match the declared one, we can select the option “Reproject native to declared”: remember however that this is an other operation done by the server, that can be easily avoided by working on the data before publishing them. Finnaly, selecting “Keep native”, the native reference system will be used. Then set the layer bounding box, both in the native reference system and in the lat/lon one (in these case they coincide): clicking on the commands “Compute from data” and “Compute from native bounds”, the fields are autopopulated.
  21. In the bottom part of this page, you can also have a look at the layer attribute table but you can&apos;t modify it. Finally, click “Save” to save your layer.
  22. If you select the “Publishing” tab, you can configure many publishing settings. Among the WFS settings, in order to keep the server from being overloaded with large data requests, you might want to set a maximum “Per Request Feature Limit” (“0” value means “no limit”). To keep your GML output file size down, you can round off the coordinates using “Maximum number of decimals”. Round to remove unnecessary precision, but be careful not to degrade accuracy. If you un-check “Enabled” the layer will not be visible in WMS or WFS services. A layer is advertised by default. A non-advertised layer will be available in all data access requests (for example, WMS GetMap, WMS GetFeature) but won’t appear in any capabilities document or in the layer preview. If you turn on “Response Cache Headers”, you can ensure that cache-control information is sent to clients, to advise them how long to cache information generated by GeoServer. For data which isn’t changing much, setting a long cache time can be a good idea.
  23. Among the WMS settings, you can define if the layer, when published as WMS, is queryable or not (if the layer is queryable, selecting a feature we can see the content of the attribute table for that feature); then, we can define the styles for representing the layer as WMS: the defaul one and all the others. In this way, we&apos;ll have the possibility to perform multiple WMS requests that differ from one another by the style of the data. Being the layer a vector polyline layer, we have to specify styles that are suitable for polyline layers. We can also specify a “Default WMS path”: the default one is “geoserver/wms”, but it can be changed to “geoserver/xxx”.
  24. Finally, in the usual “Layer Preview” page, it is possible to have a look to the layer we have just published. The WMS GetMap request can be changed in order to modify, for instance, the style (selecting the other style we assigned before to the layer), the spatial bounding box, the width and height of the map, etc.
  25. Finally, in the usual “Layer Preview” page, it is possible to have a look to the layer we have just published. The WMS GetMap request can be changed in order to modify, for instance, the style (selecting the other style we assigned before to the layer), the spatial bounding box, the width and height of the map, etc.
  26. Finally, in the usual “Layer Preview” page, it is possible to have a look to the layer we have just published. The WMS GetMap request can be changed in order to modify, for instance, the style (selecting the other style we assigned before to the layer), the spatial bounding box, the width and height of the map, etc.
  27. If we have more than one shapefile that are related to one another , another way is to serve them directly using a single data store: in GeoServer, this is possible creating a data store represented by a group of shapefiles. The only condition is that all these shapefiles are stored in the same folder. Suppose for example that we want to publish the shapefiles of Ecuador parishes, water bodies and rivers and railways. In this case, it is useful to create just one store, instead of a different store for each shapefile (as we did before). The first operation is to create a new folder (always in the Goserver Data Directory) and place only these shapefiles in this folder. Then, as workspace, we used the one we created before; as for the store, we select “Store”, “Add New Store” and then we choose “Directory of spatial files (shapefiles)” as data source type.
  28. In the next window, similarly to what we did in the case of a single shapefile, we have first of all to select a workspace (we use the usual one), then we have to define the name of the data source (which cannot contain spaces) and, if we want, also a brief description. We have to enable the data store, and finally to browse the GeoServer Data Directory and selecting the folder “Ecuador_group” we have just created. At the end, press the “Save” button.
  29. At this point, the data store has been created once and can be used for all these shapefiles, that now have to be published one by one, in the usual way we saw before. So, we start from the first and we publish it; then, in order to “find” the second, it is sufficient to select “Add a new resource” from the “Layers” page, select our workspace and data store and go on, till the last.
  30. If we perform again a WMS GetMap request on all these layers together, we obtain a result like this one.
  31. The manual editing of the WMS GetMap request is not the best thing to do. Another clever operation we can do with GeoServer is to take some layers (both raster and vector) that we have already published, and use them to publish a layer group: in this way, all the layers exist independently from one another, but we have a sort of an “other” layer, which is made up of the previous ones. A layer group can consist of layers with dissimilar bounds and projections. GeoServer will automatically reproject all layers to the projection of the layer group. Suppose for example that we want to serve in a single layer the 5 shapefiles listed here, that we have already published one by one.
  32. First step is to open the “Layer Groups” page and to select the “Add new layer group button”.
  33. In the next page, you have to specify the details of the layer group you&apos;re going to create. First of all, you have to give the layer group a name (for instance, “Ecuador”); then, you have to upload each layer you want to include in the group (one at a time) and finally to click “Generate Bounds” so that the spatial bounding box is automatically computed from the layers you uploaded. A very important operation is to establish the order in which the layers have to appear in the group: using the up and down arrows, we can move each layer in its desired position, knowing that the layers are finally drawn according to their order of appearance in the list (the first of the list is the first that appears, so it should be the background one). We can also modify directly the style of each layer (this is valid only for the layer group, i.e. the layer will maintain its previous style when requested as WMS).
  34. In the next page, you have to specify the details of the layer group you&apos;re going to create. First of all, you have to give the layer group a name (for instance, “Ecuador”); then, you have to upload each layer you want to include in the group (one at a time) and finally to click “Generate Bounds” so that the spatial bounding box is automatically computed from the layers you uploaded. At the end, press “Save”.
  35. First step is to open the “Layer Groups” page and to select the “Add new layer group button”.
  36. First step is to open the “Layer Groups” page and to select the “Add new layer group button”.
  37. First step is to open the “Layer Groups” page and to select the “Add new layer group button”.
  38. First step is to open the “Layer Groups” page and to select the “Add new layer group button”.
  39. First step is to open the “Layer Groups” page and to select the “Add new layer group button”.
  40. First step is to open the “Layer Groups” page and to select the “Add new layer group button”.
  41. First step is to open the “Layer Groups” page and to select the “Add new layer group button”.
  42. First step is to open the “Layer Groups” page and to select the “Add new layer group button”.
  43. Ok, now let&apos;s move to raster layers, which can be published by GeoServer as WMS or WCS. As sample raster layers, we use this time the Ecuador DTM derived from SRTM, which has a ground resolution of 90 meters and can be downloaded for free, and for any region of the world, from the SRTM website, both in a GeoTIFF and ArcInfo ASCII formats (you can see here the screenshot of the website where you can select the regions for which you want the DTM). In order to speed up the download process, in this case you can just click the dropbox link and download directly the data we need, that represent Ecuador DTM only for Galapagos island. Unzip the folder and place it in the “Ecuador” folder you created before.
  44. First thing to do is to create a data store for our data, supposing of course to use the same “OSGIS_course” workspace we created before. As usually, go to the “Stores” page and click the “Add new Store” button to access the “New data source” page: here, select “GeoTIFF” among the “Raster Data Sources” supported by GeoServer.
  45. The next panel is similar to the one related to vector data: here, we have to choose a name for the data store (it must not contain spaces: in this case, just to distinguish between the different SRTM data we are going to publish, we can keep the same name); then, we enter also a brief description of the data, we enable the layer and we browse the GeoServer Data Directory to find the GeoTIFF file we want.
  46. The “Edit Layer” page is similar to the one we have seen before for vector layer: first of all we specify the name of the layer, a brief description and an abstract (optional); then, we can add some keywords that will be included into the WMS and WCS GetCapabilities request.
  47. “ Metadata Link” allows linking to external documents that describe the data layer. Currently only two standard format types are valid: TC211 and FGDC. TC211 refers to the metadata structure established by the ISO Technical Committee for Geographic Information/Geomatics (ISO/TC 211) while FGDC refers to those set out by the Federal Geographic Data Committee (FGDC) of the United States. It is also mandatory to define a reference system for each datum: when the shapefile has an associated .prj file, but it is not complete, GeoServer says that the “Native SRS of the layer is “UNKNOWN”. Define thus a “Declared SRS” writing “EPSG:4326” (where 4326 is the EPSG code corresponding to WGS84); in the drop-down menu, in this case we select “Force declared” in order to assign the WGS84 reference system to the published layer. If the native SRS does not match the declared one, we can select the option “Reproject native to declared”: remember however that this is an other operation done by the server, that can be easily avoided by working on the data before publishing them. Finnaly, selecting “Keep native”, the native reference system will be used. Then set the layer bounding box, both in the native reference system and in the lat/lon one (in these case they coincide): clicking on the commands “Compute from data” and “Compute from native bounds”, the fields are autopopulated. As last, you can decide a color that you prefer to see as transparent (in this case we don&apos;t need it, but in other cases this can be very useful); then, we have also to specify the dimension of tiles (in pixels).
  48. In the ”Publishing” tab, you have to set some parameters related to WCS service: first of all the reference system for WCS request and response (leave the current one); then you can select the interpolation algorithm you want to be used for render the raster layer. My suggestion is to use the “nearest neighbour” one, because it is the faster, while “bilinear” and “bicubic” (for those of you what know them” are more complex algorithms and therefore they require more time to be performed each time. Finally we can set the data format, which is GeoTIFF: on the right side we can select other available formats (they are perhaps already selected).
  49. Among the WMS settings, you can define if the layer, when published as WMS, is queryable or not (if the layer is queryable, selecting a feature we can see the content of the attribute table for that feature); then, we can define the styles for representing the layer as WMS: the default one and all the others. In this case, select just one style (the “dem” one) which is a colour map specifically designed for DTMs. We can also specify a “Default WMS path”: the default one is “geoserver/wms”, but it can be changed to “geoserver/xxx”
  50. Now, the exercise you should be able to do by yourself is to publish in the same way the other 3 layers composing the Ecuador DTM for Galapagos islands, that you find in the same “SRTM” folder you downloaded from dropbox. Since it is not possible to create one single store for all these data (as we did for vector layers), you have to create a different store for each GeoTIFF file. At the end, create a new layer group (in the same way we did before for vector layers) and preview it. You should obtain something like the screenshot I put here.
  51. Geospatial data has no intrinsic visual component. In order to see data, it must be styled. Styling specifies color, thickness, and other visible attributes used to render data on a map. In GeoServer, styling is accomplished using a markup language called Styled Layer Descriptor, or SLD for short. SLD is an OGC standard (current version is 1.0.0); it is an XML-based markup language and is very powerful, although somewhat complex. Vector data that GeoServer can serve consists of three classes of shapes: points, lines, and polygons. Lines (one dimensional shapes) are the simplest, as they have only the edge to style (also known as “stroke”). Polygons, two dimensional shapes, have an edge and an inside (also known as a “fill”), both of which can be styled differently. Points, even though they lack dimension, have both an edge and a fill that can be styled. For fills, color can be specified; for strokes, color and thickness can be specified. GeoServer also serves raster data. This can be styled with a wide variety of control over color palette, opacity, contrast and other parameters. In order to understand how to deal with this standard, you can check the online cookbook (which is part of GeoServer official documentation) at this link: here you have step-by-step examples on how to create SLD code for each kind of layer. In the slide you have an example of SLD document: for those of you who know what an XML document is, you can see that here we have a lot of tags, which are all included into the “StyledLayerDescriptor” main tag.
  52. In the “Styles” section, users can create, delete or edit styles. As you can see, some styles are available by default in GeoServer.
  53. If we click on one style, we access the “Style Editor” page: in this page, we can first of all change the style name; then, we have a dedicated box for writing our SLD style in the XML format (there&apos;s also a useful button to copy a piece of code from other existing styles: for example, if I&apos;m styling a polyline style, I don&apos;t want to start from zero, but I can upload an existing polyline style and work on it). Another very useful possibility is to upload an existing SLD file (for example, as we are going to see later, if we produced an SLD XML document with another software): this file can be first validated (to be sure it is syntactically correct) and then submitted.
  54. For example, let&apos;s have a look to the SLD document of the “simple_road” style, that we used before to represent Ecuador roads: as you can see, this is really a simple style, because the only two parameters defined are the color (expressed in the hexadecimal system) and the width of the line. If you look at the code, you see that there&apos;s one “LineSymbolizer” tag, that includes a “Stroke” tag defining the properties. Changing the color and/or width, you can see that the style changes (fare una prova, con un layer).
  55. Now, suppose we want to create a more complex style to represent roads: in particular, we want to create a “filled pipe” effect, by drawing two lines, one wider that the other such that the outer one represents a border and the inner one the filling. Using the command “Copy...”, we copy the SLD code of the previous “simple_roads” style. Then, we start modifying it: first of all, we change the style name, title and abstract.
  56. Then, you have just to replicate the &lt;FeatureTypeStyle&gt; tag, so that we draw two lines, superimposed one to the other: the first, with a width equal to 4 pixels, to represent the border, and the second, with a width of just 2 pixels, to be drawn on top of the previous and representing the filling.
  57. When you finish writing the XML code, you can use the “Validate” button at the bottom of the page to validate the code: if is correct, a green bar announcing “No validation errors” appears at the top of the page. At this point, you can set this new “pipe_roads” style as the default one for the “ECU_roads” layer (selecting the layer and modifying its publishing properties) and look at the preview.
  58. Since writing from scratch an entire SLD file can be a long and complex operation, many desktop GIS software have recently implemented specific functionalities to automatically save the style of a layer in the SLD standard. For instance, Quantum GIS can do this by opening the “Properties” menu of a layer and selecting “Save Style...”; then, in the next window, select “SLD File” and choose a name for the file to be saved with a “.sld” extension. Alternatively, QGIS has also a plugin which performs this operation. This plugin has first to be installed: open Quantum GIS and select “Fetch Python Plugins” from the “Plugins” menu; on the “Repositories” tab, add a new repository using the “Add...” button, and then write the name of the repository (“QGIS Contributed Repository” is the true name of this repository, but you can write the name you want) and its URL: copy and paste this URL, enable the repository and then press “OK”.
  59. At this point, you can look for the plugin in the “Plugins” tab and install it. Then, turn on only the Ecuador province layer and customize its style choosing an outline color, a filling color and the labels providing the names of provinces.
  60. Finally go to “Plugins”, “Save Style As SLD...”, “Save Style As SLD...”: you will get this window, in which, in the top part, you can see the SLD document related to the style of your layer. In the bottom part, you can choose one of two possible options: the best one is to upload your style directly into GeoServer. In this case you have to specify the path to your GeoServer REST (which is a specific module), specifying the correct port; your GeoServer username and password and finally the style name. The other possibility is to save the SLD document as an XML file, and uploading it to GeoServer in a second time.
  61. Uploading the style directly to GeoServer, you can open the “Styles” page and in fact you will find here the style you imported. Then, go to the “Layers” page and set this style as the default one for the “Ecuador provinces” layer. As you can see from the layer preview, the graduated color symbolization has been preserved, but no label is visible. This is of course a problem of the plugin, which is not able to correctly “translate” in the SLD standard some complex styling such as labels, dashed or dotted outline, and so on. Anyway, you can use the SLD document uploaded from QGIS as background and manually edit it adding labels. Alternatively, other software that allows to save layer styling in SLD format are u-Dig, Atlasstyler and so on.