Module 1: Introduction
- Introduction to Liferay's Plugins SDK
- Installing Liferay Developer Studio
- Setting Up the Space Program
- Reviewing Liferay Concepts
Module 2: Developing Portlet Plugins
- Introduction to Java Standard Portlets
- How Portlets Differ From Servlets
- The Java Portlet Specification
- The Portlet Lifecycle
- Phases of the Portlet Lifecycle
- Portlet Characteristics
- Java Standard Portlet Exercise
- Portlet Preferences
- Inter-Portlet Communication
- Methods of Inter-Portlet Communication
- Public Render Parameters
- Events
- Portlets and Web Application Frameworks
Module 3: Parts Inventory Portlet Application
- Design Approach
- Setting up the Data Model for Service Builder
- Generating the Service and Persistence Layer
- Leveraging the Liferay MVC Portlet Framework
- Displaying Data using Liferay's Search Container
- Localization, Feedback and Input Validation
- Integrating Liferay Permissions
- Adding Custom Portlets to the Control Panel
Module 4: Theme and Layout Template Plugins
- Liferay Theme Overview and Exercise
- Liferay Layout Template Overview and Exercise
- Advanced Theme, Layout Topics, and Best Practices
Module 5: Hook Plugins
- Adding a Post Login Action
- Adding a Startup Action
- Customizing Language Keys
- Customizing Core Liferay JSPs
- Adding Post-Processing to Liferay's Indexer
- Extending Liferay's Services using Service Wrappers
- Adding custom Servlet Filters
- Overriding Core Struts Actions
Module 6: Ext Plugins
- Ext Plugin Overview
- Customizing Portal Properties
- Customizing Portlet Defaults
- Best Practices
Module 7: Advanced Topics
- Using Liferay's Web Services
- Spring in Liferay
- Development Strategy