...
- JDK 1.6 update 21 or later (JDK 1.7 is not supported as of 2014/08; the SSP development team has also observed somewhat better GC performance with the Sun/Oracle JDK vs OpenJDK)
- Download Location: http://java.sun.com
Environment Variable: JAVA_HOME
Tip title Java Environment Variable JAVA_HOME=/path/to/your/java (ie: /usr/local/java or C:\java\jdk)
(optional)
PATH= append the bin subdirectory to the path statement
- Tomcat 6.X (Tomcat 7 is not supported as of 2014/04)
Instructions for installing and configuring Tomcat for the SSP-Platform (uPortal 4.0)
Warning title Tomcat Configuration It is important to complete sections: Environment Variables, Shared Libraries, Shared Sessions, Java Heap. Minimally, the catalina.properties file must contain:
shared.loader=${catalina.base}/shared/lib/*.jar
Additionally, a performance improvement has been experienced by enabling compression in Tomcat
Tip Add compression="force" to the server.xml in the connector like the following And your active connector/s in
<tomcat>/conf/server.xml
must have theemptySessionPath
flag set:<Connector port=
"8080"
protocol=
"HTTP/1.1"
connectionTimeout=
"20000"
redirectPort=
"8443"
emptySessionPath=
"true"
/>
- Download Loation: http://maven.apache.org
Environment Variable: MAVEN_HOME
title | Maven Environment Variables |
---|
MAVEN_HOME= /path/to/your/maven (ie: /usr/local/maven or C:\tools\maven)
M2_HOME= /path/to/your/maven (ie: /usr/local/maven or C:\tools\maven)
(optional)PATH= append the bin subdirectory to the path statementAnt 1.8.2 (use this exact version)
Download Location: http://ant.apache.org
Environment Variable: ANT_HOME
title | Ant Environment Variable |
---|
- And increase the heap in
<tomcat>/bin/setenv.sh
(*nix) or<tomcat>/bin/setenv.bat
(Windows). Smaller sizing is probably feasible, but the examples below match what our SSP CI envs run with. For production systems, start with a max heap of roughly half available physical memory and increase from there if necessary.The uPortal instructions above recommend usingJAVA_OPTS
for heap sizing. This can lead to problems on memory constrained systems becauseJAVA_OPTS
will be used when trying to stop Tomcat with its own scripts. You don't typically need a large heap at all for that operation. SoCATALINA_OPTS
is a better choice for sizing the heap insetenv
scripts, because that var will only be used for Tomcat's http-serving runtime.setenv.sh:
CATALINA_OPTS=-Xms2G -Xmx2G -XX:PermSize=256m -XX:MaxPermSize=256m
setenv.bat (uPortal instructions linked to above are missing the 'set'):
set CATALINA_OPTS=-Xms2G -Xmx2G -XX:PermSize=256m -XX:MaxPermSize=256m
Additionally, a performance improvement has been experienced by enabling compression in Tomcat
Tip Add compression="force" to the server.xml in the connector like the following:
<Connector port="8080" protocol="HTTP/1.1
connectionTimeout="20000"
redirectPort="8443"
emptySessionPath="true"
compression="force" />
- Maven 3.0.3 or later
- Download Loation: http://maven.apache.org
Environment Variable: MAVEN_HOME
Tip title Maven Environment Variables MAVEN_HOME= /path/to/your/maven (ie: /usr/local/antmaven or C:\tools\antmaven)
M2_HOME= /path/to/your/maven (ie: /usr/local/maven or C:\tools\maven)
(optional)
PATH= append the bin subdirectory to the path statement
- Sencha SDKAnt 1.8.2 (use this exact version)
Download Location: http://wwwant.sencha.com/products/sdk-tools/download
PATH= append the rootTip Environment Variable: ANT_HOME
See SSP Sencha Build Tool Usage for additional installation steps on 64-bit OSsTip title Ant Environment Variable ANT_HOME= /path/to/your/ant (ie: /usr/local/ant or C:\tools\ant)
(optional)
PATH= append the bin subdirectory to the path statement
- PostgreSQL and Sencha SDK
Download Location: http://www.sencha.com/products/sdk-tools/download
Tip PATH= append the root to the path statement
See SSP Sencha Build Tool Usage for additional installation steps on 64-bit OSs
- RDBMS (support for PostgreSQL and Microsoft SQL Server)
- PostgreSQL 9.1 or later
- Download Location: 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
- PostgreSQL is available in the package manager of most linux distributions.
- 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
- Server Connection
- Launch the PG Admin application
- In the Object Browser, navigate to and right click on Server Groups -> Servers -> PostgreSQL 9.1 (localhost:5432)
- Click Connect and the enter the administrator password
- Login Roles
- In the Object Browser, right click on Login Roles and click New Login Role
In the Properties tab, enter a Role name of "sspadmin" without the quotes
In the Definition tab, enter a Password of "sspadmin" without the quotes
In the Object Browser, right click on Login Roles and click New Login Role
In the Properties tab, enter a Role name of "ssp" without the quotes
In the Definition tab, enter a Password of "ssp" without the quotes
- Confirm the new Login Roles exist in the Object Browser
- In the Object Browser, right click on Login Roles and click New Login Role
- Database
- In the Object Browser, right click on Databases and click New Database
- Enter "ssp" without the quotes as the database name
- Enter "sspadmin" without the quotes as the database owner
- Confirm the new database exists in the Object Browser
- In the Object Browser, right click on Databases and click New Database
- Server Connection
- Download Location: http://www.postgresql.org
- Microsoft SQL Server 2008 R2
- 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 quote
- Uncheck Enforce password policy
- 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 quote
- Uncheck Enforce password policy
- 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
- Confirm the new database exists
- Run the following SQL to assign user permissions and configure the required database settings
- Navigate to and right click on Databases and click New Database
- Server Connection
- PostgreSQL 9.1 or later
Code Block | ||
---|---|---|
| ||
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
| ||
Code Block | ||
For MSSQL 2008 or later (note that these statements must be executed while *no other connections to the current database are open*): ALTER DATABASE MyDatabase SET ALLOW_SNAPSHOT_ISOLATION ON ALTER DATABASE MyDatabase SET READ_COMMITTED_SNAPSHOT ON [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 |
Code Block |
---|
For MSSQL 2008 or later (note that these statements must be executed while *no other connections to the current database are open*):
ALTER DATABASE MyDatabase
SET ALLOW_SNAPSHOT_ISOLATION ON
ALTER DATABASE MyDatabase
SET READ_COMMITTED_SNAPSHOT ON |
Also note that for SQLServer the "operational" SSP database user ('ssp' in the example above) must be allowed to execute stored procedures. In most deployments this does not require special configuration, but in the event your security policies are such that that user must be explicitly granted execute permissions on specific stored procs, here are the statements which you would likely need to run. (Use 'dbo' for <schema> unless you know the value should be something else (db_schema
from $SSP_CONFIGDIR/ssp-config.properties)
; use 'ssp' for <ssp-operational-user> unless you've chosen a different name for that account (db_username
from $SSP_CONFIGDIR/ssp-config.properties)
.):
No Format |
---|
GRANT EXEC on <schema>.REFRESH_MV_DIRECTORY_PERSON to <ssp-operational-user>;
GRANT EXEC on <schema>.REFRESH_MV_DIRECTORY_PERSON_BLUE to <ssp-operational-user>;
GRANT EXEC on <schema>.update_directory_person_from_view_where_school_id to <ssp-operational-user>;
GRANT EXEC on <schema>.update_directory_person_from_view_where_person_id to <ssp-operational-user>; |
Info | ||
---|---|---|
| ||
Currently SSP supports use of PosgreSQL 9.x and Microsoft SQL Server 2008, or 2008 R2. The project team develops and tests against PostgreSQL and Microsoft SQL Server. Starting with 2.5.2, SSP has begun to include patches for SQLServer 2012 compatibility and at least one real-world 2.5.2 deployment is running against SQL Server 2012, although the SSP project team does not officially test against that SQL Server version. |
...
Anchor | ||||
---|---|---|---|---|
|
...
Code Block | ||
---|---|---|
| ||
server.home=C:/path/to/your/tomcat/install/tomcat/install |
- ssp-platform-config.properties
- The ssp-platform-config.properties file must be modifed for database connectivity and email settings
- Original File Location: ./uportal-war/src/main/resources/properties/ssp-platform-config.default.properties
- Edit the file and save in the SSP_CONFIGDIR
- Run-Time File Location: <SSP_CONFIGDIR>/ssp-platform-config.properties
- The ssp-platform-config.properties file must be modifed for database connectivity and email settings
- Original File Location: ./uportal-war/src/main/resources/properties/ssp-platform-config.default.properties
- Edit the file and save in the SSP_CONFIGDIR
- Run-Time File Location: <SSP_CONFIGDIR>/ssp-platform-config.properties
Configuration Values:
Value DescriptionConfiguration Values:
Value Description environment.build.hibernate.connection.driver_class jdbc driver file
For best results with SQL Server, the JTDS driver included with the Platform installation is recommended.
environment.build.hibernate.connection.url jdbc connection syntax
For best results with SQL Server, the JTDS driver included with the Platform installation is recommended.
environment.build.hibernate.connection.username jdbc connection database username environment.build.hibernate.connection.password jdbc connection database password environment.build.hibernate. connection.driver_classdialect driver filejdbc
connection dialect
For best results with SQL Server, the JTDS driver included with the Platform installation is recommended.
environment.build. hibernate.connection.urljdbc connection syntax
For best results with SQL Server, the JTDS driver included with the Platform installation is recommended.uportal.server Hostname and port for your SSP deployment. (Default: localhost:8080) environment.build.uportal.protocol HTTP/S protocol at which end users access your SSP deployment. (Default: http) environment.build. hibernateuportal. connectionemail. usernamejdbc connection database username environment.build.hibernate.connection.password jdbc connection database passwordfromAddress Address from which Platform email will originate. Rarely used. (Default: ssp@university.edu) environment.build.hibernatesso.dialectjdbc connection dialect For best results with SQL Server, the JTDS driver included with the Platform installation is recommended.
environment.build.uportal.server Hostname and port for your SSP deployment. (Default: localhost:8080) environment.build.uportal.protocol HTTP/S protocol at which end users access your SSP deployment. (Default: http) environment.build.uportal.email.fromAddress Address from which Platform email will originate. Rarely used. (Default: ssp@university.edu) environment.build.sso.* Several properties which configure inbound LTI and legacy SSO. See documentation specific to those features: SSP LTI Provider and SSP Signed URL SSO. Note that to enable these features environment.build.sso.local.sharedSecret
must be set to the same non-empty value asssp_platform_sso_ticket_service_shared_secret
in$SSP_CONFIGDIR/ssp-config.properties
- The ssp-platform-config.properties file must be modifed for database connectivity and email settings
- ssp-platform-config.properties
4. Build SSP-Platform
- Use the following command to build, deploy, and initialize the SSP-Platform project:
...
* Several properties which configure inbound LTI and legacy SSO. See documentation specific to those features: SSP LTI Provider and SSP Signed URL SSO. Note that to enable these features environment.build.sso.local.sharedSecret
must be set to the same non-empty value asssp_platform_sso_ticket_service_shared_secret
in$SSP_CONFIGDIR/ssp-config.properties
4. Build SSP-Platform
- Use the following command to build, deploy, and initialize the SSP-Platform project:
Code Block | ||
---|---|---|
*** When running a database initialization ant target (initportal, initdb), you need to specify SSP_CONFIGDIR if it isn't already specified as an env var. E.g on *nix.... $> SSP_CONFIGDIR=/opt/ssp/sspconfig ant -Dmaven.test.skip=true clean <target> Most Common Commands - Re/Initialize the SSP-Platform database, then run the equivalent of deploy-ear. Destructive! Appropriate for first-time deployments. $> SSP_CONFIGDIR=/opt/ssp/sspconfig ant -Dmaven.test.skip=true clean <target> initportal Most Common Commands - Build entire uPortal (incl. all wars),and deploy entire uPortal, ant deploy-ear - Build the full site and database, ant initportal (Warning- this will reset the entire uPortal database) Other deployment optionsSSP-Platform portal, including SSP: $> SSP_CONFIGDIR=/opt/ssp/sspconfig ant -Dmaven.test.skip=true clean deploy-ear Other commonly used ant targets: testdb: Tests the database settings and connectivity initdb: Drop uPortalSSP-Platform tables in the db & recreate them with configured seed data (src/main/data, not including the "quickstart" folder). deploy-war: Build & deploy _just the uPortalSSP-Platform war_ (i.e. not SSP or other portlets, etc.). deployPortletApp: Deploy one (already-built) portlet war file to Tomcat (example ant deploPortletApp -DportletApp=..\/SSP-Open-Source-Project/target/ssp.war) | ||
Info | ||
| ||
This command will download the SSP .war file and bundle it into the output of the SSP-Platform build) |
- Additional step for Microsoft SQL Server to update column types
...
Warning title Delete Demo Users If you are deploying to a production upgrading an environment, you should delete or change the passwords for the uPortal users created for demonstration purposes, including the
admin
user. This can be done through the user interface:Manage Users
->Find an Existing User
-> [Enter user ID from list below] -> [Click result] -> >Delete
or orEdit
, then change password. Demo users:admin
- advisor0
- ken
- student0
- student1
This is only necessary for upgrades. A fresh 2.5.2 install will not create these users.
A fresh install should also either change the
admin
user's password or add some other user to the Portal Administrators group and delete theadmin
user.
If anything in it is incorrect or unclear, please leave a comment below.
...