J2EE Programming Topics
The following is the collection of advanced J2EE topics.
They are grouped into 3 categories based on the importance to a typical
J2EE developer as
following. (This is my own perception. Please let me know if you
think otherwise.)
Of course, things are always subject to change.
- Advanced web-tier
technologies
- JSP Custom Tags
- JSP 2.0 in
J2EE 1.4 (1
hour)
- JSTL
- Servlet 2.4
in J2EE 1.4
(1 hour)
- Web application
frameworks
- Web Application
Framework (MVC
and Model 2 architecture)
- Apache
Struts
- Resource sites
- Struts best practices
- Tools and utilities
- Advanced Struts
- JavaServer
Faces (JSF)
- JSF specification and API Javadoc
- Sample codes
- carstore, components, guessNumber sample
codes in J2EE 1.4 SDK
- <J2EE1.4_install>/samples/jsf (for
example, \Sun\AppServer\samples\jsf under Windows)
- Resource sites
- FAQ and Forums
- Comparison
of Struts, JSF, Sun One Application Framework, and others ...
- Other Web Application Framework
- Portal
Server and Portlet architecture
- Artitles
- Java Portlet (JSR-168)
- WSRP (Web Services for Remote Portlets)
- Portal
Server Implementations
- Sun Java System Portal server (Sun ONE Portal
server)
- Portlet tools
- Portlet libraries
- Presentations
- Portlet example codes and tutorials
- Demos
- Persistence
- J2EE persistence
- JDBC
- Online tutorials
- Specifications
- Recent JSR efforts
- Object-Relational Mapping
- JDO
- Disconnected dataset
- EJB QL
- EJB 2.1 in J2EE 1.4 - No
- Advanced Entity Beans
- PartSuppliers
Mini-Tutorial in developers.sun.com - this tutorial explains how to
use entity beans including relationships between entity beans using Sun
Java Studio IDE
- Entity Beans or not
- For EntityBeans
- Against EntityBeans
- Advanced
J2EE Security
- Web-tier security
- J2EE Security Best Practice Guidelines
- JAAS
- Single Sign On within an Enterprise
- JACC in J2EE 1.4 - No
- Firewall and EJB - No
- Identity Management and Identity server
- Best
practices, Design patterns
- J2EE
best practices
and design patterns
- AntiPatterns and Refactoring
- J2EE Blueprint and Java Pet Store, JPetStore,
Adventure
Builder -
Maybe
- Servlet and JSP best practices - Maybe
- JSP best practices
- EJB best practices and design patterns -
Maybe
- Design and development methodology for building
J2EE-based
application - Maybe
- Design patterns
- theServerSide.com symposium coverage article
- Tools that support design patterns
- Performance
- JSP and Servlet performance
- EJB performance - Yes
- JMS performance - No
- JDBC performance - No
- App Server performance - Maybe
- Profiling
Technologies and Tools
- IDEs
and
Development Tools
- J2EE IDE's
- NetBeans
- Eclipse
- IntelliJ
- Sun Java Studio
- Sun Java Studio Standard Edition (SE)
- Sun Java Studio Enterprise Edition (EE)
- Sun Java Studio Creator
- BlueJ
- Macromedia ColdFusion - No
- Version control - Maybe
- .Modeling tools - Yes
- Java performance analyzers
- UML
and UML Modeling tools
- Emerging
J2EE Development Technologies
- Xdoclet
- Aspect-oriented programming
- Debugging,
Testing, Logging
- Debugging and testing JSP and Servlet
application (1 hour) -
Maybe
- Debugging and testing of JSP and Servlet
application using
Sun ONE Studio 5
- Debugging and testing EJB application - Maybe
- JUnit -
Maybe
- Logging(Log4J)
-Maybe
- Using
J2EE Debugger article
- J2EE
App
Server Products
- Sun Java System App server Platform Edition
(PE) 8
- Sun ONE Architecture and Products Overview -
Maybe
- App Server Product Features - Maybe
- Other App Servers (WebSphere, WebLogic, JRun)
- Maybe
- Web
Services support over J2EE platform
- Web
Services Programming
using XML and Java Technology 1-day
seminar
- J2EE and Web Services Overview
- J2EE 1.4 Overview
- XML
support
over J2EE
- J2EE and XML (1 hour)
- Apache Cocoon (1 hour)
- JAXB 1.0 (1 hour) - No
- Management,
Administration, Deployment
- J2EE Management (JSR-77) in J2EE 1.4 (1
hour)
- J2EE Deployment (JSR-88) in J2EE 1.4 (0.5
hour) - No
- JMX (1 hour) - Maybe
- Connector
Architecture
- Connector architecture(1 hour)
- Connector Architecture 1.5 in J2EE 1.4 (1
hour)
- Integration,
B2B, Middleware
- Middleware Architecture (App server, Portal
Server, Identity
Server, ..)
- Underlying
communication schemes
- RMI over IIOP (0.5 hour)
- JNDI - Maybe
- CORBA and J2EE
- Real-life
Usage of J2EE
- J2EE
versus .NET and J2EE and .NET interoperability
- PetStore
- Case Study
- Interoperability
- Client side technologies
and Provisioning
- Java Web Start (1 hour)
- Java Desktop Network Components (JDNC)
- J2EE client provisioning (1 hour)
- Portability and
Compatibility
- J2EE Application Verification Kit(AVK) (1
hour)
- J2EE
future roadmap (Yes)
- Metadata and J2EE
- J2EE 1.5
- Scripting and J2EE
- JDBC 4.0
- Internationalization
and localization (1 hour)
Opportunities
to
participate in contents (presentation slides) creation and delivery
- Please read relevant information in the
class webpage of
"J2EE Programming (with Passion!)"
Things we are NOT
going
to cover
Software we are
going to use for
homeworks and class projects
- You are going to need the following software for
taking this
course. Please be warned, this could change as we move along.
- J2EE
1.4
SDK
- This is what we are going to use from
now on (03/01/2004) for both Web-tier programming and EJB programming
- In previous sessions, we used Java Web
Services Developer
Pack
1.3 (Java WSDP) for Web-tier programming and J2EE 1.3 SDK for EJB
programming. Now since most of Java WSDP 1.3
functionalities are
now part of J2EE 1.4 SDK, we don't have to use them seperately.
- J2EE
1.4 Tutorial
A few words on using App Server that is
not chosen for the class
- Please read relevant information in the
class webpage of
"J2EE Programming (with Passion!)"
Prerequisites
- Basic understanding on J2EE technologies,
especially Servlet,
JSP, EJB
Textbooks &
Reference books &
Reading Materials
- There is no designated textbook for this
course. Instead,
we are going to use publicly available online materials.
Blogs I read