Perfil da Bahia
Use GeoNetwork 3.5+. It's not supported in older versions so don't plug it into it!
The best approach is to add the plugin as a submodule into GeoNetwork schema module.
cd schemas
git submodule add -b 3.5.x https://github.com/metadata101/iso19139.bmg iso19139.bmg
Add the new module to the schema/pom.xml:
<module>iso19139</module>
<module>iso19139.bmg</module>
</modules>
Add the dependency in the web module in web/pom.xml:
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>schema-iso19139.bmg</artifactId>
<version>${project.version}</version>
</dependency>
Add the module to the webapp in web/pom.xml:
<execution>
<id>copy-schemas</id>
<phase>process-resources</phase>
...
<resource>
<directory>${project.basedir}/../schemas/iso19139.bmg/src/main/plugin</directory>
<targetPath>${basedir}/src/main/webapp/WEB-INF/data/config/schema_plugins</targetPath>
</resource>
Editor configuration in GeoNetwork 3.5.x is done in schemas/iso19139.bmg/src/main/plugin/iso19139.bmg/layout/config-editor.xml
inside each view. Default values are the following:
<sidePanel>
<directive data-gn-onlinesrc-list=""/>
<directive gn-geo-publisher=""
data-ng-if="gnCurrentEdit.geoPublisherConfig"
data-config="{{gnCurrentEdit.geoPublisherConfig}}"
data-lang="lang"/>
<directive data-gn-validation-report=""/>
<directive data-gn-suggestion-list=""/>
<directive data-gn-need-help="user-guide/describing-information/creating-metadata.html"/>
</sidePanel>
Once the application is build, the war file contains the schema plugin:
$ mvn clean install -Penv-prod
After building the application, it's possible to deploy the schema plugin manually in an existing GeoNetwork installation:
-
Copy the content of the folder schemas/iso19139.bmg/src/main/plugin to INSTALL_DIR/geonetwork/WEB-INF/data/config/schema_plugins/iso19139.bmg
-
Copy the jar file schemas/iso19139.bmg/target/schema-iso19139.bmg-3.5.jar to INSTALL_DIR/geonetwork/WEB-INF/lib.
If there's no changes to the profile Java code or the configuration (config-spring-geonetwork.xml), the jar file is not required to be deployed each time.