This is an example of a simple banner

Training: Developing with EJB3 in Java EE

Ref. EJB
Duration:
4
 jours
Exam:
Optionnel
Level:
Intermédiaire

EJB 3 Development Training in Java EE


The new EJB3 architecture is designed to greatly simplify the development of Enterprise JavaBeans, which today represents the most advanced solution in distributed architecture. It enables the development of business components that can be addressed both by a web service and by an organization’s traditional IT systems. This approach facilitates the creation of robust, scalable applications aligned with the strategic needs of modern enterprises.

Understanding the importance of EJB 3 in business

Through a logical progression, this EJB 3 training covers all the essential aspects of development in Java EE. You will learn how to leverage different types of beans, manage client-server communication, and secure your applications. The course content is built around concrete examples and real-world use cases, ensuring immediate understanding and effective hands-on practice.

Participant Profiles

  • Application developers
  • IT managers
  • Architects
  • Project managers
  • Engineers

Objectives

  • Manage the development of EJB 3 and its integration into an enterprise application

Prerequisites

  • Knowledge of Java language
  • knowledge of servlets and JSP is a plus
  • Knowledge of EJB 2.x is a plus

Course Content

Module 1: Fundamental Architectural Concepts

  • What is architecture?
  • Architecture vs. design
  • Quality of Service (QoS)
  • Common mechanisms
  • Architectural description
  • What architecture is not
  • The need for architecture
  • The architect
  • Roles of the architect
  • Skills of the architect

Module 2: Guidelines for Designing a System Architecture

  • Security risks
  • Performance and scalability risks
  • Availability and complexity risks
  • Compatibility and control risks
  • Network considerations
  • Latency and bandwidth
  • Reduce the number of network calls
  • Reduce the size of network calls
  • Firewall traversal
  • Secure communication
  • Distributed object technologies
  • What is a transaction?
  • Bank example
  • Multiple users sharing data
  • ACID properties of transactions
  • Architecture
  • Reference architecture
  • Patterns
  • Development methodologies
  • Open standards
  • Frameworks

Module 3: Quality of Service Requirements

  • What are quality of service requirements?
  • Quality of service and design
  • Quality of service inventory
  • Performance
  • Scalability
  • Reliability
  • Availability
  • Extensibility
  • Maintainability
  • Usability (operability)
  • Security
  • Cultural adaptability
  • Portability
  • Testability
  • Usability
  • Recoverability
  • Prioritize QoS requirements
  • Review QoS requirements for trade-off opportunities
  • Quality of service reviews

Module 4: Software Architecture Layers

  • System architecture
  • Good architecture
  • From cave drawings to the modern day
  • Evolution of information systems today
  • Client-server computing
  • Client-server advantages / disadvantages
  • Multi-tier architectures
  • Single-tier architecture
  • Single-tier pros / cons
  • Two-tier architecture
  • Two-tier advantages / disadvantages
  • Three-tier architecture
  • Three-tier advantages / disadvantages
  • N-tier architecture
  • N-tier advantages / disadvantages

Module 5: Managing Client-Side Considerations

  • Understand client concerns
  • Types of clients
  • JEE client responsibilities
  • User interface presentation
  • User input validation
  • Communicating with the server
  • Understand client-side security
  • Compare / contrast user interface devices
  • Apply reuse at the client level
  • Strategies for deploying Java desktop applications

Module 6: Java EE Technology Servers

  • Types of servers in Java EE
  • Java EE servers
  • Java EE containers
  • Enterprise information systems
  • ERP systems
  • Mainframe transaction processing systems
  • Relational and legacy databases
  • Legacy integration
  • Selecting a Java EE server
  • Packaging and deployment definitions
  • Roles and responsibilities
  • EJB modules
  • Packaging the EJB module
  • EJB module recommendations
  • Web modules
  • Web module recommendations
  • Deployment descriptors

Module 7: Java EE Technologies

  • Servlets
  • The web container
  • Servlet API
  • Session management
  • Servlet threading issues
  • JSP (JavaServer Pages)
  • How JSP works
  • JSP elements
  • Using JavaBeans in JSP
  • Custom tags
  • Filters
  • Filters and the processing pipeline
  • Filtering API
  • Uses for filters
  • Event listeners
  • What are EJBs?
  • Main characteristics of EJBs
  • EJB architectural components
  • EJB container
  • EJB container – persistence
  • EJB container – transactions
  • Enterprise JavaBeans
  • Session beans
  • Entity beans
  • Message-driven beans
  • EJB classes and interfaces
  • EJB container – relationships
  • How remote EJBs work
  • Remote or local EJBs
  • Web services
  • Implementing web services in Java EE
  • Deploying web services in J2EE
  • JCA (Java EE Connector Architecture)
  • Application-level contract
  • System-level contracts

Module 8: Java EE Technology Choices

  • Client session state
  • Client-managed state
  • Web-tier-managed state
  • EJB-tier-managed state
  • Business objects
  • When to use EJB
  • When to use entity beans
  • CMP vs. BMP
  • Types of clients
  • Web browser clients
  • Java clients
  • Model-View-Controller
  • MVC in the web tier
  • Web application frameworks
  • Web presentation overview
  • Java presentation overview
  • Message-oriented middleware and JMS
  • Messaging domains
  • MOM characteristics
  • Advantages of asynchronous communication
  • Advantages of synchronous communication

Module 9: Java Connector Architecture (JCA)

  • JCA overview
  • Resource adapter
  • System contracts
  • Outbound contracts
  • Inbound contracts
  • Lifecycle contracts
  • Common Client Interface (CCI)
  • Benefits of JCA
  • Resource adapter adapter
  • Connection management
  • Transaction management
  • Transaction scenario
  • Client interaction

Module 10: SOA Concepts

  • Service-oriented architecture
  • Componentization and reuse
  • Benefits of service orientation
  • Defining SOA
  • Aligning the business
  • What is a service?
  • Service actors
  • Service layering
  • Service-orienting the enterprise
  • Service-oriented thinking

Module 11: Introduction to JAX-WS

  • JAX overview
  • Origins of JAX-WS
  • JAX-WS architecture and tools
  • Providing a service
  • Service source (option 1)
  • Service Java
  • Service source (option 2)
  • Calling a service
  • Client source (option 1)
  • Client source (option 2)
  • Advanced features

Module 12: Java EE Security

  • JEE authentication mechanisms
  • Basic authentication
  • Form-based authentication
  • Client certificate authentication
  • JEE authorization
  • Declarative security on web resources
  • Programmatic security on web resources
  • Security role reference
  • Defining security roles with annotations
  • Delegation
  • Declarative security on EJB resources
  • Protecting beans using annotations
  • Protecting beans using the deployment descriptor
  • Programmatic security on EJB applications
  • Delegation

Module 13: Web Services Security (WS-Security)

  • The challenges
  • Public Key Infrastructure (PKI)
  • Digital signature
  • Certificates
  • Web services security overview
  • SOAP message security
  • Message integrity
  • Message confidentiality
  • Example of symmetric encryption
  • Authentication using an identity token
  • Authentication
  • Transport-level security
  • Audit trail
  • Identity assertion using SAML
  • SAML SOAP example

Module 14: Prototypes

  • What is a prototype?
  • Conceptual prototypes
  • Architectural prototypes
  • Benefits of prototyping
  • Deciding whether to build a prototype
  • Prototypes and the software development lifecycle
  • Prototype roles and responsibilities
  • Throw-away vs. evolutionary prototypes
  • Spikes
  • Testing a prototype

Module 15: Describing and Evaluating Software Architecture

  • Architecture description
  • Architectural views
  • Sub-systems
  • Layers
  • Components
  • Decomposing the system into components
  • Software partitioning strategies
  • Dependency management
  • Component diagrams
  • Deployment diagrams
  • Multi-tier architectures
  • Managing complexity
  • Evaluating the architecture

Appendix A: Data Transfer in Distributed Computing

  • Data transfer in Java local computing
  • Data transfer in Java distributed computing
  • Comparison of local vs. distributed data transfer

Appendix B: Transactions

  • Need for transactions
  • Transactions
  • ACID properties
  • Transaction components
  • Distributed transactions
  • Distributed transaction components – two-phase commit
  • Java Transaction API (JTA)
  • Object transaction
  • EJB transaction basics
  • Transaction propagation
  • Transaction outcome
  • Container-managed transaction
  • Container-managed transaction settings
  • Interacting with container-managed transactions
  • Support for transaction attributes
  • Bean-managed transaction
  • Client-managed transaction
  • Transaction isolation
  • Isolation level

Appendix C: Business Tier and Integration Patterns

  • Business delegate pattern
  • Data transfer object pattern
  • DTO example (output)
  • DTO example (input)
  • DTO’s role in MVC
  • Access beans
  • Types of access beans
  • Data Access Bean
  • Data class programming model
  • Access Bean constructor
  • Generating access beans
  • Generating a data class
  • Generating an EJB factory
  • Using EJB factory and data class
  • Removing the access bean
  • Value object pattern
  • Multi-valued objects
  • Best practices: deriving EJB from the value object
  • Composite entity pattern
  • Class diagram
  • How the client interacts
  • Value object assembler
  • Value list handler
  • Design considerations
  • Service locator
  • Data Access Object (DAO)
  • DAO implementation guidelines
  • Service activator
  • MDB – integrating JMS and EJB
  • Message-driven beans differ from other EJBs
  • Message beans are stateless
  • Message-driven bean interfaces
  • Message counter
  • Class message counter
  • Message processing
  • Deployment descriptor entry

Documentation

  • Digital courseware included

Lab / Exercises

  • During the course participants are encouraged to actively participate in the learning experience by running example files during lectures and performing coding challenges during labs.
  • Each lab session allows you to compare your solution to the instructor’s

Exam

  • This course prepares you to the 1Z0-895 : Java Platform, Enterprise Edition 6 Enterprise JavaBeans Developer Certified Expert. If you wish to take this exam, please contact our secretariat who will let you know the cost of the exam and will take care of all the necessary administrative procedures for you

Complementary Courses

Eligible Funding

ITTA is a partner of a continuing education fund dedicated to temporary workers. This fund can subsidize your training, provided that you are subject to the “Service Provision” collective labor agreement (CCT) and meet certain conditions, including having worked at least 88 hours in the past 12 months.

Additional Information

An essential framework for distributed applications

Enterprise application development today requires solutions capable of handling the growing complexity of systems. EJB 3 provides an effective answer with a simplified architecture based on Java EE standards. It enables the creation of modular, testable, and reusable business components, reducing maintenance costs and improving code quality. This technological framework ensures consistency in large-scale projects and offers better integration with existing information systems.

Tangible benefits for development teams

EJB 3 offers a clear model for managing transactions, security, and data persistence. Developers can therefore focus on business logic without getting lost in overly complex technical layers. This separation of responsibilities boosts productivity and reduces errors. Teams also benefit from an environment where business rules are centralized, making it easier to evolve applications over time.

For example, in the banking sector, where transactions must comply with ACID properties, EJB 3 ensures optimal reliability. In an e-commerce environment, it supports thousands of simultaneous connections while maintaining high availability. These cases illustrate the added value of this technology in industries where robustness and security are critical.

The importance of multi-tier architectures

The training explores in detail multi-tier architectures, which are essential for performance and scalability. Understanding the differences between two-tier, three-tier, or N-Tier approaches allows participants to select the most suitable model based on project needs. This knowledge is crucial for designing systems capable of handling heavy user loads while remaining stable and secure. Learners also discover how to anticipate latency issues and reduce the number of network calls to improve responsiveness.

Security and quality of service at the core of the program

Security is a major challenge in distributed environments. The course dedicates several modules to access control, authentication, and the protection of sensitive data. Participants learn how to apply security principles across multiple levels, from client to server and up to web services. In parallel, quality of service is studied in all its dimensions: performance, reliability, availability, and maintainability. These skills are essential for building resilient applications that meet user expectations.

For instance, in the healthcare sector, where confidentiality is crucial, EJB 3 security mechanisms ensure that only authorized personnel can access medical data. Similarly, in telecommunications, availability requirements are addressed through advanced transaction management and fault tolerance.

Service-oriented architectures and inter-system communication

Service-Oriented Architecture (SOA) is an integral part of the training. It acts as a strategic lever for fostering interoperability between applications. EJB 3 integrates naturally into this model, enabling the creation of services exposed through APIs or web services. Participants learn how these mechanisms streamline communication between heterogeneous systems and contribute to greater business agility.

This approach is especially valuable for organizations that need to connect ERP systems, legacy databases, and modern applications. Using EJB 3 makes it possible to design a consistent architecture capable of efficiently linking disparate environments while ensuring unified security.

An expertise in high demand

Mastering EJB 3 and Java EE is a significant professional asset. Companies are seeking professionals capable of designing distributed systems that are both high-performing and secure. Enrolling in this training means acquiring a skill set directly applicable to strategic projects, while also opening opportunities to broaden one’s role toward software architecture and the management of complex projects.

EJB 3-trained developers can contribute to a variety of initiatives: modernizing monolithic applications, integrating web services into service-oriented architectures, or implementing messaging solutions with JMS. These skills are in high demand within large corporations and IT service companies.

FAQ

What are the benefits of EJB 3 for developers?

They simplify code, improve transaction management, provide built-in security, and reduce technical overhead.

Does this training cover data persistence?

Yes, persistence is addressed through the EJB container and related mechanisms, with hands-on examples to strengthen learning.

What technical level is required to attend this course?

Participants should have knowledge of the Java language and some background in servlets and JSP. Familiarity with EJB 2.x is a plus.

Who is this training designed for?

Application developers, software architects, IT managers, and technical project leaders are the primary target audience.

Is EJB 3 still used today?

Yes, many organizations continue to rely on this technology for mission-critical applications, particularly in finance, telecommunications, and industry.

Prix de l'inscription
CHF 2'900.-
Inclus dans ce cours
  • Training provided by a certified trainer
  • Preparation for the exam
  • Documentation and digital media
  • Achievement Badge
Mois actuel

lun29Sep(Sep 29)09:00jeu02Oct(Oct 2)17:00VirtuelVirtual Etiquettes de sessionEJB

lun29Sep(Sep 29)09:00jeu02Oct(Oct 2)17:00Genève, Route des Jeunes 35, 1227 Carouge Etiquettes de sessionEJB

lun03Nov(Nov 3)09:00jeu06(Nov 6)17:00VirtuelVirtual Etiquettes de sessionEJB

lun03Nov(Nov 3)09:00jeu06(Nov 6)17:00Lausanne, Avenue Mon repos 24, 1005 Lausanne Etiquettes de sessionEJB

lun08Déc(Déc 8)09:00jeu11(Déc 11)17:00VirtuelVirtual Etiquettes de sessionEJB

lun08Déc(Déc 8)09:00jeu11(Déc 11)17:00Genève, Route des Jeunes 35, 1227 Carouge Etiquettes de sessionEJB

Contact

ITTA
Route des jeunes 35
1227 Carouge, Suisse

Opening hours

Monday to Friday
8:30 AM to 6:00 PM
Tel. 058 307 73 00

Contact-us

ITTA
Route des jeunes 35
1227 Carouge, Suisse

Make a request

Contact

ITTA
Route des jeunes 35
1227 Carouge, Suisse

Opening hours

Monday to Friday, from 8:30 am to 06:00 pm.

Contact us

Your request