UBC Ajax Hands-on Workshop: Oct. 4th 9:00am - 5:30pm

 

This document is available online as http://www.javapassion.com/courses/ubcajax.html.
The online version should have always the latest information.


Instructor: Sang Shin




The following is list of workshop topics and software requirement.  Please download and install the software before coming to the workshop if you can.  Also please print out the hard-copy of the lab documents.   I will also bring some CD's  and memory card which contains all the software and hands-on lab zip files if you want to install them on the spot. 

Topics


Software Required For the Hands-on Labs





Ajax Basics & Development Tools 

In this session, you are going to learn basic concepts of Ajax such as how XMLHttpRequest JavaScript object is created and used by the browser for performing asynchronous communication with the backend server.  For the hands-on lab, you are also going to learn how to use a few debugging tools out there, especially FireBug debugger, for debugging client side JavaScript code.  You will also play around with various "ready to build and run" Ajax sample applications.

1. Presentation slides (1.5 hour)

2. Lab 1 (3 hours) and homework 
3. Resources
4. Public forums

                                                                                                                              return to topics

Dojo Toolkit Basics


In this session, you are going to learn about the most popular client side JavaScript toolkit. You are going to learn various features of Dojo toolkit, which includes dojo.io.bind(), event model, etc.

1. Presentation slides (2 hours)

2. Labs (2 hours) and homework
3. Resources
4. Public discussion forums
                                                                                                                                               return to the topics

Direct Web Remoting (DWR) 


DWR allows JavaScript code in a browser to use Java methods running on a web server just as if they were in the browser through RMI like capability.  This is why it is called Direct Web Remoting.

1. Presentation slides (2 hours)

2. Lab (2 hours) and homework 
3. Resources
4. Discussion forums


                                                                                                                                               return to the topics

Google Web Toolkit (GWT)


Google Web Toolkit (GWT) is definitely an interesting technology to explore for building Ajax applications especially for those who want to leverage their Java knowledge.  The current version of NetBeans GWT plug-in does not support "creating a WAR" feature yet.  That will be provided in the next version.

1. Presentation slides (2 hours) - last updated (Oct. 7th, 2006)


2. Lab (5 hours) and homework
3. Resources
4. Discussion forums

                                                                                                                                               return to the topics

jMaki 


jMaki is all about enabling Java developers to use JavaScript in their Java based applications as either a JSP tag library or a JSF component. jMaki uses the best parts of Java and the best parts of JavaScript to deliver a rich AJAX style widgets.  jMaki currently provides bootstrap widgets for many components from Dojo, Script.aculo.us, Yahoo UI Widgets, Spry, DHTML Goodies, and Google. jMaki provides a common interfaces to these widget libraries and allows you to use these libraries together in the same page.

1. Presentation slides (2 hours)

2. Labs (2 hours) - last updated (Oct. 2nd, 2006)
3. Resources
4. Public forum
                                                                                                                                               return to the topic

Portlet and Ajax


1. Presentation slides (1 hour)

2. Lab 1 (Building Ajax-enabled Portlet using Existing Portal server)
3. Lab 2 (Portal server with Ajax support)
4. Resources

                                                                                                                                               return to the topic