Principles and Practice of Programming in Java

= PPPJ 2007 =


// PPPJ 2007 / Tutorials

Important note ONLY for the SUN's Hands-on Labs Tutorials attendees.

Get down and dirty with the Sun's Hands-on Labs which is loaded with technical content that that gets you exploring and into the Java technologies that are happening now. There is no better way to learn. Not just listening about "how-to", but doing the "how-to". You MUST bring your own laptop to these hands-on labs. You MUST also pre-install necessary software on your laptop following software installation instructions for each lab.

[ >> the list of the software to pre-install on your laptop is available: more info on each lab << ]



Tutorial 1: Java code generation from formal models: the CO-OPN framework
Date: September 5th 2007, 14h00 - 15h30

Authors

Ang Chen, Matteo Risoldi and Didier Buchs - ( University of Geneva, Switzerland )


Abstract

This tutorial will introduce you to the Concurrent Object-Oriented Petri Nets (CO-OPN) formalism and tools. CO-OPN is a formalism based on algebraic Petri nets, with object orientation, concurrency, and formally defined semantics with the support of transactions. Systems and softwares can be modeled using the tools available for CO-OPN; on these models, verification activities can be performed (simulation, testing, model checking). Moreover, Java code can be generated from the model and used for simulation and/or integrated in larger scale systems, allowing rapid prototyping and modular development of software.

The tutorial will consist in an introduction to the application of Petri nets to concurrent programming. The CO-OPN formalism will be described, followed by an example-guided illustration on how to model and prototype a concurrent system. The discussion will be focused on how to achieve concurrency and transactionality with CO-OPN, and how to generate Java code ensuring these features from CO-OPN models. Re-use of Java prototypes generated by CO-OPN with your own external APIs will be explained.


Notes

No laptop and software needed.



Tutorial 2: Building Java Applications using EJB 3.0 and JPA
Date: September 5th 2007, 14h00 - 15h30

Authors

Mike Keith - ( Oracle )


Abstract

Over the past year new Java specifications have been released to impel industry standards towards the current state-of-the-art. Of notable significance are the Enterprise JavaBeans (EJB) 3.0 and the Java Persistence API (JPA), which define a significantly simplified model for business components and Java persistence, particularly when mapping entities to object-relational data models. These specifications break new ground in creating harmonious programming models that are both easy to use and sufficiently powerful to produce enterprise-grade applications.

This tutorial will introduce the concepts and principles of EJB 3.0 components, both from the developer and user perspectives. The use of annotation and XML metadata will be described and the notions of interception and dependency injection will be explained. The integration of EJB with the Java Persistence API will also be discussed, with an overview of the JPA programming model. JPA topics will include an overview of the operations on entities and the entity life cycle, object-relational mapping using metadata, static and dynamic queries, and JPA in a Java SE environment.


Notes

No laptop and software needed.



Tutorial 3: Java from Embedded to Enterprise, an extended discussion on the IBM Technology for Java
Date: September 5th 2007, 09h00 - 10h50

Speakers

Flavio Bergamaschi and Chris Bailey - ( IBM )


Abstract

In this session, Flavio Bergamaschi and Chris Bailey will discuss in details the IBM technology for Java which today extends from small embedded devices to large enterprise systems. The IBM technology for Java is highly modular which allows for the combination of the right modules to satisfy the requirements and specifications of systems ranging from JME to JEE.

In this session Flavio and Chris will present the overall architecture of the IBM runtime for Java and the following major components:

Time permitting we intend to demo the following two scenarios:


Notes

No laptop and software needed.



Tutorial 4: Write Once, Run Everywhere (WORA) - Fact or Fiction?
Date: September 5th 2007, 11h10 - 13h00

Speakers

Flavio Bergamaschi and Chris Bailey - ( IBM )


Abstract

Although Java is a WORA language, the differences in vendor implementation of the Java Virtual Machine should be taken into account when developing and or migrating applications from one platform to another. In this session Flavio Bergamaschi and Chris Bailey will discuss the differences on the Java Runtime vendor implementations, their impact on the production deployments and how to resolve the commonly encountered problems.


Notes

No laptop and software needed.



Tutorial 5: Explore Java SE 6 New Features
Date: September 5th 2007, 11h10 - 13h00

Speakers

Simon Ritter and Dr. Doris Chen - ( SUN )


Abstract     [ check >> SUN notice ]

Java SE 6 is the latest release of the Java environment which introduces a host of new and interesting features. This lab will provide exercises guiding you through sample uses of the following features:


Important Notes

You MUST bring your own laptop and pre-install the list of software presented below:



Tutorial 6: Rapidly Building a Real Life Application With Ajax
Date: September 5th 2007, 09h00 - 10h50

Speakers

Simon Ritter and Dr. Doris Chen - ( SUN )


Abstract     [ check >> SUN notice ]

This lab demonstrates how to build Ajax-enabled JavaServer Faces web applications with the jMaki framework and Dynamic Faces technology. The jMaki framework wraps widgets from different JavaScript libraries (such as Dojo, Scriptaculous, and Yahoo) so they can work together effectively within a common client-side, Ajax-centric programming model.


Important Notes

You MUST bring your own laptop and pre-install the list of software presented below:



Tutorial 7: Darkstar Hands on Lab
Date: September 5th 2007, 14h00 - 15h30

Speakers

Simon Ritter and Dr. Doris Chen - ( SUN )


Abstract     [ check >> SUN notice ]

This Lab introduces programming game servers using the Sun Game Server produced by Project Darkstar at Sun Labs. It steps the student through the construction of a simple Text MUD. A Text MUD is a multi-user textual world simulation, much like a text adventure game but supporting many users in the same world at once.


Important Notes

You MUST bring your own laptop and pre-install the list of software presented below: