Software and Configuration for Streek Development
Audience
Application/component developers working as team members in the standard Streek project environment
Purpose
To develop applications/components using a standard set of tools.
Prerequisites
- A modern, well-equipped workstation: 512MB RAM is minimal, 1GB is strongly recommended
- An up-to-date, patched, appropriately configured, and secure operating system (e.g., Solaris; Linux; Mac OS/X; Windows 2000 or XP)
- A fast network connection
- An up-to-date version of an SSH client (The WSSG software site has SSH2 clients for Mac and Windows users)
- An account on a server that hosts a code repository (e.g., canvas.berkeley.edu, hosting CVS), with appropriate group memberships (e.g., cvsusers, ist, sis)
Configuration Steps
The following steps will load and configure a developer's workstation appropriately for participation in a Streek project development team. Links to detailed instructions, where they exist, are highly recommended.
Optional steps are given in emphasized text.
- Apply for an account and appropriate group membership on the host machine(s) for code repositories you will need to access (cf. Prerequisites, above).
- Exchange SSH keys with the code repository host(s) to enable public-key login; cf. instructions for Windows users
- Install an appropriate version of the Java 2 Platform, Standard Edition (J2SE); cf. instructions for Windows users
- Install the Eclipse IDE; cf. instructions for Windows users, with particular attention to the configuration tasks at the end of the document
- Install recommended Eclipse-plugins; cf. Recommended Plugins page
- Install Apache 2 httpd and mod_jk2 if you plan to deploy Streek applications behind a web server on your development box; Windows users, cf. Apache w SSL and mod_jk2 instructions
- Configure your machine to use a Kerberos KDC if you will need to use JGSS authentication in testing or deployment tasks; cf. instructions for windows users
- If your machine runs a Windows OS, it may be convenient to install Cygwin, a Unix-like shell that runs on the Windows OS; install the base plus (at least) the optional CVS client component
- Set up CVS repository locations in Eclipse, to
enable checkout and update of necessary projects. Repositories
in the CVS installation on canvas.berkeley.edu that
you may be interested in include:
- /usr/local/cvsrep/org/ist
- /usr/local/cvsrep/third-party/jboss
- /usr/local/cvsrep/third-party/apache
- /usr/local/cvsrep/org/sis
- Check out projects from CVS into your local
(Eclipse) workspace, as needed; for many Streek
application development and/or
dev-box deployment, the following
projects are necessary:
- ist-jxde
- jboss-3.2.5
- servant
- hydrant
- jca-access-test [NOT YET IMPLEMENTED]
- streek
- projects you will work on...
- Generate JBoss server(s) appropriate for local deployment, using servant, configured appropriately for the development work you will be involved in (as your project lead if you're not sure how to configure servant).
- Download and install (or check-out from repository) Forrest, an open-source (Apache) project documentation tool used in some Streek project builds
- Configure Ant (in Eclipse and, if you use Ant outside the IDE, elsewhere on your machine) to run Forrest targets per these instructions
- If Forrest and the Oxygen XML editor plugin were installed, configure the plugin to use Forrest schema catalogs, per these instructions
- Download and install (or check-out from repository) JMeter, an open-source (Apache-Jakarta) testing tool used to verify Streek application deployments, etc.
- Review your environment variable settings. If you've performed
all the steps above, you will probably want the following
environment variables to be set:
- ANT_HOME
- root of ant installation, e.g., path to ist-jxde/ant in your Eclipse workspace
- APACHE_HOME
- root of Apache httpd installation
- CATALINA_HOME
- root of deployed JBoss-Tomcat instance, e.g., path to jboss-3.2.5\server\default\deploy\jbossweb-tomcat50.sar in Eclipse workspace
- CLASSPATH
- It is recommended that CLASSPATH be set to "." (period), and that classpath for each Java compilation be set in the relevant Ant build file.
- CVSHOME
- root of Eclipse workspace
- CVSROOT
- generally analogous to the following, where "userid" is your userid on the code repository (CVS) host: :ext:userid@canvas.berkeley.edu:/usr/local/cvsrep/org/ist
- CVS_RSH
- name of SSH executable, which must be on machine's PATH; generally ssh on Unix/Linux OS machines, or ssh2 on Windows OS machines
- DEPLOY_WITH_APACHE
- set this environment variable to ANY value, but ONLY if you plan to deploy applications on your machine behind the Apache httpd web server (otherwise do NOT set the variable to any value); many Streek projects use this environment variable to serve static application content from Apache httpd rather than from the (heavier-weight) application server
- FORREST_HOME
- the /src/core directory of Forrest installation
- IST_JXDE_HOME
- path to the root of the ist-jxde project in Eclipse workspace
- JAVA_HOME
- the root of J2SE installation
- JBOSS_HOME
- path to the root of JBoss installation, often the root of the jboss-3.2.5 project in Eclipse workspace
- JMETER_HOME
- the root of JMeter installation
- TOMCAT_HOME
- root of deployed JBoss-Tomcat instance, e.g., path to jboss-3.2.5\server\default\deploy\jbossweb-tomcat50.sar in Eclipse workspace
- USER
- your userid on the code repository host (e.g., on canvas.berkeley.edu)


