2. Agenda
• Flavors of Java
• Overview of J2EE
• Advantages of J2EE
• Key considerations
• Parting thoughts
3. Flavors of Java
• Java 2 Micro Edition (J2ME)
– Java on devices
• Java 2 Standard Edition (J2SE)
– Core API, compiler, runtime
environment
• Java 2 Enterprise Edition (J2EE)
– Enterprise-class service specifications
4. Overview of J2EE
• Family of enterprise-class service
specifications
– APIs
• Reference implementation
– Working server and application
• Compatibility test suite
– 6,000 tests
– Two certified application servers
• BEA WebLogic 5.1 and iPlanet App Server 6.0
• Blueprints
– Architectural best practices
6. J2EE specifications
• Java Transaction API (JTA)
– API for controlling transactions
• Java Transaction Service (JTS)
– Service that controls transactions
• Java Naming and Directory Interface
(JNDI)
– API to “lookup” services
• Java Database Connectivity (JDBC)
– Access to RDBMS
7. J2EE Specifications
• JavaMail
– E-mail
• RMI over IIOP (CORBA compliance)
– CORBA/Java interoperability
• XML support
• Java Message Service (JMS)
– Synchronous and asynchronous
– Point-to-point/queue-based and
public/subscribe
8. Advantages of J2EE
• ‘Bilities
– Reusability, manageability, extensibility,
scalability, stability, flexibility
• Full complement of application services
• More robust applications
– No need to build plumbing
• Faster time to market
• Architectural flexibility
9. Advantages of J2EE
• Fairly mature technology
– Several years old for most specs
– Multiple releases of app servers
• Platform independence
– No vendor lock-in – sort of…
– Investment protection
• Wealth of technologies and products
• Competitive environment
• Relatively easy to find talent
10. Key considerations
• J2EE is not a true standard
– Owned by the Java Community Process
(JCP)
• J2EE evolves quickly
– Difficult to keep developers up-to-date
– Potential quality issues with products
• Complicated set of services
– Lots of moving parts
– Requires architecture talent and experience
• Hard to find “one throat to choke”
11. Parting thoughts
• J2EE is the way to build enterprise-
class applications
• Systems development principles
still apply
• Find people who have “been there,
done that”