Sakai in Stellar 2 Installation and configuration

Setting up the Sakai tools

Create a file called ~/build.properties and add the following lines:

maven.repo.remote=http://source.sakaiproject.org/maven/,http://lms.media.berkeley.edu/maven
maven.repo.local=/afs/athena.mit.edu/project/stellar-sakai/maven-repository/repository
maven.tomcat.home=/var/local/sakai-tomcat5.5/
maven.compile.source = 1.4
maven.compile.target = 1.4

The maven.repo.local above uses the shared repository in AFS.

Note that Sakai uses Maven 1.0 (command "maven"), while Stellar uses Maven 2.0 (command "mvn").

Customize the file:

jforum/WEB-INF/config/SystemGlobals.properties

Set dateTime.format avatar.path attachments.store.dir

Build the Sakai files by running:

kinit YOURUSERNAME
aklog
cd /var/local/stellar-svn/amps/sakai/2.1.2/
add stellar-sakai
maven -Dmaven.test.skip=true
maven sakai:clean_build_deploy -Dmaven.test.skip=true
mkdir /var/local/stellar-jforum
mkdir /var/local/stellar-jforum/avatars
mkdir /var/local/stellar-jforum/attachments

The first pass of maven should bring down many JAR dependencies fromt he repository specified in your build.properties file. The second maven pass cases Sakai to be built and deployed to the tomcat directory (also specified in build.properties). -Dmaven.test.skip=true skips tests to save time or if there are known test failures.

Unless the build fails (it shouldn't, but check for errors), several Sakai webapps have been built and deployed to tomcat. Many JARS will be copied into shared/lib from the repository. Others and built and added here.

Note: to update only the jforum tool after the war files have been deployed, do:

cd jforum
maven
/bin/cp -rp target/sakai-jforum-tool/. /var/local/sakai-tomcat5.5/webapps/sakai-jforum-tool

Make the directory /var/local/sakai-tomcat5.5/sakai and create a file called /var/local/sakai-tomcat5.5/sakai/sakai.properties, and add the following lines to it:

vendor@org.sakaiproject.service.framework.sql.SqlService=oracle
driverClassName@javax.sql.BaseDataSource=oracle.jdbc.driver.OracleDriver
url@javax.sql.BaseDataSource=jdbc:oracle:thin:@DBSERVER.MIT.EDU:1521:DBSID
username@javax.sql.BaseDataSource=USERNAME
password@javax.sql.BaseDataSource=PASSWORD
hibernate.dialect=net.sf.hibernate.dialect.Oracle9Dialect
auto.ddl=true
validationQuery@javax.sql.BaseDataSource=select 1 from DUAL
defaultTransactionIsolationString@javax.sql.BaseDataSource=TRANSACTION_READ_COMMITTED
wysiwyg.editor=FCKeditor

Information in this file is used to define the Java database conntector used by Sakai, Oracle in this case. Customize this by setting the url@javax.sql.BaseDataSource, username@javax.sql.BaseDataSource and password@javax.sql.BaseDataSource.

Stellar 2 Webapp Installation and configuration

Use the 2.0.3 branch with Sakai tools.

Setting up the 'S' Webapp

Check out the Stellar code from SVN. Build it using the maven 2 installation in the stellar-sakai locker, which has some jar files not available from official repositories pre installed (see stellar-two-jar/src/site/apt/README.apt or the maven-built site).

Customize the following:

  • stellar-two-webapp/src/main/webapp/WEB-INF/db-v2.properties set database connections
  • stellar-two-site-request/src/main/webapp/WEB-INF/db-v2.properties set database connections
  • stellar-two-webapp/src/main/webapp/WEB-INF/applicationContext.xml possibly customize OkapiStoreFactory settings
  • stellar-two-webapp/src/main/webapp/WEB-INF/site.properties set apacheHostIpList, serverName. Set this to be read-only, set preload false.

Check that /var/local/StoreDirectory and /var/local/stellar-searchindex exist, probably as links to the directories on another partition.

Do:

cd /var/local/stellar-svn/amps/stellar/2.0/branches/2.0.3/
mvn package

The libraries which need to be installed manually are

  javax.mail:mail:jar:1.3.1
  jpedal:jpedal-stellar:jar:1.0a
  javax.activation:activation:jar:1.0.2
  lucene:lucene-stellar:jar:1.0a
  com.oracle:ojdbc:jar:1.4

Then copy the elements produced in their target directories as follows:

cp -rp stellar-two-webapp/target/stellar-two-webapp/. /var/local/sakai-tomcat5.5/webapps/S/

Libraries

Stellar and Sakai share versions of some jars, others are needed by Stellar only. There are currently (Sakai 2.1.2) version conflicts with log4j, commons-logging, and commons-fileupload. Other jars are installed by maven into the Stellar webapp, and need to be moved to shared/lib. Thus after installing the Stellar webapp above and the Sakai tools using these instructions do the following:

cd /var/local/sakai-tomcat5.5/
rm common/lib/log4j-1.2.8.jar
rm shared/lib/cglib-full-2.0.2.jar
rm shared/lib/dom4j-1.4.jar
rm shared/lib/commons-logging-1.0.4.jar
rm shared/lib/commons-fileupload-1.0.jar
rm shared/lib/jta-h2.1.8.jar
mv webapps/S/WEB-INF/lib/* shared/lib/
mv shared/lib/log4j-1.2.9.jar common/lib/

Install the log4j.properties from Stellar into common/classes so it applies globally. Customize it so that it logs to /var/local/stellar-logs/sakai-*.log

mv webapps/S/WEB-INF/classes/log4j.properties common/classes/
emacs common/classes/log4j.properties

Maven dependencies are not correct for this configuration, so get ojdbc14.jar and put it in /var/local/sakai-tomcat5.5/common/lib/ get cglib-2.1_3.jar, dom4j-1.6.jar,jstl-1.1.2.jar, jta-1.0.1B.jar and put them in /var/local/sakai-tomcat5.5/shared/lib/

After this, the jars should be

sakai-log-configure-sakai_2-1-2.jar Sakai only
sakai-dav-common-sakai_2-1-2.jar Sakai only
log4j-1.2.9.jar
ojdbc14.jar
(apache standard libs)
common/lib
OkiOSID-2.0.jar Sakai only
activation-1.0.2.jar Sakai and Stellar
aopalliance-1.0.jar Sakai only
avalon-framework-4.1.3.jar all
cglib-2.1_3.jar
(2.1.3 Stellar Images)
Sakai & Stellar Images only
commons-collections-3.1.jar all
commons-dbcp-1.2.1.jar all
commons-fileupload-1.1.jar all (1.1 Stellar)
commons-io-1.2.jar all (1.1 Sakai)
commons-lang-2.0.jar Sakai only
commons-logging-1.1.jar all (1.1 Stellar)
commons-pool-1.2.jar all
dom4j-1.6.jar Sakai & Stellar Images (1.4 Sakai)
ehcache-1.1.jar Sakai & Stellar Images
hibernate-2.1.8.jar Sakai 2.1 is hibernate 2 only
hsqldb-1.7.3.3.jar Sakai only
jdbc2_0-stdext-h2.1.8.jar Sakai only
jdom-1.0.jar Sakai and Stellar
jpedal-stellar-1.0a.jar Stellar only
jstl-1.1.2.jar Sakai
jta-1.0.1B.jar Sakai
jtidy-4aug2000r7-dev.jar Stellar only
logkit-1.0.1.jar all
lucene-stellar-1.0a.jar Stellar only
mail-1.3.1.jar Sakai and Stellar
odmg-3.0.jar Sakai only
oro-2.0.7.jar Stellar only
sakai-active-tool-sakai_2-1-2.jar Sakai only
sakai-authentication-sakai_2-1-2.jar Sakai only
sakai-common-agent-api-sakai_2-1-2.jar Sakai only
sakai-common-authorization-api-sakai_2-1-2.jar Sakai only
sakai-common-composite-component-data-sakai_2-1-2.jar Sakai only
sakai-common-edu-person-api-sakai_2-1-2.jar Sakai only
sakai-common-manager-api-sakai_2-1-2.jar Sakai only
sakai-common-registry-api-sakai_2-1-2.jar Sakai only
sakai-common-superstructure-api-sakai_2-1-2.jar Sakai only
sakai-common-type-api-sakai_2-1-2.jar Sakai only
sakai-common-uuid-api-sakai_2-1-2.jar Sakai only
sakai-component-sakai_2-1-2.jar Sakai only
sakai-components-loader-sakai_2-1-2.jar Sakai only
sakai-db-sakai_2-1-2.jar Sakai only
sakai-function-sakai_2-1-2.jar Sakai only
sakai-gradebook-help-sakai_2-1-2.jar Sakai only
sakai-gradebook-service-sakai_2-1-2.jar Sakai only
sakai-id-sakai_2-1-2.jar Sakai only
sakai-jgroups-sakai_2-1-2.jar Sakai only
sakai-legacy-bundle-sakai_2-1-2.jar Sakai only
sakai-legacy-service-sakai_2-1-2.jar Sakai only
sakai-metaobj-api-sakai_2-1-2.jar Sakai only
sakai-request-sakai_2-1-2.jar Sakai only
sakai-sections-api-sakai_2-1-2.jar Sakai only
sakai-sections-comp-shared-data-sakai21-sakai_2-1-2.jar Sakai only
sakai-sections-help-sakai_2-1-2.jar Sakai only
sakai-session-sakai_2-1-2.jar Sakai only
sakai-thread_local-sakai_2-1-2.jar Sakai only
sakai-tool-registration-sakai_2-1-2.jar Sakai only
sakai-tool-sakai_2-1-2.jar Sakai only
servlet-api-2.3.jar Sakai only
spring-1.2.6.jar all
stellar-two-jar.jar Stellar only
xalan-2.6.0.jar both?
shared/lib

Webapps

For production, remove:

ROOT
balancer
jsp-examples
servlets-examples
tomcat-docs
webdav
authn.war
dav.war
mercury.war
sakai-axis.war
sakai-gradebook-testservice.war
sakai-gradebook-tool.war
sakai-james.war
sakai-jsf-example.war
sakai-jsf-resource.war
sakai-legacy-tools.war
sakai-login.war
sakai-metaobj-tool.war
sakai-osid-repo-test.war
sakai-osid-unit-test.war
sakai-sections-tool.war
sakai-wsrp-producer.war
status.war

Leaving

S Stellar
launch.war Sakai
library.war Sakai
sakai-jforum-tool.war Sakai

$Revision: 4216 $ $Date: 2007-08-30 00:10:21 -0400 (Thu, 30 Aug 2007) $