3. Configuration Options
Combination of setting
Stored in database
Stored in properties files.
Stored in xml files
Liferay ‘s Customization
Override properties of its configuration files
Plugin management
Liferay SOA
DIRECTV Proprietary 3
4. Override configuration
Default configuration
portal.properties,
system.properties
Overidden configuration: portal-ext.properites, system-ext.properties
Language_xxx.properties
Overridden configuration
portal-ext.properties,
System-ext.properties
Location
Main ( default ) configuration: resides inside the portal-impl.jar file.
This .jar file is in Liferay Portal's WEB-INF/lib
Extention (overridden) configuration:Liferay Portal's WEB-INF/classes
DIRECTV Proprietary 4
5. Liferay Specific Descriptors
Extended Portlet Definition
Provides the ability to use Liferay specific features and the second one
permits the configuration of the UI that will allow users to select the
portlets.(liferay-portlet.xml )
Organizing Portlets in Categories
The interface provided to a user to select a portlet to be added to a
page shows the portlets organized in categories to make it easier to
find them ( liferay-display.xml )
Location
Located in Liferay Portal's WEB-INF folder
DIRECTV Proprietary 5
6. Liferay Specific Descriptors
Customize Control Panel
Put portlets anywhere, whether or not a portlet shows up inside of
the Control Panel epends on whether or not you've set the following
nodes in your liferay-portlet.xml
<portlet>
<portlet-name>125</portlet-name>
….
<control-panel-entry-category>portal</control-panel-entry-category>
<control-panel-entry-weight>1.0</control-panel-entry-weight>
<control-panel-entry-class>
com.liferay.portlet.enterpriseadmin.UsersControlPanelEntry
</control-panel-entry-class>
...
</portlet>
DIRECTV Proprietary 6
7. Liferay Specific Descriptors
Customize Control Panel
control-panel-entry-category: The 'category' where your portlet will
appear. There are currently 4 valid values for this element: 'my',
'content', 'portal', and 'server'.
control-panel-entry-weight: Determines the relative ordering for your
portlet within a given category. The higher the number, the lower in
the list your portlet will appear within that category.
control-panel-entry-class: The name of a class that implements
the ControlPanelEntry interface which determines who can see the
portlet in the control panel via an isVisible method.
DIRECTV Proprietary 7
8. Customizing Liferay with plugins
DIRECTV Proprietary 8
Liferay support 5 types of deployable plugins
Portlet
Themes
Layout template
Hook
Web
All packaged as WAR packages with specific
configuration files
9. Deployment of plugins
Deploying Liferay plugins with Maven
Quick introduction to Maven
Liferay Maven support
Create Maven Project for Liferay Portlet
Hot Deploy porlet to Liferay
Demo
DIRECTV Proprietary 9
10. Quick introduction to Maven
Project management tool ( build, test,
report ,assemble,release )
Small core expandable with plugins
Convention over configuration
Dependency management
Common lifecycle
DIRECTV Proprietary 10
12. Create Maven Project for Liferay Portlet
Two ways :
Command line
IDE
Step by step :
Create archetype
Build and package
Deploy
DIRECTV Proprietary 12
13. Create archetype for project
Command line
Create root folder for project with pom files
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-
4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.liferay.sample</groupId>
<artifactId>sample-project</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>sample-project</name>
<url>http://www.liferay.com</url>
<properties>
<liferay.auto.deploy.dir>C:/liferay-portal-6.1.1-ce-ga2/deploy</liferay.auto.deploy.dir>
<liferay.version>6.1.1</liferay.version>
</properties>
</project>
DIRECTV Proprietary 13
14. Create archetype for project
Command line
At root folder . Run : mvn generate:archetype
Result Console:
Choose archetype:
1: local -> liferay-portlet-archetype (Liferay portlet archetype)
2: local -> liferay-theme-archetype (Liferay theme archetype)
3: internal -> appfuse-basic-jsf (AppFuse archetype for creating a web
application with Hibernate, Spring and JSF)
4: internal -> appfuse-basic-spring (AppFuse archetype for creating a
web application with Hibernate, Spring and Spring MVC)
...
Choose a number: (1/2/3/4/...) :1
DIRECTV Proprietary 14
15. Create Maven Project for Liferay Portlet
Type number to choose liferay-portlet-archetype
Then provide groupId, artifactId, package, version
DIRECTV Proprietary 15
16. Create Maven Project for Liferay Portlet
IDE ( SpringToolSuite )
DIRECTV Proprietary 16
22. Build and pakage
Go to project directory
Run “mvn package”.
War file is created at C:workspace-
liferaysample-portlettargetsample-portlet-
0.0.1-SNAPSHOT.war.
DIRECTV Proprietary 22
23. Deployment
Command line
Go to project directory
Run “mvn liferay:deploy”.
War file is created at C:workspace-liferaysample-
portlettargetsample-portlet-0.0.1-SNAPSHOT.war.
DIRECTV Proprietary 23
24. Create Maven Project for Liferay Portlet
Command line :
Go to project directory
Run “mvn liferay:deploy”.
porlet is hot deployed on Liferay portal
DIRECTV Proprietary 24
25. Create Maven Project for Liferay Portlet
IDE :Start up tomcat bundled with Liferay and login
in as admin. Click on ‘Add’ then ‘More…’ then
‘Install More Applications’.
DIRECTV Proprietary 25