GeoNetwork is a modular application, managed using the spring framework, divided into clear application tiers.
GeoNetwork uses a wide range of technologies:
- Angular web framwork providing model-view-controller architecture with data model binding
- Apache Lucene text index to facilitate searching
- Bootstrap front-end open source toolkit providing response page layout
- Elasticsearch full-text search
- GeoTools Java GIS toolkit used to provide a spatial index
- OpenLayers web mapping framework
- Saxon XSLT engine used extensively to process XML documents
- Spring framework Java web application framework used to "wire" components together
GeoNetwork configuration is managed via:
-
Configuration is managed via Hibernate Object/Relational Mapping with H2 Database Engine default for local testing, PostgreSQL recommended for production. Additional dialects are available for environments restricted to Oracle or SQLServer.
-
Data Directory for the management of thumbnails, attachments and other application files
GeoNetwork is a modular web application, managed using the spring framework, divided into clear application tiers.
The application is built on top of:
- Elasticsearch: full-text search
- Database: record persistance
- Data directory: attachments and application files
Geonetwork Reference:
Reference:
GeoNetwork is a Java "web application", following Java Enterprise Edition standard (establishing Servlet and related interfaces, and the web-application-archive bundle).
Note: Java Enterprise Edition is in the process of renaming to Jakarata Enterprise Edition
The geonetwork.war
requires an application server to operate:
-
Jetty application server for standaline distribution.
Jetty 9 is the last JavaEE compatible release.
-
Apache Tomcat application server for WAR distribution
Apache Tomcat 9.x is the last JavaEE compatible release.
Reference:
- https://javaee.github.io (Legacy Java EE Home)
The mapfish-print-v2 library is used for PDF generation, using a combinatino of GeoTools and OpenPDF library.
The library is used for thumbnail generation.
Reference: