Bootcamp Topics (ANU, Australia, 2011)

This workshop will be structured over several sessions, spread over several weeks, to introduce concepts, then give you the chance to put them into practice. The workshop will cover the install and configuration of Sakai, an overview of the app server environment, your own development environment, Maven and the various plugins we can leverage, and how to develop a Sakai app using the Sakai Maven Archetype.

Day 1 (29 July 2011)

Topic

Highlights

Developer Environment

Subversion, Maven, Tomcat setup, build Sakai

Webserver anatomy

/shared, /components, /sakai, /webapps (where things are deployed and why / classloaders)

Configuration - intro

sakai.properties

Administration - intro

sites, realms, tools, users

Development intro

javadocs

Create a tool using the archetype

use the archetype and go over the structure of the tool, where things are deployed and how things are wired together.

Pre-requisites: For Day 1 you are not expected to have any experience with Sakai, just listen and learn, take notes, then put them into practice for the next workshop.

Day 2 (TBA)

Topic

Highlights

Webserver anatomy revisited

/shared, /components, /sakai, /webapps

Typical troubleshooting scenarios

Did you come across any? How did you resolve them? 

Administration - more in-depth

sites, realms, tools, users - questions?

Tool/Services anatomy revisited and quiz

project layout: api, impl, pack, tool, help; pom.xml, Kernel (K1), (Maven), service injection: components.xml, also Sakai ComponentManager;  Webapp: /WEB-INF/web.xml, webapp/tools/tool.name.xml

UI for your tool

How we use Wicket to render an app that looks like the rest of Sakai.

Entity Broker

How we can expose our data via REST

Pre-requisites: For Day 2 it is expected that you have a working Sakai 2.8 or trunk build on your machine, you know how to start and stop it, deploy tools, troubleshoot startup errors and know what the various admin tools do. You should bring a laptop if possible. There will be a limited number of machines available, with a Sakai environment on them, if you cannot bring your own. Please contact the instructor well in advance if you need one of these machines.

Resources

sakai-app-structure-diagram.gif

classloader-hierarchy.png