Inventário de visualizadores
Lista cada WebLayout (AJAX) e ApplicationDefinition (Fusion) do Library:// pelo mapagent, com o mapa ligado, o modelo e os comandos InvokeURL e InvokeScript que dependem de código da casa.
Octo para aplicações web MapGuide
O MapGuide Open Source 4.0 saiu em 12/10/2025 com PHP 8, pacotes NuGet e um jar único para Java, e ainda leva os visualizadores AJAX e Fusion. O Octo inventaria os layouts publicados, põe o mapguide-react-layout ao lado dos antigos, monta clientes OpenLayers no mapagent e confere a segurança da camada web pelo conteúdo das respostas. Publicação, perfis de acesso e desligamento do visualizador antigo ficam com o administrador e o responsável técnico.
Seis entregas possíveis, tiradas do levantamento. Todas começam em homologação, com a versão do servidor e de cada visualizador registrada, e todas vão para revisão de quem responde pelo servidor.
Lista cada WebLayout (AJAX) e ApplicationDefinition (Fusion) do Library:// pelo mapagent, com o mapa ligado, o modelo e os comandos InvokeURL e InvokeScript que dependem de código da casa.
Instala o mapguide-react-layout de versão fixa numa pasta própria, que lê os mesmos WebLayout e ApplicationDefinition, e testa cada layout pelo conteúdo da resposta.
Entrega: novo visualizador em homologação + relatórioLeva tarefas da Web API escritas para PHP 5.x ao PHP 8 do 4.0, código Java ao MapGuideJavaApi.jar único e .NET aos pacotes NuGet OSGeo.MapGuide.*.
Mapa dentro do portal da casa: CREATERUNTIMEMAP, camada dinâmica com ImageMapGuide, fundo em tile set XYZ por GETTILEIMAGE e seleção por QUERYMAPFEATURES.
Lê o webconfig.ini (autoria, listas AnonymousDeny*, senhas de fábrica de WMS e WFS, tetos de consulta) e testa como Anonymous se o XML das fontes de dados volta.
A aplicação da casa autentica o usuário e cria a sessão do MapGuide do lado do servidor; o navegador recebe só o SESSION, e cada perfil vê só as suas camadas.
O mesmo ciclo do Octo, aplicado à camada web do MapGuide. Cada braço tem um papel estreito; quem decide o que fica público, quem vê cada camada e quando o antigo sai do ar são pessoas.
Versão do servidor, do PHP, do Java e dos pacotes NuGet, visualizadores instalados e cada WebLayout e ApplicationDefinition publicado.
Mapa, camadas e fontes de cada layout, e quais têm dado pessoal (cadastro, saúde, assistência).
webconfig.ini, Anonymous, usuários de fábrica, HTTPS e tarefas de painel. Dado pessoal fica no ambiente do cliente e é avaliado (LGPD) antes de ir a qualquer serviço externo.
AJAX, Fusion, mapguide-react-layout ou cliente próprio; tiles XYZ ou imagem dinâmica; sessão criada pelo servidor da casa.
Scripts de inventário e teste, porte de tarefas para PHP 8, módulo OpenLayers, com a fonte de cada sintaxe anotada no arquivo.
Página carregada, RuntimeMap devolvido, seleção certa, teste com o perfil de menor privilégio. Status 200 não é conferência.
Só com o seu ok, deixa o novo visualizador numa pasta nova. A troca do link público é feita por uma pessoa.
Versão de cada visualizador, SHA-256 do pacote, tarefas portadas, alertas aceitos e quem aceitou.
O Octo trabalha em homologação e como apoio. Não decide o que é público, não define perfis de acesso, não muda servidor de produção e não desliga visualizador sem aceite.
O critério que o Octo usa para escolher, com a documentação da versão instalada.
| Tarefa | Caminho | Observação |
|---|---|---|
| Listar layouts publicados | ENUMERATERESOURCES com TYPE=WebLayout e ApplicationDefinition | Só leitura |
| Ler a configuração de um visualizador | GETRESOURCECONTENT | XML do recurso |
| Visualizador moderno | viewer.zip do mapguide-react-layout, ?resource= | Lê WebLayout e ApplicationDefinition; MIT |
| Mapa de sessão para cliente próprio | CREATERUNTIMEMAP com REQUESTEDFEATURES | Máscara: 1 camadas, 2 ícones, 4 fontes |
| Camada dinâmica | ol/source/ImageMapGuide | useOverlay, BEHAVIOR, ratio |
| Fundo rápido | GETTILEIMAGE com tile set XYZ em Leaflet ou OpenLayers | {x} vai em TILEROW, de propósito |
| Selecionar e ler atributos | QUERYMAPFEATURES com WKT | PERSIST=1 grava no mapa de sessão |
| Tarefa de painel | Web API em PHP 8, Java ou .NET | Recebe SESSION e MAPNAME |
| Aplicação .NET | NuGet OSGeo.MapGuide.* 4.0 | Linux experimental no RC1 |
| Conferir segurança | webconfig.ini + GETRESOURCECONTENT como Anonymous | Conferência pelo conteúdo |
Três degraus. Cada um só faz sentido depois que o anterior mostrou resultado na sua equipe.
Proposta, não promessa
O Octo mostra o que está publicado e o que a camada web deixa aberto, sem mexer em nada.
webconfig.inimapguide-react-layout ao lado dos antigos, tarefas portadas e teste de fumaça por layout.
Cliente OpenLayers próprio sobre o mapagent, com sessão criada pelo servidor da casa e camadas por perfil.
Cada ponto abaixo tem fonte publicada pela OSGeo (página do projeto, listas oficiais, área de downloads), pelo repositório oficial ou pela Autodesk. Os exemplos são roteiros, não execuções. As fontes estão na seção seguinte.
4
pontos com fonte publicada, cada um com a referência indicada ao lado.
MapGuideJavaApi.jar.Fonte: anúncio do 4.0 Preview 4 (nov/2022)webconfig.ini do ramo 4.0: DisableAuthoring = 0, listas AnonymousDeny* vazias, WmsPassword = wms, WfsPassword = wfs e tetos globais de consulta vazios.Fonte: SVN do MapGuide, ramo 4.0O Octo prepara tudo, mas não assina. O documento que vale continua com quem responde por ele.
Levanta, calcula, organiza e gera os documentos: scripts, inventários, relatórios e mapas.
Entrega: material pronto para conferirO profissional habilitado confere o que o Octo entregou antes de assinar. Se algo não fecha, volta para o Octo com a correção.
Etapa: conferência por quem assinaO Octo não assina. Projeto, laudo, ART/RRT, prestação de contas e qualquer documento oficial continuam assinados pelo profissional habilitado da empresa ou do órgão: aqui, o responsável técnico pelo mapa ou pelo sistema.
Assinatura: responsável técnico pelo mapa ou sistemaPáginas da OSGeo, lista de discussão, SVN e blog do mantenedor do MapGuide, repositório do mapguide-react-layout e registros npm e NuGet, consultados em 31/10/2026.
O diagnóstico começa por um inventário dos visualizadores publicados e uma conferência da camada web, sem mexer em nada. Você recebe a lista do que trocar, dos alertas de segurança e das perguntas que só a sua equipe responde, e decide com ela na mão.