Step by step instructions for building and deploying the SSP package.
- Software Prerequisites (JDK, Tomcat, PostgreSQL, Maven)
- SSP Open Source Project build and deployment
Software Prerequisites
The following software prerequisites must be installed to build and run SSP:
- JDK 1.6 update 21 or later (JDK 1.7 is not supported as of 2012/04)
- http://java.sun.com (openjdk works as well)
- Tomcat 6.X (Tomcat 7 is not supported as of 2012/04)
- Download source, http://tomcat.apache.org
- On Unix:
- Tomcat is available in the package manager of most linux distributions.
- Install it according to the distribution's instructions.
- On Mac:
- Tomcat is available via the homebrew package manager or
- Download at: http://tomcat.apache.org/download-60.cgi
- On Windows:
- Tomcat is available as a download at: http://tomcat.apache.org/download-60.cgi
- On Unix:
- Download source, http://tomcat.apache.org
- PostgreSQL 8 or later or Microsoft SQL Server 2005 or newer
- PostgreSQL
- Download source http://www.postgresql.org
- On Unix:
- PostgreSQL is available in the package manager of most linux distributions.
- Install it according to the distribution's instructions
- Ubuntu - https://help.ubuntu.com/11.10/serverguide/C/postgresql.html
- On Mac:
- PostgreSQL is available via the homebrew package manager or as a download on the postgresql.org site.
- On Windows:
- PostgreSQL is available as a download on the postgresql.org site.
- On Unix:
Configure PostgreSQL
Connect via pgadmin or your preferred db admin tool
Create the "ssp" & "sspadmin" users and the "ssp" database.
- Download source http://www.postgresql.org
- Microsoft SQL Server 2005 or newer
- JDBC Driver
- Download the Microsoft SQL Server JDBC driver from http://msdn.microsoft.com/en-us/sqlserver/aa937724.aspx
- Rename the downloaded file extension from .exe to .zip. Unzip the sqlserver-jdbc4-3.0.jar file to a directory of your choice.
- Place the JAR file in the Tomcat/shared/lib directory.
- Server Connection
- Launch the SQL Server Management Studio application
- Enter your database connection info including administrator account credentials, and click Connect
- Login Roles
- Navigate to Security->Logins, and right click on New Login
Login name of "sspadmin" without the quotes
Select SQL Server authentication and enter a Password of "sspadmin" without the quotes
- Uncheck Enforce password policy
Click OK
Right click on Logins again, and New Login Role
Login name of "ssp" without the quotes
Select SQL Server authentication and enter a Password of "ssp" without the quotes
- Uncheck Enforce password policy
Click OK
- Confirm the new users exist
- Navigate to Security->Logins, and right click on New Login
- Database
- Navigate to and right click on Databases and click New Database
- Enter "ssp" without the quotes as the database name
- Click OK
- Confirm the new database exists
- Run the following SQL to associate the new user accounts with the correct permissions on the new database:
USE [ssp]
GO
IF NOT EXISTS (SELECT name FROM sys.filegroups WHERE is_default=1 AND name = N'PRIMARY') ALTER DATABASE [ssp] MODIFY FILEGROUP [PRIMARY] DEFAULT
GO
IF NOT EXISTS (SELECT name FROM sys.database_principals WHERE name = 'ssp')
BEGIN
CREATE USER [ssp] FOR LOGIN [ssp]
EXEC sp_addrolemember N'db_datawriter', N'ssp'
EXEC sp_addrolemember N'db_datareader', N'ssp'
END
GO
CREATE USER [sspadmin] FOR LOGIN [sspadmin]
GO
EXEC sp_addrolemember N'db_owner', N'sspadmin'
GO
- Navigate to and right click on Databases and click New Database
- JDBC Driver
- PostgreSQL
RDBMS Platform Flexibility
Currently SSP supports use of PosgreSQL and Microsoft SQL Server 2005, 2008, or 2008 R2. The project team develops and tests against PostgreSQL and Microsoft SQL Server.
Future support for Oracle and other RDBMS is planned.
- Maven 3.0.3 or later (until a general release is available, expected July 2012)
- Download source http://maven.apache.org
Configure and Deploy SSP
The following configurations are required for the developer environment.
1. Create Directories
Prerequisite Installations
All software prerequisites should be installed into the local environment. Make note of the locations to set the environment variables.
On Unix/Mac:
Create a directory at /usr/local/etc/ssp
Make it only readable by the user that is running Tomcat
- On Windows:
Create a directory at C:\ssp
Make it only readable by the user that is running tomcat
In the next step, be sure to use Windows paths formatted in Java
There is a context.xml file that is put into the conf directory of tomcat once the application starts. Or you can paste it there ahead of time.
It is available from this project in src/main/webapp/META-INF/context.xml
The destination path is $CATALINA_HOME/conf/context.xml
2. Modify SSP Configuration Files
Update the configuration files on Unix/Mac/Windows:
Copy the SSP source files in src/main/config/external to /usr/local/etc/ssp or C:\ssp (depending on the environment)
Review each file carefully to set the appropriate settings.
- ssp-config.properties: database connectivity, users and database
- Unique identifier of the SSP instance
- system_id
- Values for connecting to the SSP database
- db_url: jdbc connection syntax
- For Microsoft SQL Server, either specify a port (the default is 1433) or ensure that the SQL Server Browser service is running because the SQL Server JDBC driver defaults to port 1434 which is the SQL Server Server Browser service default port. Depending on the server configuration, either may work, or you may want to explicitly specify the port and instance name, if applicable.
- db_driver_class: jdbc database connectivity syntax
- db_dialect: Spring Hibernate dialect
- db_username
- db_password
- db_admin_username
- db_admin_password
- db_url: jdbc connection syntax
- Values for SSP generated emails
- smtp_username
- smtp_password
- smtp_host
- smtp_port
- ssp_admins_email_addresses: recipient of system generated messages
- Deployment options
- spring.profiles.active
- dev-standalone: completely free of uPortal
- standalone: as the only portlet in a uPortal instance
- uPortal: as one of many portlets in a uPortal instance
- spring.profiles.active
- Unique identifier of the SSP instance
- Logging
- To adjust where logs are sent, edit the logback.xml file.
- Adjust the log levels for each log appender as necessary.
- If you enable the smtpAppender (disabled by default), don't forget to update the properties file location path, in addition to uncommenting the appropriate sections in logback.xml:
Example: <property file="/usr/local/etc/ssp/ssp-config.properties" /> - Further details regarding managing the logback.xml are included in XML comments within the file.
Add the following environment variables to your system, and point them to the appropriate external configuration path:
On Unix/Mac:
SSP_CONFIGDIR=/usr/local/etc/ssp
On Windows:
SSP_CONFIGDIR=C:\ssp
Additional Information
Optional environment and configuration parameters are defined in the Developer Environment Setup Instructions
3. Deploy SSP
- Currently the deployment file is not available anywhere, so it must be generated with maven.
- Instructions for building the SSP package
SSP-Open-Source-Project
The SSP-Open-Source-Project
repository in GitHub contains the tool suite for SSP. Installation begins with cloning the repository.
1. Clone the SSP Open Source Project repository from GitHub
Use a command like the following to clone the SSP-Open-Source-Project
repository from GitHub:
C:\projects\ssp>git clone git@github.com:Jasig/SSP.git
2. Build & Install
Use a command like the following to build the SSP-Open-Source-Project
and install it in the local Maven repository:
SSP can be built in three different modes:
- dev-standalone: the deployment will be completely free of uPortal (requires additional configuration)
- SSP_CONFIGDIR must be set as an environment variable instead of using context.xml
- ssp–config.properties file should be modified to uncomment spring.profiles.active=dev-standalone and comment out spring.profiles.active=uportal
- STS with embedded Tomcat is recommended to start/debug/stop the application
- You may need to add portlet-api-2.0.jar to tomcat's shared/lib (if running out of STS)
- standalone: SSP will be the only deployment in uPortal
- uPortal: SSP will be one of many portlets in uPortal
C:\projects\ssp\SSP-Open-Source-Project>mvn install
C:\projects\ssp\ssp-Open-Source-Project> mvn -Dmaven.test.skip=true install
- Once you have the war file, copy the ssp.war file into the webapps directory of tomcat
- Double check your settings in the config directory.
- Start Tomcat according to the manner specified for the Operating System.
- Open and browser and navigate to http://[yourdomain]:8080/ssp
If anything in it is incorrect or unclear, please leave a comment below.Unlicensed user