Debugging und Test Informationen

Hier findet sich eine Auflistung von kleinen Tipps und Helferlein für die Entwicklungsphase und den Aufbau von Testszenarios.

Developer Tools (optional)

In den Einstellungen des Administrators können die Developer Tools aufgelistet sein. Diese stammen aus dem gleichnamigen Paket und stellen u.a. die Theme Darstellung bereit.

Developer Tools: Darstellung Theme am Beispiel GridSystem

Developer Tools: Darstellung Theme am Beispiel GridSystem

Export/Import von über die Kommandozeile

Datensätze im Metador-Objekt

Resave Metadata

bin/console metador:resave:metadata

Dump Metadata: Eignet sich für den Export von Metadaten im Metador-Objekt-Format. Die Dump-Datei kann man im Texteditor editieren. Damit können die Metadaten als Datei verändert (z.B. UUID, Title, etc.) und reimportiert bzw. neu importiert werden.

# Dump all metadata from source default
$ bin/console metador:dump:metadata --source=default /tmp/metadata.dump

# Dump one document
$ bin/console metador:dump:metadata /tmp/metadata.dump 9c079ed3-7e4a-4d4b-94fe-e42701140871 --pretty

# Dump with pretty mode on
$ bin/console metador:dump:metadata --source=default /tmp/metadata.dump --pretty

Parameter:

  • file: Datei, die geschrieben werden soll
  • uuid: UUID des Metadatensatzes
  • pretty: Pretty print metadata
  • source: Metadata source

Import Metadata: Import von Metadaten, die im Metador-Objekt Format vorliegen.

$ bin/console metador:import:metadata /tmp/metadata.dump

Adressen

Eignet sich für den Export von Adressen im Metador-Objekt-Format. Die Dump-Datei kann man im Texteditor editieren. Damit können die Adressen verändert und reimportiert bzw. neu importiert werden.

Dump Adressen:

## Dump all addresses
bin/console metador:dump:address /tmp/address.dump

## Dump with pretty mode on
bin/console metador:dump:address /tmp/address.dump --pretty

Import Adressen:

bin/console metador:import:address /tmp/address.dump

CSW-/Web-Service-Requests

Dump

bin/console metador:dump:request /tmp/request.dump

Import

bin/console metador:import:request /tmp/request.dump

Erstellen und Testen des CSW

Über Administration -> Rest Client kann die CSW und Webservice Schnittstelle getestet werden.

Rest-Client

Rest-Client

Beispiel GetCapabilities:

Beispiel: GetCapabilities

Beispiel: GetCapabilities

Im Test muss ein XPath eingetragen werden, nachdem validiert werden soll. Per Default: /.*/ für keine besondere Validierung.

Beispiel GetRecords:

Beispiel: GetRecords

Beispiel: GetRecords

Die Requests können über den Befehl metador:dump:request und metador:import:request exportiert bzw. importiert werden.

Installation

Erstmalige Installation.

Systemvoraussetzungen:

  • php-gd
  • php-intl
  • php-json (abhängig vom System)
  • php-mbstring
  • php-memcached (mit d am Ende, es gibt auch eine memcache Bibliothek)
  • php-solr (beim Einsatz von Solr)
  • php-xml (abhängig vom System)

Sourcecode:

$ git clone https://repo.wheregroup.com/lvermgeo-rlp/mis.git
$ cd src/Plugins
$ git clone git@repo.wheregroup.com:lvermgeo-rlp/mis.git LVermGeo

Assets anlegen

$ bin/console assets:install --symlink --relative

  Trying to install assets as relative symbolic links.

  --- -------------------------- ------------------
       Bundle                     Method / Error
  --- -------------------------- ------------------
   ✔   FrameworkBundle            relative symlink
   ✔   MetadorCoreBundle          relative symlink
   ✔   MetadorThemeBundle         relative symlink
   ✔   MetadorPluginBundle        relative symlink
   ✔   SensioDistributionBundle   relative symlink
  --- -------------------------- ------------------

  [OK] All assets were successfully installed.

app/config/parameters.yml: Für den Anfang. Für eine komplette parameters.yml, siehe das eigene Kapitel.

# This file is auto-generated during the composer install
parameters:
    database_driver: pdo_pgsql
    database_host: localhost
    database_port: 5432
    database_name: metador
    database_user: johndoe
    database_password: secret
    database_path: null
    secret: ThisTokenIsNotSoSecretChangeIt
    locale: de

Datenbank anlegen, Benutzer anlegen:

$ bin/console doctrine:database:create
  Created database "metador_lvermgeo_mis" for connection named default

$ bin/console doctrine:schema:create
  ATTENTION: This operation should not be executed in a production environment.

  Creating database schema...
  Database schema created successfully!

$ bin/console metador:init:database

  Gruppe ROLE_SYSTEM_SUPERUSER erstellt
  Gruppe ROLE_SYSTEM_GEO_OFFICE erstellt
  Benutzer root mit Kennwort MNwirhyuqK erstellt
  Benutzer root zur Gruppe ROLE_SYSTEM_SUPERUSER hinzugefügt
  User     : root
  Password : MNwirhyuqK

Apache 2.4 Konfiguration

Alias /metador /srv/metador/web
<Directory "/srv/metador/web/">
           DirectoryIndex app.php
           RewriteBase /lvermgeo_mis
           Options +Indexes +FollowSymLinks +MultiViews
           AllowOverride All
           Require all granted
</Directory>

Parameters.yml

parameters:
    database_driver: pdo_pgsql
    database_host: localhost
    database_port: 5432
    database_name: metador
    database_user: johndoe
    database_password: secret
    database_path: null
    secret: abcdefghijklmnopqrstuvwxyz
    locale: de

    map_shape_epsg:
        "ETRS89_UTM_zone_32N": "EPSG:25832"
        "ETRS_1989_UTM_Zone_32N": "EPSG:25832"
        "noname": "EPSG:4326"

    csw_url: http://localhost/metador_fossgis2017/csw/service?request=GetRecordById&service=CSW&version=2.0.2&elementSetName=full&id=

    api_access_ips: {  }
    csw_access_ips: {  }

    mailer_transport: smtp
    mailer_host: 127.0.0.1
    mailer_user: null
    mailer_password: null

    cache_enabled: true

    solr_host: localhost
    solr_port: 8983
    solr_path: solr/metadaten
  • database_…: Datenbank-Treiber und Zugriff
  • secret: Eindeutiger 32-Zeichen langer String aus Symfony 🔗
  • locale: Anzeigesprache der Anwendung
  • map_shape_epsg: Einstellungen für die unterstützen Koordinatensysteme beim Hochladen von Geometrien in die Karte. - „ETRS89_UTM_zone_32N“: „EPSG:25832“: Möglicher Name für EPSG:25832 - „ETRS_1989_UTM_Zone_32N“: „EPSG:25832“: Möglicher Name für EPSG:25832 - „GCS_WGS_1984“: „EPSG:4326“: Möglicher Name für EPSG:25832
  • csw_url: Parameter für den „operatesOn“ Wert, der den externen CSW angibt, wo der Datensatz zu finden ist (muss nicht der Metador CSW sein).
  • mailer_transport: smtp. Transportprotokoll für den Mailversand.
  • mailer_host: Host, auf dem der Mail-Server läuft
  • mailer_user: Benutzername für den Kontakt zum Mailserver
  • mailer_password: Passwort des Benutzers für den Kontakt zum Mailserevr
  • cache_enabled: Internes Caching erlauben (true).
  • solr_host: Host, auf dem der Solr-Server läuft
  • solr_post: Port des Solr-Servers
  • solr_path: Core Name des Solr-Servers. Default: solr/metadaten

Verzeichnisse für den Import und Export

Unterhalb des Verzeichnisses metador2/var werden zwei Ordner import und export angelegt. In diesen werden weitere Ordner für die jeweilige Instanz erzeugt.

.
├── var/
│   ├── ...
│   ├── export/
│   │   ├── archiv/
│   │   └── intern/
│   ├── import/
│   │   └── archiv/
│   ├── ...

Mehr dazu im Kapitel Import/Export.

Anlegen der Quarantäne Instanz

Nach der Installation muss die Quarantäne-Instanz angelegt werden, wie im Kapitel Einrichtung Quarantäne Instanz beschrieben.