AD183 Red Hat Application Development I: Programming in Java EE Course Overview

AD183 Red Hat Application Development I: Programming in Java EE Course Overview

The AD183 Red Hat Application Development I: Programming in Java EE course is a comprehensive program designed to equip learners with the skills to build and maintain enterprise Java applications using Java Platform, Enterprise Edition (Java EE). Throughout the course, participants will transition from standard Java SE applications to multi-tiered Java EE applications, learning to package and deploy these applications to an application server. They will delve into creating Enterprise Java Beans (EJBs), manage persistence and entity relationships, and develop RESTful services with JAX-RS.

By implementing Contexts and Dependency Injection (CDI) and creating messaging applications with Java Message Service (JMS), learners will enhance their application's functionality and maintainability. The course also covers securing Java EE applications using Java Authentication and Authorization Service (JAAS). The capstone of AD183 involves a comprehensive review, where participants demonstrate their acquired skills. This course is a valuable investment for developers seeking expertise in the robust Java EE platform, ensuring they are well-prepared to contribute to enterprise-level projects.

Purchase This Course

Fee On Request

  • Live Training (Duration : 40 Hours)
  • Per Participant
  • Guaranteed-to-Run (GTR)
  • date-img
  • date-img

♱ Excluding VAT/GST

Classroom Training price is on request

You can request classroom training in any city on any date by Requesting More Information

  • Live Training (Duration : 40 Hours)
  • Per Participant

♱ Excluding VAT/GST

Classroom Training price is on request

You can request classroom training in any city on any date by Requesting More Information

Request More Information

Email:  WhatsApp:

Koenig's Unique Offerings

Koenig is is awarded as Red Hat's Enterprise Partner with the Highest YoY Growth for CY-23!

Course Prerequisites

To ensure a successful learning experience in the AD183 Red Hat Application Development I: Programming in Java EE course, the following are the minimum required prerequisites:


  • Basic understanding of Java Standard Edition (Java SE), including familiarity with object-oriented programming principles.
  • Basic knowledge of Java syntax and concepts such as loops, conditions, classes, and inheritance.
  • Experience with Integrated Development Environments (IDEs) like Eclipse, IntelliJ IDEA, or similar.
  • Understanding of the basics of relational databases and SQL.
  • Familiarity with HTML, CSS, and JavaScript is helpful, but not mandatory.
  • No prior knowledge of Java Enterprise Edition (Java EE) is required.

These prerequisites aim to provide a solid foundation for engaging with the course content effectively. Students with this background are more likely to grasp the advanced concepts presented in the course.


Target Audience for AD183 Red Hat Application Development I: Programming in Java EE

AD183 Red Hat Application Development I: Programming in Java EE is tailored for developers who aim to master Java EE for enterprise applications.


  • Java Developers seeking to transition to Java EE
  • Software Engineers focusing on enterprise-level application development
  • Systems Architects designing multi-tiered Java applications
  • Enterprise Application Developers implementing business logic and backend services
  • DevOps Professionals looking to understand the deployment and packaging of Java EE applications
  • Back-End Developers aiming to create robust Java server applications
  • IT Professionals focusing on Java application security
  • Middleware Programmers specializing in Java messaging services
  • Technical Leads overseeing Java EE application development projects
  • Software Designers interested in Contexts and Dependency Injection (CDI) for Java applications
  • Application Developers working with RESTful web services


Learning Objectives - What you will Learn in this AD183 Red Hat Application Development I: Programming in Java EE?

Introduction to Course Learning Outcomes

Gain proficiency in Java EE development by mastering multi-tiered application transition, EJBs, persistence management, RESTful services, CDI, JMS messaging, and application security.

Learning Objectives and Outcomes

  • Understand the key differences and features of Java EE compared to Java SE, and recognize the architecture of Java EE multi-tiered applications.
  • Learn to package and deploy Java EE applications to an Enterprise Application Platform (EAP) server, comprehending application server architecture.
  • Develop and integrate Enterprise Java Beans (EJBs), including stateless, stateful, and message-driven beans for business logic.
  • Create and manage persistence entities with JPA, implementing validations to ensure data integrity.
  • Define and manage complex entity relationships using Java Persistence API (JPA) to maintain a coherent data model.
  • Design and implement RESTful web services using JAX-RS specification to enable interoperable server-client communication.
  • Apply Contexts and Dependency Injection (CDI) to manage dependencies and decouple application logic for scalable and maintainable code.
  • Utilize Java Message Service (JMS) for creating robust messaging applications that can asynchronously send and receive data.
  • Implement Java Authentication and Authorization Service (JAAS) framework to secure Java EE applications against unauthorized access.
  • Demonstrate comprehensive knowledge and skills acquired in Red Hat Application Development I: Programming in Java EE through a capstone review.

Technical Topic Explanation

Contexts and Dependency Injection (CDI)

Contexts and Dependency Injection (CDI) is a feature in Java that simplifies the way developers manage dependencies in their applications. It allows for more flexible and decoupled code by automatically connecting related components together. With CDI, developers define points in their code where they need additional resources or services (dependencies), and the CDI framework dynamically provides these at runtime. This reduces the need for manual object creation and management, enhancing modularity and making the code easier to maintain and test. CDI is particularly useful in enterprise applications to improve code quality and development efficiency.

Enterprise Java Beans (EJBs)

Enterprise Java Beans (EJBs) are a server-side software component for building modular, enterprise-grade applications in Java. They encapsulate business logic, which means they handle the operations or calculations relevant to business requirements. EJBs are managed by a container which provides services like transaction management and security, enabling developers to focus on application logic rather than infrastructure and integration layers. This system supports scalability and simplifies complex applications by providing a structured way to build and deploy robust, distributed systems.

RESTful services with JAX-RS

RESTful services with JAX-RS refers to a way of creating web services that follow REST principles, using Java. REST stands for Representational State Transfer and is a set of guidelines for designing networked applications. JAX-RS (Java API for RESTful Web Services) is a set of Java programming specifications that simplifies the development of RESTful web services in Java environments. It helps in mapping typical HTTP actions like GET, POST, PUT, and DELETE to equivalent Java methods, allowing for easy data exchange and integration over the web. This makes it straightforward for developers to build and deploy web services.

Java EE

Java EE, or Java Enterprise Edition, is a platform that extends the Java Standard Edition (SE) with specifications for enterprise features such as distributed computing and web services. Java EE is used by businesses to build and run large-scale, multi-tiered, scalable, and secure network applications. The platform includes various APIs like Servlets, Java Server Pages (JSP), and Enterprise Java Beans (EJB) which help developers to create enterprise applications that are portable and robust, and support enterprise services such as messaging, transaction management, and security.

Java SE

Java SE, short for Java Standard Edition, is a core technology for developing and running Java applications. It includes the Java programming language, libraries, tools for developing, monitoring, and running applications efficiently. Java SE forms the foundation for various types of applications, from desktop environments to server-side software. Its widespread use is due to its portability, robustness, and an extensive ecosystem of community-driven libraries and frameworks, making it a standard choice for businesses and developers aiming for cross-platform compatible solutions.

Java Message Service (JMS)

Java Message Service (JMS) is a messaging standard that allows application components based on the Java Enterprise Edition (Java EE) to create, send, receive, and read messages. It enables communication between different components of a distributed application to be loosely coupled, reliable, and asynchronous. Essentially, JMS supports the exchange of needed data and information across a network, allowing various applications to interact efficiently without being directly connected. This makes JMS particularly useful for integrating diverse systems and supporting complex business processes.

Java Authentication and Authorization Service (JAAS)

Java Authentication and Authorization Service (JAAS) is a Java technology that provides a way for a Java application to authenticate and authorize a user or program. It ensures that users are who they say they are (authentication) and checks if they have the correct permissions to access certain parts of the application (authorization). JAAS is flexible, allowing developers to integrate it into their applications to enforce security measures, thus helping control access to resources within an application according to predefined security policies.

Target Audience for AD183 Red Hat Application Development I: Programming in Java EE

AD183 Red Hat Application Development I: Programming in Java EE is tailored for developers who aim to master Java EE for enterprise applications.


  • Java Developers seeking to transition to Java EE
  • Software Engineers focusing on enterprise-level application development
  • Systems Architects designing multi-tiered Java applications
  • Enterprise Application Developers implementing business logic and backend services
  • DevOps Professionals looking to understand the deployment and packaging of Java EE applications
  • Back-End Developers aiming to create robust Java server applications
  • IT Professionals focusing on Java application security
  • Middleware Programmers specializing in Java messaging services
  • Technical Leads overseeing Java EE application development projects
  • Software Designers interested in Contexts and Dependency Injection (CDI) for Java applications
  • Application Developers working with RESTful web services


Learning Objectives - What you will Learn in this AD183 Red Hat Application Development I: Programming in Java EE?

Introduction to Course Learning Outcomes

Gain proficiency in Java EE development by mastering multi-tiered application transition, EJBs, persistence management, RESTful services, CDI, JMS messaging, and application security.

Learning Objectives and Outcomes

  • Understand the key differences and features of Java EE compared to Java SE, and recognize the architecture of Java EE multi-tiered applications.
  • Learn to package and deploy Java EE applications to an Enterprise Application Platform (EAP) server, comprehending application server architecture.
  • Develop and integrate Enterprise Java Beans (EJBs), including stateless, stateful, and message-driven beans for business logic.
  • Create and manage persistence entities with JPA, implementing validations to ensure data integrity.
  • Define and manage complex entity relationships using Java Persistence API (JPA) to maintain a coherent data model.
  • Design and implement RESTful web services using JAX-RS specification to enable interoperable server-client communication.
  • Apply Contexts and Dependency Injection (CDI) to manage dependencies and decouple application logic for scalable and maintainable code.
  • Utilize Java Message Service (JMS) for creating robust messaging applications that can asynchronously send and receive data.
  • Implement Java Authentication and Authorization Service (JAAS) framework to secure Java EE applications against unauthorized access.
  • Demonstrate comprehensive knowledge and skills acquired in Red Hat Application Development I: Programming in Java EE through a capstone review.
AD183 Red Hat Application Development I: Programming in Java EE