Design Java/JEE Applications Training
- Participants / Prerequisite
The Java platform has reached maturity at the server level with the JEE standard. The JEE platform has been in existence for several years now and its reliability is proven. It has demonstrated its robustness for large-scale applications needing to offer high levels of availability. After a presentation of the components of the JEE standard, this seminar analyses the essential points related to designing and deploying a multi-tier transactional JEE architecture. After this course, the participants will be able to determine which the architectures correspond best to their needs in terms of performance and availability. They will also be able to evaluate the different commercial and Open Source products on the market.
- The Java platform and virtual machines.
- Comparison with the other environments.
- The different implementations.
- The different tiers.
- The components: advantages and disadvantages.
- Access to the information system.
- From the transactional need: definition and implementation.
- Issues regarding distributed transactions.
- Impact on performance.
- Interoperability tools.
- Evolution of standardisation.
- The XML galaxy: what, why and how.
- Database integration.
- The mainframe and Java.
■ Java's special features
■ Distributed architecture
■ Transactional architectures
■ Java integration offer
■ Related technologies
- Web Clients. Applets. Mobile telephone and "fat" client applications.
- HTML and other presentation services: current and future.
- XML's positioning.
- Specialised Java offer.
- Alternatives offered by JEE.
- Integration to the existing system.
- Identifying the metrics and the types of measurements.
- How to measure the performance of a multi-tier distributed architecture.
- High availability, resistance to breakdowns and the different levels of clustering.
- Testing tools.
- Presentation and benefits of the different models.
- Case studies.
■ The JEE "clients"
■ Business components
■ Performance and tests
■ Design Patterns
- Role and contributions: reports, multi-threading, transactions, pooling and re-use.
- JEE security model.
- Transaction support in JEE.
- JNDI service for access to resources.
- Integrating persistence.
- Positioning of the commercial and Open Source offers for the various types of containers.
- Deployment packets: Web modules, EJB, connectors and clients.
- Enterprise JavaBeans technology.
- The various types of EJBs and their role.
- Persistence either programmed (BMP) or provided by the container (CMP).
- The various architectures: advice and lessons learned.
- Standardised transaction support with JTA.
- Standardisation of the access to the company's resources with Java Connector Architecture (JCA).
- Interaction with other component systems (Corba...).
- Importance of a standard for authentication and authorisation (JAAS).
- Standardised database access with JDBC.
- Interfacing the object model with the relational model.
- Optimisation and persistence service.
- Accessing directories (LDAP) with JNDI and fundamental role in JEE.
- Extending Web servers with servlets.
- The Web presentation layer and its alternatives (JSP, JSF, etc).
- Existing models and benefits of frameworks (MVC, Struts, etc).
- The Java message service for reliable asynchronous applications with few connections.
- Supports for various types of messages with the Java Activation Framework (JAF).
- The different XML APIs
- The transport protocol SOAP
- Presentation of Web services.
- Advantages and disadvantages of an XML protocol
- Interoperability of Web Services.
- UDDI and ebXML standards.
■ The components
■ Accessing databases
■ Developing Web applications
■ Message-oriented architectures
■ XML support
- Purchasing and installing production tools.
- Choice of suppliers for products and tools.
- Developing JEE clients.
- Component suppliers.
- Assembling applications.
- Deploying applications.
- Role of the administrator.
- IBM Websphere, BEA WebLogic, Borland AppServer, Oracle iAS, Sun One App Server.
- Jboss, Apache Tomcat, Open JMS, Swift MQ, Sonic MQ, Versant, Enjin Toplink 4 java, etc.
- Presentation of the development environment: Eclipse. Roles of JUnit and Apache ANT in the development cycle. UML extensions.
- Important criteria for choosing a JEE application server and a development environment.