Liferay Certified Professional Developer Exam Blueprint
Liferay Certified Professional Developer Exam Blueprint
Liferay Certified Professional Developer Exam Blueprint
Professional Developer
Exam Blueprint
Duration: 90 minutes
Number of questions: 50
Passing score: 75%
Item Types
True/False Exam candidate will select if the statement presented is true or false.
Multiple Choice Single Answer Exam candidate will select the one response that most correctly completes the statement presented.
Multiple Choice Multiple Answer Exam candidate will select all of the responses that correctly complete the statement presented.
Example Test Questions
All questions are based on Liferay best practices when developing for Liferay Portal 6.1
Unless other otherwise indicated in the question, assume a new Liferay installation with no additional plugins installed and no
modifications to portal properties.
True
False
Answer: False
2. The following attributes are defined in liferay-portlet.xml:
(Please select all correct answers.)
A. If the portlet is instanceable
A. init.vm
B. init_ext.vm
C. portal_normal.vm
D. init_custom.vm
Answer: D
WWW.LIFERAY.COM
LIFERAY Certification
Exam Topics
Each topic will be a pecentage of the test. See below.
Liferay Development Best Practices
Percentage of Test: 10%
Liferay Portal is a powerful platform for designing and developing robust web applications. While Liferay provides many exciting
enterprise caliber features out of the box, there will be times when its necessary to develop applications to extend or modify Liferay.
By following Liferays best practices, developers can ensure this development will enhance the current version of Liferay and will allow
for a smooth upgrade when upgrading the core portal. Liferay developers should be familiar with these best practices.
Development Environment Setup
Liferay developers have many tools to choose from when developing Liferay
applications and customizations. Getting started with a properly configured
development environment will go a long way towards ensuring that applications
will be developing in the proper way. Liferay developers should be familiar with the
Liferay Plugins SDK as well as properly configuring it with a development server.
Knowing when to use the right tool for the job is the sign of a true craftsman.
Liferay supports a variety of plugin types, each of which is suited for a specific type
of customization or extension. Liferay developers should know the strengths and
weaknesses of different approaches and should be able to select the recommended
approach to implementing solutions when developing for Liferay.
Service Builder
Liferay Utilities
Liferay provides a host of utilities that make developing for the Liferay Platform easy
and efficient. Liferay developers should know how to leverage the more common
utilities (ParamUtil, GetterUtil, HTMLUtil, etc.) to enhance their productivity.
WWW.LIFERAY.COM
LIFERAY Certification
One of the most commonly used APIs for developing solutions with Liferay is the User
and Group Management API. Liferay developers should be familiar with the methods
provided by this API and how they can leverage it when developing custom solutions.
AlloyUI
AlloyUI is a framework built on top of YUI3 that provides a simple API for building
highly scalable applications. Liferay developers should be familiar with how AlloyUI
can be leveraged in custom development and to extend Liferays capabilities.
Expando API
Liferays Expando Service provides an elegant way to extend the Liferay schema
without the pain associated with modifying the underlying database. Liferay developers
should be familiar with the capabilities of the Expando Service and understand how to
write code that creates and utilizes Expandos
While Liferay does support portlet development with a wide variety of languages and
frameworks, the most common portlets will be based on the JSR-286 specification.
Liferay developers should be very familiar with the JSR-286 specification and understand
how its features are at the core of other popular portlet application frameworks.
Configuration
IPC
The JSR-286 specification adds support for Inter Portlet Communication (IPC).
IPC allows developers to build powerful, multi-portlet applications that can share and
update data seamlessly. Liferay developers should be familiar with both methods of
IPC and understand how to leverage them to create powerful portlet applications.
Liferay MVCPortlet
WWW.LIFERAY.COM
LIFERAY Certification
When working with portlets that extend Liferays MVCPortlet or GenericPortlet the
most common view technology will be Java Server Pages (JSP). Liferay provides a
significant number of tag libraries that can be leveraged in JSPs to improve developer
productivity and efficiency. Liferay developers should be familiar with JSPs and know
how to leverage the Liferay provided tag libraries.
Permissions
When used properly, Hooks are ideal for customizing core Liferay features and will
allow for easier upgrades. However, it is important for Liferay developers to follow
best practices when developing hooks to ensure maintainable code.
Configuration Hook
JSP Hook
A JSP Hook can override JSP files or other web resources found in portal-web in
the Liferay source. By properly leveraging this feature, Liferay developers can easily
accomplish many of the most common user interface customizations in the Liferay
Platform. Liferay developers need to know how to properly apply JSP Hooks to create
robust solutions that will upgrade gracefully and how to avoid the most common
errors made when implementing JSP Hook solutions.
Language Hook
A Language Hook can override existing language keys in the portal or can be used to
add new language keys. Liferay developers need to know how to use Language Hooks
to know how to properly override default and new language keys in both the default
language and any other supported language keys of the portal.
WWW.LIFERAY.COM
LIFERAY Certification
Struts Action Hooks can be used to override core portal and portlet struts actions and
to add new struts actions, when necessary. Liferay developers should be familiar with
the recommended approach for implementing a Struts Action Hook.
Liferay provides a set of servlet filters to pre-process requests going to Liferay and
post-process responses coming from Liferay. A Liferay developer should know how
to leverage the Servlet Filter Hook plugin to customize these existing servlet filters or
to implement new servlet filters.
Liferay Themes follow a well organized, modular structure. Custom themes are based
on modifications or differences from a base theme. Liferay developers must know
how to properly create or customize a theme to ensure that the theme follows the
proper structure. Failure to follow Liferay's standards can lead to themes that are
not easily upgradable.
Embedded Portlets
Embedding portlets in a theme provides a powerful mechanism to get the most out
of limited screen real estate, but when not done properly, it can have a significant
negative effect on portal performance. Liferay developers should know how to
properly embed portlets in a Liferay Theme to improve the usability of the Theme
without negatively impacting the Theme performance.
WWW.LIFERAY.COM
LIFERAY Certification
Liferay Layout Templates can be created with any combination of required rows and
columns and the columns can be sized as needed. Layout templates can also include
embedded portlets to ensure page consistency. Liferay developers should know how
to leverage all of these layout template features to create customized layout templates
as needed.
The Ext plugin provides the most powerful method of extending Liferay.
Liferay developers should understand the capabilities of the EXT plugin and
should understand the special scenarios that require the use of the EXT plugin.
There are some types of portal configuration changes that are not possible when
using hooks. Liferay developers should understand when these changes are required
and how they should be best implemented.
Liferay ships with a robust set of core portlets which provide a wide range of features
that satisfy many different use cases. In some cases, these core portlets will need
to be modified in ways that are not supported by the Liferay Hook Plugin. Liferay
developers should understand when this type of modification is required and how to
best implement these types of customizations.
Note:
This examination overview includes weighting, test objectives, and example content. Example topics and concepts are included to clarify
the test objectives; they should not be construed as a comprehensive listing of all of the content of this examination.
WWW.LIFERAY.COM
130904