Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • 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
      titleJava 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
      titleTomcat 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 the emptySessionPath flag set:

       

      <Connector port="8080" protocol="HTTP/1.1"
          connectionTimeout="20000"
       redirectPort="8443"
       emptySessionPath="true
      "compression=
      "
      force"
      />
    Maven 3.0.3


    • 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 using JAVA_OPTS for heap sizing. This can lead to problems on memory constrained systems because JAVA_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. So CATALINA_OPTS is a better choice for sizing the heap in setenv 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
      titleMaven 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 statement
  • Ant 1.8.2 (use this exact version)
    • Download Location: http://ant.apache.org

    • Environment Variable: ANT_HOME

      Tip
      titleAnt 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
  • Sencha SDK
  • RDBMS (support for PostgreSQL and Microsoft SQL Server)
    • PostgreSQL 9.1 or later
      • Download Location: http://www.postgresql.org
        • On Unix:
        • 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.
      • 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
        • 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
    • 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
      • 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

...

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 elseelse (db_schema from $SSP_CONFIGDIR/ssp-config.properties); use 'ssp' for <ssp-operational-user> unless you've chosen a different name for that accountchosen 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>;

...

  • 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.... 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> 

Most Common Commandsinitportal

- 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
titleNOTE
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
    titleDelete 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  or Edit, 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 the admin user.

If anything in it is incorrect or unclear, please leave a comment below.

...