05.JSP2009. 1. 23. 15:58
반응형


JavaTM EE (J2EE) Programming (with Passion!)




Message to potential attendees

The next and 15th session will start from Feb. 1st, 2009.  Just like other online courses I teach, this course is offered online only.   For those of you who are not sure what it's like to take this course online, please see What it's like to take Sang Shin's online courses.  Just to set the expectation correctly, there is no real-time webcasting. 

How to register for this course

In order to register for this course, all you have to do is sending a blank email to the following email alias. 

Basically, when you send a blank email to the above, you are subscribing our class forum. This forum can be used for posting questions/answers.  Please use this forum for all class related communication (technical or non-technical). 

If you have any further questions on this course, please see the course FAQ (Frequently Asked Questions).



Topics and Schedule


Note that only the topics with the dates assigned will be covered in this course. (You need to submit homeworks only on the topics that have dates.)  It is my plan to provide presentation slides and hands-on labs for the topics that do not have dates whenever I find time.


  1. Introduction
  2. Web Core Technologies: Servlet and JSP
  3. JDBC, SQL,
    • SQL (1 hour lecture + 1 hour lab) - (March 12th, 2009: Week #6)  - there is no homework
    • JDBC (1 hour lecture + 1 hour lab) - (March 12th, 2009: Week #6) (homework #9)
  4. Web-tier Security
  5. Struts
  6. Struts 2
    • Struts 2 Basics (2 hour lecture + 1 hour lab) - (April 25th, 2009: Week #10) (homework #13)
    • Struts 2 and Ajax ()
    • Struts 2 and Tiles
    • Struts 2 and view technologies
  7. JavaServer Faces (JSF)
    • JSF basics I
    • JSF basics II
    • Validation
    • Conversion 
    • Data tables
    • Sample apps
    • Tiles 
    • Using JSF-enabled IDE
    • Building JSF components
    • Related frameworks
    • JSF and Portal/Portlets
    • Testing and Debugging tools
  1. Other Web-tier Frameworks
  2. EJB 2.x
  3. Java EE 5, EJB 3.0, Java Persistence API (JPA)
  4. Design patterns, Best practices, Performance tuning, etc
  5. Hibernate
  6. Spring framework
    • Spring framework basics
    • Spring framework and persistence
    • Spring framework Web-tier technologies
    • Spring AOP
    • Spring and Java EE
    • Misc.
  7. Portlets and Portal
  8. GlassFish
If you submitted all homeworks - the deadline for the homework submission is Dec. 11th, 2009 -, please send an email to the homework alias (j2eehomeworks@sun.com) with the following information in order to get a certificate and listed in the Graduates of this course by Dec. 14th, 2009. The subject of the email should be J2EECourse-2009-Fall.
  • <First-name Last-name>, <Nationality or Country of Origin>, <One paragraph you want to say about this course (optional)>
  • Sang Shin, Korea, This is a great course ...




Introduction




Introduction of this course

1. Presentation slides (0.5 hour)

Java EE Overview

The objective of this session is to give you a big picture of Java EE architecture and platform and get yourself prepared for the rest of the course.  You don't have to understand everything that is described in the presentation below.  If you get reasonably good idea on what Java EE is, that should be good enough to proceed.  Please browse through the Resources below.

There is no homework in the week #1.

1. Presentation slides (1 hour)

                                                                                                                              return to topics





Web Core Technologies: Servlets, JSP, and JSTL





Web Application Structure

In this session, you will learn how a typical Web application is built.  You will also learn the internal structure of Web application as well as web.xml file.

1. Presentation slides (1 hour)

2. Lab (1 hour) and homework - The hands-on lab is updated with NetBeans 6.1.
  • 4001_webappstructure.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/webappstructure/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
  • Homework (This is the same homework you will find in the hands-on lab zip file)
  • Change log

                                                                                                                   return to topics

Servlet Basics


You are getting into a very important topic, Servlet.  I expect many of you who get exposed to the Servlet for the first time might feel overwhelmed by the amount of things you feel you have to absorb. Given that the Servlet technology is the most-used functionality of J2EE platform, there are in fact lots of things to learn. 

1. Presentation slides (2 hours)

2. Lab and homework (1 hour) 
3. Resources
                                                                                                                              return to topics

JSP Basics


I assume by now, most of you are relatively comfortable with building and deploying Servlet based Web applications.  In this session, you will learn basic concept of JSP (JavaServer Pages) which is as equally important Web-tier technology as Servlet.  You will also learn how to build a simple JSP pages using JavaBeans.

1. Presentation slides (2 hours)

2. Lab and homework (2 hours)
3. Resources
                                                                                                                              return to topics

Using NetBeans for Developing Web Applications


In this session, you are going to do a lab during which you exercise various features of NetBeans IDE. 

1. Lab and homework (1 hour)
2. Resources
                                                                                                                     return to topics

Servlet Advanced


By now, you have reasonably good idea on how you can use basic features of Servlets and JSP to build Web applications.  In this session, you are going to learn advanced features of Sevlets, mainly filters and life-cycle events.

1. Presentation slides - ServletAdvanced (1 hour)

2. Presentation slides - Servlet 2.4 Enhancements
3. Lab and homework (1 hour)
4. Resources

                                                                                                                              return to topics

Session Tracking


Session tracking is a mechanism that servlets use to maintain state about a series of requests from the same user (that is, requests originating from the same browser) across some period of time.

1. Presentation slides (1 hour)

2. Lab and homework (1 hour)
3. Resources
                                                                                                                              return to topics

Expression Language


A primary feature of JSP technology version 2.0 is its support for an expression language (EL). An expression language makes it possible to easily access application data stored in JavaBeans components. For example, the JSP expression language allows a page author to access a bean using simple syntax such as ${name} for a simple variable or ${name.foo.bar} for a nested property.

1. Presentation slides


2. Lab and homework (0.5 hour)
3. Resources

                                                                                                                              return to topics

JSP 1.2 Custom Tags - We are not covering this topic in this course


Since the introduction of JSP 2.0 style tag files, the JSP 1.2 style development of custom tags should be avoided whenever possible meaning if you can develop your custom tags using tag files, you should use tag files.  Because of that reason, we are skipping this topic in this course. 

1. Presentation slides (2 hours)


2. Lab
3. Resources


                                                                                                                   return to topics

JSP 2.0 Custom Tags


In this session, you are going learn how to build and use simple tag handler and tag file features of JSP 2.0.

1. Presentation slides (1 hour)

2. Lab and homework(1 hour) 
3. Resources
                                                                                                                              return to topics

JSTL


The JavaServer Pages Standard Tag Library (JSTL) encapsulates core functionality common to many JSP applications. Instead of mixing tags from numerous vendors in your JSP applications, JSTL allows you to employ a single, standard set of tags. This standardization allows you to deploy your applications on any JSP container supporting JSTL and makes it more likely that the implementation of the tags is optimized.

1. Presentation slides (2 hours)

2. Labs (2 hours)
3. Resources
                                                                                                                              return to topics

Building BookStore Sample Application


In this session, you will build the "Duke's Bookstore" sample application, which is reasonably sophisticated application using different Web-tier technologies, first by using Servlets only, second by using JSP pages only, third by using JSP pages and custom tags, fourth by using JSP pages and JSTL in native format, fifth by using JSPpages and JSTL in XML format

1. Labs (2 hours)

Applets


1. Presentation slides (2 hours)

  • PDF: 1 slide per page
  • StarOffice file
2. Labs (2 hours)
  • 4015_jstlexamples.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jstlexamples/index.html to proceed) - work in progress
  • Online lab document (This is the same document you will find in the hands-on lab zip file
  • Homework
  • Change log
3. Resources
                                                                                                                              return to topics








JDBC, SQL





SQL

SQL is a standard computer language for accessing and manipulating relational databases.  Even though Java persistence technologies such as EJB 3.0 Java Persistence API (JPA) or Hibernate could insulate developers from having to know the detailes of SQL, it is still important to know the intricacies of SQL in order to be able to write highly performant Java EE applications which involves persisting data to the relational database.

1. Presentation slides (1 hour)


2. Lab (1 hour)

Since the SQL tutorial from w3cschools.com seems to be the best tutorial, I have decided to use the material as the hands-on lab for the topic of SQL.  There is no homework on this topic.
3. Resources
4. Configuration paramater values for databases
  • Java DB (Derby)
    • jdbc:derby://localhost:1527/mydatabase (URL)
    • org.apache.derby.jdbc.ClientDriver (Driver class)
    • app (Username)
    • app (Password)
  • MySQL
    • jdbc:mysql://localhost:3306/test (URL)
    • com.mysql.jdbc.Driver (Driver class)
    • MySQL Connector/J  (Driver name)
    • no username
    • no password
    • org.hibernate.dialect.MySQLDialect
  • HSQL
    • jdbc:hsqldb:file:messagedb
    • org.hsqldb.jdbcDriver
    • sa
    • no password
    • org.hibernate.dialect.HSQLDialect
                                                                                                                             return to topics

JDBC

JDBC is standard Java API for accessing amdn manipulating relational database through SQL.  Even though Java persistence technologies such as EJB 3.0 Java Persistence API (JPA) or Hibernate could provide higher layer abstraction than JDBC, JDBC is still one of the most popular Java APIs for persisting data to the relational database.

1. Presentation slides (1 hour)


2. Lab (1 hour)
3. Resouces
                                                                                                                              return to topics





Web-tier Security




                                                                                                                  

Security Basics

Security is one of the most important areas of distributed computing. 


1. Presentation slides (1 hour)

                                                                                                                              return to topics

Web Application Security

1. Presentation slides (1 hour)

2. Lab (1 hour)
3. Resouces
                                                                                                                              return to topics

SSL

1. Presentation slides (1 hour)

2. Resources
                                                                                                                              return to topics

Web Application Security Threats and Counter-Measures

1. Presentation slides (1 hour)


2. Labs (1 hour)
  • 4010_websecthreats.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/websecthreats/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources
                                                                                                                              return to topics




Struts





MVC (Model-View-Controller) Framework

1. Presentation slides (1 hour)

                                                                                                                              return to topics

Struts Basics


In its short existence, Struts has established itself as a popular web application framework that is based on MVC (Model-View-Controller) architecture.  Even though new generation of Web application frameworks such as JavaServer Faces (JSF) and Tapestry are providing more advanced features, Struts is still being used widely in the field.

1. Presentation slides (1 hour)

2. Lab (2 hours)
3. Resources
                                                                                                                              return to topics

Step by Step Guide for Building a Simple Struts Application


1. Presentation slides (1 hour)

                                                                                                                              return to topics

Struts Sample Applications


1. Lab (2 hours)  - the contents will be updated in the future
  • 4207_strutsexamples.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/strutsexamples/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
                                                                                                                              return to topics

Struts Tags


1. Presentation slides (1 hour)

2. Labs (2 hours)  - the contents will be updated in the future
  • 4209_strutstags.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/strutsttags/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
                                                                                                                              return to topics

Struts Advanced


1. Presentation slides (1 hour)

2. Labs (2 hours) - they are not ready yet!
  • 4209_strutsadv.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/strutsadv/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
                                                                                                                              return to topics

Struts Validation Framework

1. Presentation slides (1 hour)


2. Lab (1 hour) - the contents will be updated in the future
  • 4210_strutsvalidator.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/strutsvalidation/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
                                                                                                                              return to topics

Tiles Framework

1. Presentation slides (1 hour)


2. Lab (1 hour)  - the contents will be updated in the future
3. Resources
                                                                                                                              return to topics

Struts Testing, Debugging, Logging, and Performance

1. Presentation slides (1 hour)


2. Lab (1 hour)
  • 4220_strutstestcase.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/strutstestcase/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources
                                                                                                                              return to topics

Struts Best Practices

1. Presentation slides (1 hour)

2. Best practices

                                                                                                                              return to topics

Struts and Databases

1. Presentation slides (1 hour)


2. Lab (1 hour)
  • 4222_strutsdatabase.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/strutsdatabase/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources
                                                                                                                              return to topics


Struts Security

1. Presentation slides (1 hour)




                                                                                                                              return to topics




JavaServer Faces (JSF)





Building "Hello World" JSF applications


This is to build and run a simplest possible JSF application step by step and make sure the software is working correctly.

1. Lab  (1 hour)
  • 4101_jsfhelloworld.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfhelloworld/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

                                                                                                                    return to topics

Step by step for building "Guess a Number" JSF application

You are going to build a simple "Hello World" sample JavaServer Faces (JSF) application exercising the basic features of a typical MVC-based Web application framework of JSF architecture such as request dispatching, navigation, event handling, and so on.  These features will be more clearly explanined in the following presentation - JSF Basics - but the goal is to build an application first and see how it works.


1. Presentation slides

2. Lab  1 - Do Exercise 1 & 2! (1 hour)

                                                                                                                    return to topics


JSF basics

The basic concepts of JSF architecture and features will be discussed.

1. Presentation slides (1.5 hour)

2. Resources

                                                                                                                    return to topics


JSF Component Model

1. Presentation slides (1.5 hour)

2. Lab (1 hour)

In JSF framework, a component tree gets constructed whenever a page (that contains JSF UI components are used) is accessed.  Since this component tree is a fundamental piece of JSF architecture, it is important to understand the concept of it.  This lab lets you access and display this component tree.
3. Resources


JSF tags

One popular markup language that your application will support is obviously HTML.  In this session, you will learn various JSF-based tags for the HTML browser client.


1. Presentation slides (1 hour)

2. Lab 1 (0.5 hour)
  • Review Examples of JSF HTML tags from JSF tags list from horstmann.com
3. Lab 2
4. Resources

                                                                                                                    return to topics


Managed Beans


1. Presentation slides (1 hour)

2. Lab 1 - Do the exercise 3 (1 hour)
  • 4104_jsfguessnumber.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfguessnumber/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources

                                                                                                                    return to topics


Navigation

1. Presentation slides (1 hour)

2. Lab 1 - Do the exercise 4 (1 hour)
  • 4104_jsfguessnumber.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfguessnumber/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Lab 2
  • 4129_jsfnavigation.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfnavigation/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
4. Resources

                                                                                                                    return to topics


Event model

1. Presentation slides (1.5 hour)  - todo: add differences between action and actionListerner in JSF 1.2

2. Lab (1.5 hour)
3. Resources


                                                                                                                    return to topics

Life-cycle and PhaseListener

1. Presentation slides (1.5 hour)

2. Lab 

3. Resources

                                                                                                                    return to topics

Immediate Attribute

1. Presentation slides (0.5 hour)

2. Lab 

3. Resources

                                                                                                                    return to topics

Styling with CSS

1. Presentation slides (1.5 hour)

2. Lab

3. Resources

                                                                                                                    return to topics

Validation

1. Presentation slides (1.5 hour) - todo: make sure all validation strategies are covered

2. Lab 1 - Do the exercise 5! (20 minutes)
3. Lab 2
3. Resources

                                                                                                                    return to topics


Client-side Vadliation

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StarOffice file
2. Lab

3. Resources

                                                                                                                    return to topics

Converter

1. Presentation slides (1.5 hour) - todo: list all built-in converters

2. Lab
  • 4125_jsfconverter.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfconverter/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources

                                                                                                                    return to topics


Data Table

1. Presentation slides (1.5 hour)

2. Lab
  • 4123_jsfdatatable.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfdatatable/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources

                                                                                                                    return to topics

JSF and Persistence (JPA)

1. Presentation slides (1.5 hour)

2. Lab
  • 4133_jsfjpa.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfjpa/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources

                                                                                                                    return to topics

Walk-through of CarStore Sample Application

1. Presentation slides (1.5 hour)

2. Lab 
  • 4111_jsfcarstore.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfcarstore/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

                                                                                                                    return to topics


Walk-through of BookStore6 Sample Application


Java EE 5 tutorial comes with sample JSF application called bookstore6 in the form of NetBeans project.

1. Lab 
  • 4119_jsfbookstore.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfbookstore/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

                                                                                                                    return to topics


Building Some JSF Sample Applications


1. Lab
  • 4102_jsfsimpleapps.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfsimpleapps/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

                                                                                                                    return to topics

Tiles

1. Presentation slides (1.5 hour) - todo: How tiles are integrated with JSF

2. Lab 
  • 4124_jsftiles.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsftiles/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

3. Resources

                                                                                                                 return to topics

NetBeans Visual Web Pack Basics

1. Presentation slides (1.5 hour)

2. Lab 
3. Resources

                                                                                                                 return to topics

NetBeans Visual Web Pack Advanced


1. Lab 
  • 4136_jsfvisualjsf.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfvisualjsf/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
2. Resources

                                                                                                                 return to topics


Building a JSF Component

1. Presentation slides (1.5 hour)

2. Presentation slides - this is JavaOne 2007 presentation by Kito Man

3. Lab 1
  • 4113_jsfcomponentbuild.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfcomponentbuild/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

4. Lab  2
  • 4430_jsfcustom.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfcustom/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)


                                                                                                                    return to topics



RenderKit

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StarOffice file
2. Lab  
  • 4109_jsfrenderkit.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfrenderkit/index.html to proceed) Note: You should do this lab whil
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

Shale Dialog

1. Presentation slides (1.5 hour)

2. Lab
  • 4131_jsfshale.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfshale/index.html to proceed) Note: You should do this lab whil
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Lab 2
4. Resources


                                                                                                                              return to topics

Facelets

1. Presentation slides  (originally by Çagatay Çivici, modified slightly by Sang Shin)

2. Lab 1 (1.5 hour)
  • 4106_jsffacelets.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsffacelets/index.html to proceed) Note: You should do this lab whil
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Lab 2 (1 hour)
  • 4107_jsffaceletscdstore.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsffaceletscdstore/index.html to proceed) Note: You should do this lab whil
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
4. Lab 4 (1 hour) - Optional
5. Resources
                                                                                                                              return to topics

Spring Web Flow and JSF

1. Presentation slides (1 hour)


2. Presentation slides (1.5 hour) - This is JavaOne 2007 presentation
3. Lab  
4. Resources

                                                                                                                    return to topics

Spring framework and JSF integration

1. Presentation slides (1.5 hour) - This is JavaOne 2007 presentation by Kito Mann and Chris Richardson

2. Lab
4. Resources

                                                                                                                    return to topics



Seam

1. Presentation slides (1.5 hour) - This is JavaOne 2007 presentation by xxx

  • PDF: 1 slide per page
  • Video
2. Lab  
  • core-seam
3. Resources

                                                                                                                    return to topics


JSFTemplating

1. Presentation slides (1.5 hour) - This is JavaOne 2007 presentation by xxx

  • PDF: 1 slide per page
  • Video
2. Lab  
  • core-seam
3. Resources

                                                                                                                    return to topics

Building Useful Components (from Core JSF book)

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • Star Office
2. Lab  1
  • 4115_jsfcomponentbuild2.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfcomponentbuild2/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Lab 2
  • core-popup
  • core-resolver
  • core-error
  • core-applet


Tomahawk JSF Components (from MyFaces Apache project)

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • Video
2. Lab 
  • 4116_jsftomahawk.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsftomahawk/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources

                                                                                                                    return to topics

ADF components

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • Video
2. Lab
  • 4117_jsfadf.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfadf/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

3. Resources

                                                                                                                    return to topics


Misc. 3rd party JSF components

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StarOffice
2. Lab  
3. Resources

                                                                                                                    return to topics



Woodstock components

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StarOffice
2. Lab
  • 4118_jsfwoodstock.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfwoodstock/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

3. Resources

                                                                                                                    return to topics

Building Woodstock components

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StarOffice
2. Lab
  • 4118_jsfwoodstock.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfwoodstock/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

3. Resources

                                                                                                                    return to topics

Woodstock components and Ajax

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StarOffice
2. Lab
  • 4118_jsfwoodstock.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfwoodstock/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

3. Resources

                                                                                                                    return to topics


Building Ajax applications using JSF

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StarOffice
2. Lab
  • 4121_jsfajax.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfajax/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources

                                                                                                                    return to topics

DynaFaces


1. Presentation slide - Introduction to DynaFaces

2. Presentation slide - Using DynaFaces

3. Labs (2 hours)
3. Resources

                                                                                                                    return to topics


Ajax4jsf

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StartOffice
2. Lab 
  • 4122_jsfajax4jsf.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfajax4jsf/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

3. Resources

                                                                                                                    return to topics

JSF and Portlets

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StartOffice
2. Lab 
  • 4122_jsfajax4jsf.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/jsfajax4jsf/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources


                                                                                                                    return to topics

Testing tools

1. Presentation slides (1.5 hour)

  • PDF: 1 slide per page
  • StarOffice
2. Lab  
3. Resources

                                                                                                                    return to topics

Localization

1. Presentation slides (1.5 hour)

2. Lab  
3. Resources

                                                                                                                    return to topics





EJB 2.x (as part of J2EE 1.4)





EJB 2.x Overview

1. Presentation slides (1 hour)

2. Lab and homework (2 hours) - work in progress
  • 4281_j2eeejb2.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/ajaxshale/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
                                                                                                                              return to topics

Message Driven Bean (MDB)


                                                                                                                              return to topics

JMS

1. Pre-class reading

2 Presentation slides (1 hour)

3. Lab and homework (2 hours)
  • 4281_j2eejms.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/ajaxshale/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
4. Resources

                                                                                                                              return to topics

Session Bean (EJB 2.x)

1. Presentation slides (1 hour)

                                                                                                                              return to topics

Entity Beans (EJB 2.x)

1. Presentation slides (1 hour)

                                                                                                                              return to topics





Java EE 5 & EJB 3.0 & JPA






Introduction to Java EE 5


Java EE 5 is a major major release in the evolution of Java EE with lots of new features. It has a huge emphasis on the ease of development.  The ease of development features include using annotations instead of deployment descriptors, simplified EJB development, use of dependency injection for accessing resources, Java Persistence API (JPA), and annotation based Web service development.  The goal of this presentation and hands-on lab is to give you overall sense of the Java EE features.

1. Presentation slides  - Java EE 5 Overview (1 hour)

2. Presentation slides - Java EE 5 support in NetBeans 5.5

3. Resources
                                                                                                                    return to topics

EJB 3.0 Enterprise Beans


The new EJB 3.0 API makes software development easier by reducing and simplifying the amount of work required from the developer. In other words, fewer classes and less code. This is possible because more of the work is now performed by the container.

1. Presentation slides (1 hour)

2. Presentation slides 2

This is JavaOne 2006 presentation by Michael Keith and Linda DeMichiel, Peter Walker, and Ron Ten-Hove.  You have to register to Sun Developer Network in order to watche the video.
3. Lab and homework
4.  Resources
                                                                                                                    return to topics

Java Persistence API (JPA) Basics


The Java EE 5 platform introduces the new Java Persistence API, which was developed as part of JSR-220. The Java Persistence API can also be used outside of EJB components, for example, in web applications and application clients, and also outside the Java EE platform, in Java SE applications. 

1. Presentation slides 1 (1 hour)

2. Presentation slides 4

This is JavaOne 2006 presentation by Michael Keith and Linda DeMichiel, Peter Walker, and Ron Ten-Hove.  You have to register to Sun Developer Network in order to watche the video.
3. Lab and homework
4. Resources

                                                                                                                              return to topics

Java Persistence API (JPA) Mapping


1. Presentation slides
2. Lab  (1 hour)

3. Resources

                                                                                                                             return to topics


JPA Query Language


1. Presentation slides
2. Lab  (1 hour)
  • 3412_javaee5jpajpql.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/javaee5jpajpql/index.html to proceed) 
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

                                                                                                                             return to topics

JPA Advanced


1. Presentation slides
2. Lab  (1 hour)
  • 3412_javaee5jpajpql.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/javaee5jpajpql/index.html to proceed) 
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources

                                                                                                                             return to topics

Java Persistence API (JPA) Transaction


1. Presentation slides
2. Presentation slides  2

This is JavaOne 2007 presentation by Michael Keith.  You have to register to Sun Developer Network in order to watche the video.
3. Presentation slides 3

This is JavaOne 2007 presentation by Rima Patel and Marina Vatkina.  You have to register to Sun Developer Network in order to watche the video.
         4. Lab  (1 hour)

                                                                                                                   return to topics





Design Patterns, Best Practices, and Performance Tuning





Java EE Design Patterns


1. Presentation slides (1 hour)


                                                                                                                              return to topics



Performance Tuning


1. Presentation slides (1 hour): Servlet Performance

2. Lab  (1 hour) using NetBeans Enterprise Pack
  • 5115_netbeansprofiler.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/javaswing/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)

                                                                                                                              return to topics

UML


1. Presentation slides - Object-oriented Concepts

2. Presentation slides  - OO Analysis

3. Presentation slides -  OO Design

4. Presentation slides - UML

5. Lab  (1 hour) using NetBeans Enterprise Pack

  • 8105_nbeuml.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/nbeuml/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
                                                                                                                            return to topics




Other Web-tier Frameworks




Shale

1. Presentation slides (1 hour)

2. Lab and homework (2 hours) - work in progress
  • 4261_webshale.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/webshale/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resources

                                                                                                                              return to topics



Echo2


1. Presentation slides

  • PDF: 1 slide per page
  • StarOffice file
2. Lab 2 (2 hours) - work in progress
  • 4282_ajaxecho2.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/ajaxecho2/index.html to proceed)
  • Online lab document (This is the same document you will find in the hands-on lab zip file)
3. Resouces
                                                                                                                              return to topics

Tapestry


1. Presentation slides

  • PDF: 1 slide per page
  • StarOffice file
2. Resources

                                                                                                                              return to topics


Wicket


1. Presentation slides

  • PDF: 1 slide per page
  • StarOffice file
2. Resources


                                                                                                                              return to topics

Comparing various Java Web Application frameworks


1. Presentation slides

2. Resources

                                                                                                                              return to topics

 



Hibernate





Hibernate Step By Step


This session takes you through the basics of building a simple HelloWorld Hibernate application.  Even though you are building the simplest possible Hibernate application, you will get an exposure to the relatively complete concept of Hibernate.  You will also learn how to display context sensitive Java document on Hibernate classes.
                                                                                                                              return to topics

Hibernate Basics


In this session, you are going to learn the basic concepts of Hibernate including transaction demarcation, using DAO pattern, generating keys using different schemes, event handling, and session management.
                                                                                                                              return to topics

Hibernate Mapping


In this session, you are going to learn various mapping strategies including cadinalities (one to many relationship, many to many relationship), and how class hierarchy is represented in the database tables through inheritance strategies.
                                                                                                                              return to topics

Hibernate Support in NetBeans IDE 6.5


                                                                                                                              return to topics

Hibernate Query Language


In this session, you are going to learn how to perform query operations using Criteria Query API, Query By Example, HQL, and native SQL.

                                                                                                                              return to topics

Hibernate Transaction and Concurrency



                                                                                                                              return to topics

Hibernate Interceptors & Events - Work in progress




                                                                                                                              return to topics


Hibernate Join Fetch (N+1 Select Problem, Join Fetch, Lazy Fetch)


The fetch mode you choose in using Hibernate will have performance consequences especially if you fall into a trap of N+1 selet problem. In this session, you will learn the basic concepts of the fetch modes and also N+1 select problem and how to avoice it.

                                                                                                                              return to topics

Hibernate Caching


In this session, some of the advanced topics of Hibernate such as caching strategies will be talked about.

                                                                                                                              return to topics

Hibernate Annotation - work in progress


                                                                                                                              return to topics

Hibernate Best Practices - work in progress


                                                                                                                              return to topics






Spring Framework




Refactoring HelloWorld Application using Spring Framework


You are going to learn how to refactor the good old "HelloWorld" application in various ways including the usage of Dependency Injection (DI) scheme of the Spring framework.
                                                                                                                              return to topics

Spring Framework Dependency Injection Basics


Dependency Injection (DI) is the one of the foundation of the Spring framework.  You are going to learn how to use the basic usage of DI in this session.

                                                                                                                              return to topics

Spring Framework Dependency Injection Advanced


                                                                                                                              return to topics

Spring framework and Hibernate


                                                                                                                              return to topics


Spring framework and JPA


                                                                                                                              return to topics


Spring MVC


                                                                                                                              return to topics

Spring Validation, Data-binding, BeanWrapper, and Property Editor


  • Presentation
    • PDF: 1 slide per page
    • StarOffice 8 file
  • Lab
    • 4918_springmvc.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/springmvc/index.html to proceed)
    • Online lab document (This is the same document you will find in the hands-on lab zip file)
    • Homework
    • Change log
  • Resources
                                                                                                                              return to topics

Spring Web Flow


Spring Web Flow is a next generation Java web application framework that allows developers to model user actions as high-level modules called flows that are runnable in any environment.  The framework delivers improved productivity and testability while providing a strong solution to enforcing navigation rules and managing application state. 
                                                                                                                              return to topics

Spring Integration with Struts


                                                                                                                              return to topics

Spring Integration with JavaServer Faces (JSF)


                                                                                                                              return to topics

Spring AOP Basics


                                                                                                                              return to topics


Spring framework and J2EE (EJB and JMS)


                                                                                                                              return to topics

Spring framework and Web Services


                                                                                                                              return to topics

Spring framework and Transaction


                                                                                                                              return to topics

Spring and Testing


                                                                                                                              return to topics

Spring framework sample applications - PetClinic


  • Presentation
    • PDF: 1 slide per page
    • StarOffice 8 file
  • Lab
                                                                                                                              return to topics


Advanced Spring Framework


                                                                                                                              return to topics

Acegi Security with Spring framework


                                                                                                                              return to topics





Portlets and Portals




Portlet Basics -



                                                                                                                              return to topics






Struts 2




Struts 2 Basics


                                                                                                                              return to topics

Struts 2 and Other View Technologies


  • Presentation
    • PDF: 1 slide per page
    • StarOffice 8 file
  • Lab
    • 4221_struts2basics.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/struts2basics/index.html to proceed)
    • Online lab document (This is the same document you will find in the hands-on lab zip file)
    • Homework
    • Change log
  • Resources
                                                                                                                              return to topics

Struts 2 and Ajax


  • Presentation
    • PDF: 1 slide per page
    • StarOffice 8 file
  • Lab
    • 4221_struts2basics.zip (Unzip it in a directory of your choice and read lab document from <unzip-directory>/struts2basics/index.html to proceed)
    • Online lab document (This is the same document you will find in the hands-on lab zip file)
    • Homework
    • Change log
  • Resources
                                                                                                                              return to topics

Sun Provisioning Server (SPS)


                                                                                                                              return to topics






GlassFish




GlassFish Overview


1. Presentation slides (1 hour)

2. Presentation slides 2

This is from JavaOne 2006 presentation.  You have to register to Sun Developer Network in order to watche the video.

3. Labs
  • Building GlassFish using Netbeans tutorial from netbeans.org

                                                                                                                              return to topics


GlassFish V3



                                                                                                                              return to topics

SailFin Project



Posted by 1010