Back-End Developer

Back-End Developer

Learn how to rapidly build real-world applications and customize any aspect of the platform.

What You'll Learn

Whether you’re a new or seasoned developer, Back-End Developer will equip you with the tools you need for successful back-end development with Liferay DXP 7.1.

Learn how to develop modular applications that follow Liferay’s best practices and how to customize the entire platform from the View to the Persistence Layer.

Instructor

Eddie Chow

Joining Liferay in 2013 , Eddie has been heavily involved in training clients around the US. With a strong passion for helping and teaching people, he enjoys being able to get people up and running with Liferay. When not training, you can find him solving Rubik's cubes and enjoying the outdoors. 

Curriculum

  • Introduction
  • Preview
    Course Topics
  • Development Environment
  • Set Up the Development Environment
  • Exercises: Set Up the Development Environment
  • OSGi Basics
  • Introduction
  • Basic Concepts
  • Bundles
  • Exercises: Change Lifecycle State of an OSGi Bundle
  • Components and Services
  • Exercises: Create an OSGi Service Using Declarative Services and Bndtools
  • Sharing Features
  • Exercises: Sharing Features with Export-Import
  • Framework Architecture
  • OSGi Benefits
  • Liferay OSGi Container
  • Liferay OSGi Container
  • Working With Liferay Workspace
  • Exercises: Set up Liferay Workspace and Liferay Portal
  • Introducing Liferay Modules
  • Exercises: Create a Custom Form Field Using the Form Field Module Template
  • Manage Module Dependencies
  • Managing OSGi Bundles
  • Manage OSGi Bundles with Gogo Shell - part 1
  • Exercises: Practice Gogo Shell Basic Commands
  • Manage OSGi Bundles with Gogo Shell - part 2
  • Exercises: Create a Custom Gogo Shell Command
  • Using Felix Web Console - Part 1
  • Exercises: Using the Felix Web Console to Find the Blogs Web Module Version
  • Using Felix Web Console - Part 2
  • Exercises: Use Felix Web Console to Locate MVCRender Command Components for Blogs Portlet
  • Working with Portlet Modules
  • Java Standard Portlet
  • Exercises: Implement a Basic JSR 286 Compliant Portlet
  • Working with Liferay Portlet Modules
  • Exercises: Create a Liferay MVC Portlet
  • Develop a Real-World Application
  • Overview
  • Create the Service Layer
  • Exercises: Create Gradebook Service Layer - Step 1
  • Exercises: Create Gradebook Service Layer - Steps 2-4
  • Exercises: Create Gradebook Service Layer - Steps 5-7
  • Exercises: Create Gradebook Service Layer - Steps 8-10
  • Implement Access Control
  • Exercises: Implement Gradebook Permissioning Support
  • Create the Presentation Layer - Part 1
  • Exercises: Create the Gradebook Presentation Layer - Step 1
  • Create the Presentation Layer - Part 2
  • Exercises: Create the Gradebook Presentation Layer - Step 2
  • Exercises: Create the Gradebook Presentation Layer - Step 3
  • Create the Presentation Layer - Part 3
  • Exercises: Create the Gradebook Presentation Layer - Step 4
  • Create the Presentation Layer - Part 4
  • Exercises: Create the Gradebook Presentation Layer - Step 5
  • Create the Presentation Layer - Part 5
  • Exercises: Create the Gradebook Presentation Layer - Step 6
  • Create the Presentation Layer - Part 6
  • Exercises: Create the Gradebook Presentation Layer - Step 7
  • Create the Presentation Layer - Part 7
  • Exercises: Create the Gradebook Presentation Layer - Step 8
  • Make the Application Configurable
  • Exercises: Make Gradebook Configurable
  • Integrate with Liferay Frameworks - Part 1
  • Exercises: Integrate Gradebook Application with Liferay Asset Framework
  • Integrate with Liferay Frameworks - Part 2
  • Exercises: Integrate Gradebook with Portal Search
  • Integrate with Liferay Frameworks - Part 3
  • Exercises: Enable Workflows for Gradebook Assignments
  • Integrate with External Systems
  • Publish a REST Service for the Gradebook Application
  • Liferay Platform Architecture Review
  • Liferay Platform Architecture
  • Customize the User Interface
  • Liferay User Interface Technologies Overview
  • Change the Default Application UI with ADT
  • Exercises: Create a Media Gallery Application Display Template
  • Customize the Application JSPs
  • Exercises: Customize the Announcements Portlet Using a JSP Fragment Module
  • Exercises: Customize the Blogs Portlet JSP using a Portlet Filter
  • Extend Liferay's Schema
  • Introducing Custom Fields
  • Dynamically Add Custom Fields with the Expando API
  • Exercises: Extend Liferay's User Profile using Expandos and Lifecycle Actions
  • Customize the Service Layer
  • Override and Extend Liferay Services with Service Wrappers
  • Exercises: Customize Liferay UserLocalService with a Service Wrapper
  • Override OSGi Service References
  • Override Controller Actions
  • Override Struts Actions Events
  • Exercises: Override the Portal Logout Struts Action
  • Override Portal MVC Commands
  • Exercises: Override the Documents and Media MVC Action Command
  • Catch Portal Events
  • Catch Portal Lifecycle Events
  • Exercises: Creating a Post Login Event Listener
  • Intercept Events with Model Listeners
  • Exercises: Creating a User Model Listener
  • Leverage the Liferay Message Bus
  • Leverage the Liferay Message Bus
  • Exercises: Create a Documents and Media Message Bus Listener
  • Customize Portal Search
  • Customize the Portal Search
  • Exercises: Extend User Search using an Indexer Post Processor
  • The Back-End Developer's back end
  • Next Steps

What You'll Learn

Whether you’re a new or seasoned developer, Back-End Developer will equip you with the tools you need for successful back-end development with Liferay DXP 7.1.

Learn how to develop modular applications that follow Liferay’s best practices and how to customize the entire platform from the View to the Persistence Layer.

Instructor

Eddie Chow

Joining Liferay in 2013 , Eddie has been heavily involved in training clients around the US. With a strong passion for helping and teaching people, he enjoys being able to get people up and running with Liferay. When not training, you can find him solving Rubik's cubes and enjoying the outdoors. 

Curriculum

  • Introduction
  • Preview
    Course Topics
  • Development Environment
  • Set Up the Development Environment
  • Exercises: Set Up the Development Environment
  • OSGi Basics
  • Introduction
  • Basic Concepts
  • Bundles
  • Exercises: Change Lifecycle State of an OSGi Bundle
  • Components and Services
  • Exercises: Create an OSGi Service Using Declarative Services and Bndtools
  • Sharing Features
  • Exercises: Sharing Features with Export-Import
  • Framework Architecture
  • OSGi Benefits
  • Liferay OSGi Container
  • Liferay OSGi Container
  • Working With Liferay Workspace
  • Exercises: Set up Liferay Workspace and Liferay Portal
  • Introducing Liferay Modules
  • Exercises: Create a Custom Form Field Using the Form Field Module Template
  • Manage Module Dependencies
  • Managing OSGi Bundles
  • Manage OSGi Bundles with Gogo Shell - part 1
  • Exercises: Practice Gogo Shell Basic Commands
  • Manage OSGi Bundles with Gogo Shell - part 2
  • Exercises: Create a Custom Gogo Shell Command
  • Using Felix Web Console - Part 1
  • Exercises: Using the Felix Web Console to Find the Blogs Web Module Version
  • Using Felix Web Console - Part 2
  • Exercises: Use Felix Web Console to Locate MVCRender Command Components for Blogs Portlet
  • Working with Portlet Modules
  • Java Standard Portlet
  • Exercises: Implement a Basic JSR 286 Compliant Portlet
  • Working with Liferay Portlet Modules
  • Exercises: Create a Liferay MVC Portlet
  • Develop a Real-World Application
  • Overview
  • Create the Service Layer
  • Exercises: Create Gradebook Service Layer - Step 1
  • Exercises: Create Gradebook Service Layer - Steps 2-4
  • Exercises: Create Gradebook Service Layer - Steps 5-7
  • Exercises: Create Gradebook Service Layer - Steps 8-10
  • Implement Access Control
  • Exercises: Implement Gradebook Permissioning Support
  • Create the Presentation Layer - Part 1
  • Exercises: Create the Gradebook Presentation Layer - Step 1
  • Create the Presentation Layer - Part 2
  • Exercises: Create the Gradebook Presentation Layer - Step 2
  • Exercises: Create the Gradebook Presentation Layer - Step 3
  • Create the Presentation Layer - Part 3
  • Exercises: Create the Gradebook Presentation Layer - Step 4
  • Create the Presentation Layer - Part 4
  • Exercises: Create the Gradebook Presentation Layer - Step 5
  • Create the Presentation Layer - Part 5
  • Exercises: Create the Gradebook Presentation Layer - Step 6
  • Create the Presentation Layer - Part 6
  • Exercises: Create the Gradebook Presentation Layer - Step 7
  • Create the Presentation Layer - Part 7
  • Exercises: Create the Gradebook Presentation Layer - Step 8
  • Make the Application Configurable
  • Exercises: Make Gradebook Configurable
  • Integrate with Liferay Frameworks - Part 1
  • Exercises: Integrate Gradebook Application with Liferay Asset Framework
  • Integrate with Liferay Frameworks - Part 2
  • Exercises: Integrate Gradebook with Portal Search
  • Integrate with Liferay Frameworks - Part 3
  • Exercises: Enable Workflows for Gradebook Assignments
  • Integrate with External Systems
  • Publish a REST Service for the Gradebook Application
  • Liferay Platform Architecture Review
  • Liferay Platform Architecture
  • Customize the User Interface
  • Liferay User Interface Technologies Overview
  • Change the Default Application UI with ADT
  • Exercises: Create a Media Gallery Application Display Template
  • Customize the Application JSPs
  • Exercises: Customize the Announcements Portlet Using a JSP Fragment Module
  • Exercises: Customize the Blogs Portlet JSP using a Portlet Filter
  • Extend Liferay's Schema
  • Introducing Custom Fields
  • Dynamically Add Custom Fields with the Expando API
  • Exercises: Extend Liferay's User Profile using Expandos and Lifecycle Actions
  • Customize the Service Layer
  • Override and Extend Liferay Services with Service Wrappers
  • Exercises: Customize Liferay UserLocalService with a Service Wrapper
  • Override OSGi Service References
  • Override Controller Actions
  • Override Struts Actions Events
  • Exercises: Override the Portal Logout Struts Action
  • Override Portal MVC Commands
  • Exercises: Override the Documents and Media MVC Action Command
  • Catch Portal Events
  • Catch Portal Lifecycle Events
  • Exercises: Creating a Post Login Event Listener
  • Intercept Events with Model Listeners
  • Exercises: Creating a User Model Listener
  • Leverage the Liferay Message Bus
  • Leverage the Liferay Message Bus
  • Exercises: Create a Documents and Media Message Bus Listener
  • Customize Portal Search
  • Customize the Portal Search
  • Exercises: Extend User Search using an Indexer Post Processor
  • The Back-End Developer's back end
  • Next Steps