Amsterdam
Information
The cafe bootcamps are intensive day long workshops consisting of presentations and exercises designed to help developers get up to speed developing tools/apps for the Sakai framework. The bootcamps are also intended as a way to present new development technologies and best practices and techniques to developers who are experienced in Java and Sakai development. There is a joint session at the end of the bootcamp for UI designers and developers.
Attendees
- Prerequisites - required setup for participant computers to make the sessions as productive as possible. If you're having trouble, contact the sakai dev list for help.
- No sign up necessary! Just show up (please be on time).
Amsterdam Programmer's Cafe Agenda, Monday June 11th, 2007:
- Official conference schedule
- Workshop Prerequisites
- Setup your laptop for the workshop: Development Environment Setup Walkthrough
- You should do this BEFORE the workshop
- You will require 2 extra steps for this exercise
- Check out the entity broker package from https://source.sakaiproject.org/contrib/caret/entitybroker/tags/1.0 into your sakai root
- Add the CARET Maven repository to your Maven build.properties -
maven.repo.remote=http://source.sakaiproject.org/maven/,http://mirrors.dotsrc.org/maven,http://www2.caret.cam.ac.uk/maven
- Find more help with writing Sakai apps: Sakai Programmer Manual
- Get the Sakai cafe distribution from SVN here:
https://source.sakaiproject.org/svn/cafe/branches/2-3-x/ - Sakai App Builder
- RSF Blog Tool Exercise
- Evaluate this session
- Flickr images (programmerscafe07ams)
Session 1: (9:00) Welcome and Intro to Sakai development
- Welcome to Amsterdam Bootcamp
- Sakai development getting started
- Sakai application (tool) structure
- Sakai App Builder
- Run the app builder plugin to generate the basic structure for the RSF Blog Tool Exercise
- Inherit and review html templates from designer
- Inherit and review database structure from DBA
- Write HBM files based on database structure
- Write model classes (entity POJOs) based on HBM file schema
- Presenter: Former user (Deleted)
Session 2: (10:00) Persistence
- Data Access layer
- Review of GenericDAO capabilities
- Write DAO Java interface in api module, and demonstrate starting implementation by extending GenericDAO base class
- Create DAO stub implementation
- Construct DAO test data
- Write DAO tests
- Write DAO implementation
- Add/update spring bean config files (components.xml, etc.)
- Run dao tests
- Presenter: Former user (Deleted)
Break (10:40)
Session 3: (10:55) Logic
- Logic layer
- Write logic API methods in api module to be called from tool
- Demonstrate calling a DAO method from a logic API method
- Create logic layer stub implementation
- Create logic layer tests
- Write logic layer implementation
- Run logic tests
- Presenter: Former user (Deleted)
Session 4: (11:30) Working on the view layer (RSF)
- Implementing the starting view (HomeProducer)
- Eyeing over the template for rsf:ids - leaf and branch tags
- Simple components and producers (UIInput, UIOutput)
- I18N in RSF (formatted dates, UIMessage)
- Presenter: Former user (Deleted)
Lunch: (12:40) Please plan to be back to the session on time
Special Session: Developer involvement in Sakai
- Presenter: Former user (Deleted)
Session 4: (2:00)
- Multiple views and templates, the ViewParameters system
- Setting up file templates and injection for the navigation bar (NavBarRenderer)
- The EntityBroker and ViewParameters
- Rendering a public RSS feed
- Presenter: Former user (Deleted)
Session 5: (3:00) RSF and storage
- The main Blog view
- Setting up an RSF form, UICommand controls and parameters
- Setting up OTP locators for the backing model
- OneTruePath.png
- Presenter: Former user (Deleted)
Combo Session: (4:30) /wiki/spaces/UI/pages/560234602
- UI and developer related conversation
- Presenter: Former user (Deleted) and company