SAD Service and Plugins Installation¶
Prerequisites¶
- Java version 7
- Apache Maven version 3
- ECC version 2.1 or above installed in Maven, see below
- Social Integrator version 1.6 beta installed in Maven, see below
- MongoDB 2.4+ (http://www.mongodb.org/downloads)
- RabbitMQ Server version 2.8
- Apache Tomcat version 7 (optional) or similar with Servlet 3 support
Installing dependencies¶
ECC version 2.1 and Social Integrator version 1.6 beta Java libraries are provided with this distribution in the lib folder. To install those dependencies in Maven, change into the lib folder and run the batch file provided:
cd lib install_into_maven (Linux/Mac) install_into_maven.bat (Windows)
Alternatively, run the following in command line to install Social Integrator version 1.6beta:
cd lib mvn install:install-file -Dfile=./SocialIntegrator-core-api-1.6beta.jar -DgroupId=gr.ntua -DartifactId=socialintegrator -Dversion=1.6beta -Dpackaging=jar
and ECC version 2.1:
mvn install:install-file -Dfile=./SocialIntegrator-core-api-1.6beta.jar -DgroupId=gr.ntua -DartifactId=socialintegrator -Dversion=1.6beta -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-amqpAPI-impl-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-amqpAPI-impl -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-amqpAPI-spec-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-amqpAPI-spec -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-common-dataModel-experiment-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-common-dataModel-experiment -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-common-dataModel-metrics-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-common-dataModel-metrics -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-common-dataModel-monitor-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-common-dataModel-monitor -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-common-dataModel-provenance-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-common-dataModel-provenance -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-edm-factory-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-edm-factory -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-edm-impl-metrics-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-edm-impl-metrics -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-edm-spec-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-edm-spec -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-em-factory-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-em-factory -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-em-impl-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-em-impl -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-em-spec-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-em-spec -Dversion=2.1 -Dpackaging=jar mvn install:install-file -Dfile=./experimedia-arch-ecc-samples-shared-2.1.jar -DgroupId=uk.ac.soton.itinnovation.experimedia -DartifactId=experimedia-arch-ecc-samples-shared -Dversion=2.1 -Dpackaging=jar
Service configuration¶
Since version 2.5 all default service settings can be found in sad-service/src/main/resources/application.properties:
# Used for metric reporting and mvn spring-boot:run server.port=8081 server.context-path=/SAD # User login security.user.name=manager security.user.password=cZGmMqLkFE security.basic.realm=EXPERIMEDIA SAD # SAD default settings: basepath for external links, deployed path sad.basepath=http://localhost:8080/SAD sad.pluginsPath=../sad-plugins sad.coordinatorPath=src/main/resources/coordinator.json sad.resetDatabaseOnStart=false # ECC default settings - rabbit sad.eccEnabled=false sad.ecc.monitorId=00000000-0000-0000-0000-000000000000 sad.ecc.rabbitIp=127.0.0.1 sad.ecc.rabbitPort=5672 sad.ecc.clientName=Social Analytics Dashboard sad.ecc.clientsUuuidSeed=3e85977c-f791-11e3-865e-b2227cce2b5 # Unit tests spring.main.show_banner=false
Properties starting with sad. can be changed in the new service configuration UI. Make sure that regardless of your deployment choice server. properties are set correctly.
Local database access is configured in sad.coordinatorPath file as before:
"database": { "mongo_server": { "host": "localhost", "port": "27017" }
Database with name:
"name": "experimedia"
will be created automatically.
Plugins visualisation files¶
To visualise plugin output via SAD Dashboard, copy the contents of each <sad.pluginsPath property value>/<plugin-name>/src/main/resources/visualise folder into sad-service/src/main/webapp/visualise/<plugin-name> folder, so that all default (or custom) plugin visualisations exist in that folder:
sad-service/src/main/webapp/visualise/basic-sns-stats sad-service/src/main/webapp/visualise/facebook-collector sad-service/src/main/webapp/visualise/hot-tweets sad-service/src/main/webapp/visualise/twitter-searcher
Build¶
To build SAD service and plugins, in top folder of the distribution run:
mvn install
This will create a WAR file with SAD service in:
sad-service/target/sad-service-2.6.war
and also create default plugins’ jars and configuration files:
sad-plugins/<plugin name>/configuration.json sad-plugins/<plugin name>/target/<plugin name>-2.6.jar