The Content Service is the Reactome API to access the data. It is based on Spring MVC, based on REST and fully documented in Open API (previously Swagger). Through the ContentService API you'll have access to the Graph Database, Interactors and SolR Search.
⚠️ Pre-Requirement (in the given order)- Maven 3.X - Installation Guide
- Reactome Graph Database - Installation Guide
- Interactor Database - Installation Guide
- Search SolR Index - search-indexer
- Mail Server (if you don't have a valid SMTP Server, please refer to FakeSMTP
git clone https://github.com/reactome/content-service.git
cd content-service
Maven Profile is a set of configuration values which can be used to set or override default values of Maven build. Using a build profile, you can customize build for different environments such as Production v/s Development environments.
Add the following code-snippet containing all the Reactome properties inside the tag <profiles>
into your ~/.m2/settings.xml
.
Please refer to Maven Profile Guideline if you don't have settings.xml
<profile>
<id>reactome</id>
<properties>
<mail.host>localhost</mail.host>
<mail.port>8181</mail.port>
<mail.username>username</mail.username>
<mail.password>password</mail.password>
<mail.enable.auth>true</mail.enable.auth>
<!-- Neo4J Configuration -->
<neo4j.uri>bolt://localhost:7687</neo4j.uri>
<neo4j.user>neo4j</neo4j.user>
<neo4j.password>password</neo4j.password>
<!-- Solr Configuration -->
<solr.host>http://localhost:8983/solr</solr.host>
<solr.core>reactome</solr.core>
<solr.user>admin</solr.user>
<solr.password>password</solr.password>
<!-- MySQL Configuration -->
<mysql.host>localhost</mysql.host>
<mysql.port>3306</mysql.port>
<mysql.reactome.database>reactome</mysql.reactome.database>
<mysql.report.database>report</mysql.report.database>
<mysql.user>curator</mysql.user>
<mysql.password>password</mysql.password>
<template.server>https://localhost/</template.server>
<!-- Log report -->
<cnf.mail.error.subject>Automated Error Report</cnf.mail.error.subject>
<cnf.mail.error.name>Error Report Agent</cnf.mail.error.name>
<cnf.mail.error.from>[email protected]</cnf.mail.error.from>
<cnf.mail.error.to>[email protected]</cnf.mail.error.to>
<!-- Report mail Configuration -->
<cnf.mail.report.hostname>reactome.org</cnf.mail.report.hostname>
<cnf.mail.report.from>[email protected]</cnf.mail.report.from>
<cnf.mail.report.to>[email protected]</cnf.mail.report.to>
<!-- Results not found internal Report -->
<report.user>reportadmin</report.user>
<report.password>password</report.password>
<!-- Logging -->
<logging.level>ERROR</logging.level>
<logging.dir>/var/log/tomcat7</logging.dir>
<!-- Analysis intermediate file -->
<analysis.structure.file>/usr/local/reactomes/Reactome/production/AnalysisService/input/analysis.bin</analysis.structure.file>
<analysis.result.root>/usr/local/reactomes/Reactome/production/AnalysisService/temp</analysis.result.root>
<!-- Common folders and file locations -->
<fireworks.json.folder>/usr/local/reactomes/Reactome/production/Website/static/download/current/fireworks</fireworks.json.folder>
<diagram.json.folder>/usr/local/reactomes/Reactome/production/Website/static/download/current/diagram</diagram.json.folder>
<diagram.exporter.temp.folder>/usr/local/reactomes/Reactome/production/ContentService/exporter/</diagram.exporter.temp.folder>
<tuples.uploaded.files.folder>/usr/local/reactomes/Reactome/production/ContentService/custom</tuples.uploaded.files.folder>
<!-- Needed for the Content-Service / Raster exporter -->
<ehld.folder>/usr/local/reactomes/Reactome/production/Website/static/download/current/ehld</ehld.folder>
<svg.summary.file>/usr/local/reactomes/Reactome/production/Website/static/download/current/ehld/svgsummary.txt</svg.summary.file>
<!-- Path to the experiments binary file -->
<experiments.data.file>/usr/local/reactomes/Reactome/production/AnalysisService/digester/experiments.bin</experiments.data.file>
</properties>
</profile>
mvn spring-boot:run -P reactome
Check if Tomcat has been initialised
[INFO] Using existing Tomcat server configuration at /Users/reactome/content-service/target/tomcat
INFO: Starting ProtocolHandler ["http-bio-8686"]
- 💻 Access your local installation