Skip to content
HTML JavaScript Java XSLT Ruby CSS Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs Merge remote-tracking branch 'upstream/develop' into nws-openam-chang… Nov 16, 2016
openwis-database
openwis-dataservice [maven-release-plugin]prepare release openwis-3.14.8-release Apr 18, 2017
openwis-dependencies [maven-release-plugin]prepare release openwis-3.14.8-release Apr 18, 2017
openwis-factorytests version fixes Feb 8, 2017
openwis-harness
openwis-management Update pom.xml Sep 28, 2018
openwis-metadataportal
openwis-portal-client [maven-release-plugin]prepare release openwis-3.14.8-release Apr 18, 2017
openwis-securityservice [maven-release-plugin]prepare release openwis-3.14.8-release Apr 18, 2017
openwis-stagingpost
openwis-tools
resources issue-239: added support for harvesting over https Dec 14, 2016
.gitattributes
.gitignore
LICENSE
README.MD
Vagrantfile Vagrant box fix broken url Jan 27, 2017
pom.xml

README.MD

#OpenWis

From about OpenWis.

OpenWIS is an implementation of WMO Information System (WIS) and aims to perform the three functions required by the WIS, i.e. GISC, DCPC and NC. It is originally developed by AKKA Information System (France) on behalf of OpenWIS Association (with UKMO, MF, BoM, KMA, and MFI as the founding members)

##1. Requirements

  • Oracle JDK 1.7
  • Maven 2.2.1

###Environment variables:

The JAVA_HOME should be set with the valid JDK path.

The MAVEN_OPTS should be set with "-Xms256m -Xmx512m -XX:MaxPermSize=256m" to avoid OutOfMemory issue during the build.

The "mvn" command should be available in the terminal, maybe you should add the /bin directory to the PATH

##2. Sources Contents

Repository Contents :

  .
  +-- pom.xml
  |+--openwis-dataservice
      |+--openwis-dataservice-cache
         |+-- openwis-dataservice-cache-core
         |+-- openwis-dataservice-cache-ejb
         |+-- openwis-dataservice-cache-ftpreplication (not used)
         |+-- openwis-dataservice-cache-test (not used)
         |+-- openwis-dataservice-cache-webapp
      |+--openwis-dataservice-common
         |+-- openwis-dataservice-common-domain
         |+-- openwis-dataservice-common-timer
         |+-- openwis-dataservice-common-utils
      |+--openwis-dataservice-server
         |+-- openwis-dataservice-server-ear
         |+-- openwis-dataservice-server-ejb
         |+-- openwis-dataservice-server-test (not used)
         |+-- openwis-dataservice-server-webapp
  |+--openwis-factorytests
  |+--openwis-harness 
      |+--openwis-harness-client
      |+--openwis-harness-dissemination
      |+--openwis-harness-localdatasource
      |+--openwis-harness-mssfss
      |+--openwis-harness-samples (not used)
      |+--openwis-harness-subselectionparameters
  |+--openwis-management
      |+--openwis-management-client
      |+--openwis-management-server
  |+--openwis-metadataportal
      |+--cachingxslt
      |+--jeeves
      |+--oaipmh
      |+--openwis-portal  
      |+--openwis-portal-solr
      |+--schematrons (not used)
      |+--sde
  |+--openwis-portal-client
  |+--openwis-securityservice
      |+--openwis-securityservice-war
      |+--openwis-securityservice-utils
		|+--GenerateSPConfFiles
		|+--PopulateLDAP
  |+--openwis-stagingpost
  |+--resources
  • openwis-dataservice: contains the dataservice module (including the cache system)
  • openwis-factorytests: contains selenium functional tests
  • openwis-harness: contains harness WSDL (dissemination, localdatasource) and samples harness implementations
  • openwis-management: contains management module (monitoring and control)
  • openwis-metadataportal: contains portals module
  • openwis-release: contains some binary (JBoss, PostgreSQL, ...)
  • openwis-securityservice: contains the security module
  • openwis-stagingpost: contains the staging post web application
  • resources: contains jars required for build but not available on Public Maven repositories

Harness WSDL

  • The harness dissemination WSDL and WSD: openwis-harness/openwis-harness-dissemination/src/wsdl/
  • The harness localdatasource WSDL and WSD: openwis-harness/openwis-harness-localdatasource/src/wsdl/
  • The harness MSSFSS WSDL and WSD: openwis-harness/openwis-harness-mssfss/src/wsdl/
  • The harness subselectionparameters WSDL and WSD: openwis-harness/openwis-harness-subselectionparameters/src/wsdl/

##3. Building OpenWIS

#1. Installing JavaEE

Javee is a library that is shipped with installations of GlassFish but is not available in any pulic Maven repository. In a terminal launch the command mvn clean exec:exec

#2.Launch the Maven build

In a terminal, go into the root directory and launch the command: mvn clean install -P openwis -DskipTests -Dfile.encoding=UTF-8

After few minutes the build should finished successfully like this:

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] ------------------------------------------------------------------------
[INFO] OpenWIS ............................................... SUCCESS [1.248s]
[INFO] openwis-harness ....................................... SUCCESS [0.000s]
[INFO] openwis-harness-subselectionparameters ................ SUCCESS [6.724s]
[INFO] openwis-harness-localdatasource ....................... SUCCESS [1.232s]
[INFO] openwis-harness-client ................................ SUCCESS [0.796s]
[INFO] openwis-harness-mssfss ................................ SUCCESS [1.560s]
[INFO] openwis-harness-dissemination ......................... SUCCESS [1.264s]
[INFO] openwis-management .................................... SUCCESS [0.046s]
[INFO] openwis-management-client ............................. SUCCESS [4.134s]
[INFO] openwis-management-service ............................ SUCCESS [0.016s]
[INFO] openwis-management-service-common ..................... SUCCESS [1.045s]
[INFO] openwis-management-service-ejb ........................ SUCCESS [6.740s]
[INFO] openwis-management-service-ear ........................ SUCCESS [4.118s]
[INFO] openwis-dataservice ................................... SUCCESS [0.016s]
[INFO] openwis-dataservice-common ............................ SUCCESS [0.015s]
[INFO] openwis-dataservice-common-utils ...................... SUCCESS [1.513s]
[INFO] openwis-dataservice-common-domain ..................... SUCCESS [2.762s]
[INFO] openwis-dataservice-common-timer ...................... SUCCESS [2.761s]
[INFO] openwis-dataservice-cache ............................. SUCCESS [0.016s]
[INFO] openwis-dataservice-cache-core ........................ SUCCESS [0.998s]
[INFO] openwis-dataservice-cache-ejb ......................... SUCCESS [3.354s]
[INFO] openwis-dataservice-cache-webapp ...................... SUCCESS [1.728s]
[INFO] openwis-dataservice-server ............................ SUCCESS [0.011s]
[INFO] openwis-dataservice-server-ejb ........................ SUCCESS [4.073s]
[INFO] openwis-dataservice-server-webapp ..................... SUCCESS [1.295s]
[INFO] openwis-dataservice-server-ear ........................ SUCCESS [0.515s]
[INFO] openwis-dataservice-config ............................ SUCCESS [2.621s]
[INFO] openwis-portal-client ................................. SUCCESS [17.862s]	
[INFO] GeoNetwork opensource ................................. SUCCESS [0.000s]
[INFO] Caching xslt module ................................... SUCCESS [0.514s]
[INFO] Jeeves modules ........................................ SUCCESS [4.181s]
[INFO] Oaipmh modules ........................................ SUCCESS [1.155s]
[INFO] ArcSDE module (dummy-api) ............................. SUCCESS [1.560s]
[INFO] openwis-portal-solr ................................... SUCCESS [7.301s]
[INFO] openwis-securityservice ............................... SUCCESS [0.015s]
[INFO] openwis-securityservice-utils ......................... SUCCESS [0.000s]
[INFO] openwis-securityservice-utils-populate-ldap ........... SUCCESS [4.181s]
[INFO] openwis-securityservice-war ........................... SUCCESS [9.657s]
[INFO] openwis-stagingpost ................................... SUCCESS [0.327s]
[INFO] OpenWIS module ........................................ SUCCESS [36.687s]
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 minutes 43 seconds
[INFO] Finished at: Tue Dec 01 13:24:46 GMT 2015
[INFO] Final Memory: 237M/416M
[INFO] ------------------------------------------------------------------------	

*#3. Generate the admin portal

In a terminal, go to the root directory and launch the command: mvn clean install -P admin -DskipTests -Dfile.encoding=UTF-8

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] ------------------------------------------------------------------------
[INFO] OpenWIS module ........................................ SUCCESS [26.004s]
[INFO] OpenWis ............................................... SUCCESS [0.402s]
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 26 seconds
[INFO] Finished at: Tue Dec 01 13:25:56 GMT 2015
[INFO] Final Memory: 42M/302M
[INFO] ------------------------------------------------------------------------

#4 Getting built artifacts

  • dataservice EAR: /openwis-dataservice/openwis-dataservice-server/openwis-dataservice-server-ear/target/openwis-dataservice.ear
  • dataservice configs: /openwis-dataservice/openwis-dataservice-config/target/openwis-dataservice-config-files.zip
  • dataservice config module: /openwis-dataservice/openwis-dataservice-config/target/openwis-dataservice-config-module.zip
  • harness client: /openwis-harness/openwis-harness-client/target/openwis-harness-client.jar
  • security service: /openwis-securityservice/openwis-securityservice-war/target/openwis-securityservice.war
  • user portal WAR: /openwis-metadataportal/openwis-portal/openwis-user-portal/openwis-portal-user.war
  • admin portal WAR: /openwis-metadataportal/openwis-portal/openwis-admin-portal/openwis-portal-admin.war
  • SolR search WAR: /openwis-metadataportal/openwis-portal-solr/target/openwis-portal-solr.war
  • staging post WAR: /openwis-stagingpost/target/stagingPost.war
  • Management Service: /openwis-management/openwis-management-service/openwis-management-service-ear/target/openwis-management-service.ear

#5 Changing Verison Number

In a terminal, go into the root directory and launch the command: mvn versions:set -DnewVersion=0.0.1-SNAPSHOT -P openwis or whatever version you wish to change the project to. In some cases, you may find that OpenWIS complains about missing dependencies, should this happen try running 'mvn versions:set -DnewVersion=0.0.1-SNAPSHOT -P openwis' followed by 'mvn versions:set -DnewVersion=0.0.1-SNAPSHOT -P admin'

**#6 Maven Releasing **

Maven releasing for OpenWIS is two step process as the portal requires the build to be run twice (once for admin portal and once for the user portal).

In a terminal, go into the root directory and launch the command: `mvn -Dresume=false release:prepare -Popenwis release:perform -Dgoals="install"' this needs to be followed by a build of the admin portal as desribed in #3

This will not deploy to the CloudBees repo as there are currentl permissions issues

#7 Running SonarQube

In a terminal, go into the root directory and launch the command: mvn sonar:sonar. Because there is currently no central SonarQube via CloudBees, you need to have your local SonarQube settings configured in you ~/.m2/settings.xml.

This does take a while given the number of modules that need to run.

Copyright and License

(C) Copyright OpenWIS Association AISBL.

OpenWIS® is free software: you can redistribute it and/or modify it under the terms of the License specified for each OpenWIS® Project (see LICENSE).

You can’t perform that action at this time.