Liferay
offers many development tools for develop liferay applications.
Liferay not forcing to use one technology its have many choices .
We
can use popular IDE tools like Eclipse, Net Beans, or IntelliJ Idea
and also we can simply use text editors such as Notepad, Vim, or
Emacs.
We
have may choices for liferay developer to start developing liferay
application the following are different ways to start development.
Develop
Plugins with Liferay IDE
Develop
Plugins with Liferay
Plugins SDK+ANT
Develop
Plugins Using MAVEN
Develop
Plugins with Liferay
Developer Studio
The
suggestible and convenient to develop liferay plugins using Liferay
IDE with Eclipse and it have many features and GUI based interface to
create liferay Plugin applications.
We
also can use Plugins SDK and it is based on ANT command line
interface to create liferay Plugin applications and we can use any
editor to write or modify code.
If
we have maven experience then its recommended to use MAVEN and
liferay have plenty of Liferay archetypes it makes you can create and
develop different Plugin applications.
Develop
Liferay Plugin Applications with Liferay IDE
Liferay
IDE is extension or plugins for eclipse IDE to develop liferay Plugin
applications such as portlet,hook, theme,layout, web and ext.
Required
Things for Development
JDK
Eclipse
Latest version
Liferay
IDE
Liferay
Plugins SDK
Liferay
Portal Server
ANT(optional)
MySQL
Data Base(Optional)
JDK/JRE
Liferay
portal is Java based portal so first we need to install JDK .we need
to set important environment variables such as JAVA_HOME and need to
set Java path variable. We need Java 6.0 JRE or greater.
Eclipse
IDE:
Eclipse
is IDE for rapid development of applications and which have many
features with GUI based interface to create and develop different
JAVA/J2EE applications.
Liferay
need latest versions of eclipse for liferay plugins development and
the recommended versions are Eclipse Kepler Java EE (4.3.x),Eclipse
Juno Java EE (4.2.x),Eclipse Indigo Java EE (3.7.x)
You
can download Eclipse from http://eclipse.org
site or you can download from liferay.com
Note:
If
you download eclipse from Liferay.com
then Liferay IDE will be bundled with Eclipse so that we need not to
install Liferay IDE again.
Liferay IDE
Liferay IDE is extension for eclipse to develop liferay plugins applications. Its pure GUI based interface that makes easy and rapid development of liferay applications. We must install Liferay IDE with Eclipse so that we can use Liferay IDE capabilities.
We have many ways to install Liferay IDE with Eclipse.
Installing Liferay IDE Bundled with Eclipse
Installing Liferay IDE from the Update Site onto Eclipse
Installing Liferay IDE from an Archive File onto Eclipse
Installing
Liferay IDE Bundled with Eclipse
Once
you downloaded then extract zip file then you can see eclipse
directory. open directory and click eclipse icon then ellipse will be
started.
Once
eclipse started then Select Window
-->Open
Perspective
-->Other
-->Liferay
to use Liferay IDE.
Once
liferay IDE installed then you can see Liferay Related Icons Header
part of eclipse.
Installing
Liferay IDE from the Update Site onto Eclipse
Start Eclipse.
When Eclipse opens, go to Help -->Install New Software.
In the Work with field, paste in the Liferay IDE update site URL(http://releases.liferay.com/tools/ide/latest/stable/) and press Enter.
Make sure the Liferay IDE features are selected, then click Next.
After calculating dependencies, click Next, accept the license agreement, and click Finish to complete the installation.
Restart Eclipse to verify that Liferay IDE is properly installed.
Select Window -->Open Perspective-->Other-->Liferay to use Liferay IDE.
Installing
Liferay IDE from an Archive File onto Eclipse(Zip)
Go to Liferay IDE download page select Liferay IDE 2.2.0-ga1 Archived Update-site from Select Option List and click on download button.
Start Eclipse and go to Help-->Install New Software
In the Add Site dialog, click the Archive button and browse to the location of the downloaded Liferay IDE archive file.
Make sure the Liferay IDE features are selected, then click Next.
After calculating dependencies, click Next, accept the license agreement, and click Finish to complete the installation
Restart Eclipse to verify that Liferay IDE is properly installed.
Select Window-->Open Perspective-->Other-->Liferay to use Liferay IDE.
Liferay
Plugins SDK
Liferay
Plugins SDK is set of libraries, files and templates to develop
Liferay plugins applications such as portlet,theme,layout,web and
ext.
Plugins
SDK provides ANT based build system and it consist set of commands
i.e. ANT targets to create and deploy liferay applications into
liferay portal server.
It
will provide default templates for each Plugin so that we can create
liferay project with required files and its configuration so that we
can ready with sample project in quick time.
Plugins
SDK alone we can start development of liferay applications but for
easy development we will use Plugins SDK with Liferay IDE so that
developer can get more flexibility in development of liferay
applications.
To
use Plugins SDK with Liferay IDE we need to configure Liferay Plugins
SDK with Liferay IDE.
Download
Liferay Plugins SDK from liferay Download Page and also make sure
which version of Plugins SDK you will use. Go to download page and
select Plugins SDK option then click on download.
Once
you downloaded Plugins SDK then extract it in any of your desired
location.
In
Eclipse, open the Installed Plugin SDK dialog box–from your Windows
drop down menu, click Preferences → Liferay → Installed Plugin
SDK.
Click
Add to bring up the Add SDK Dialog.
Browse
to your Plugins SDK Directory where you extracted before. The default
name is the directory name; you can change it if you want.
Select
OK and verify that your SDK was added to the list of Installed
Liferay Plugin SDK.
Plugins
SDK Directory Structure.
Liferay
Portal Server
Liferay
Portal Server is actual environment to run liferay Plugin
applications. Liferay Portal Run time come up with different
application servers such as tomcat,jboss,glashfish, jetty, geromino,
JOnAS and resin.
Liferay
provided these run time bundle with different server so that we can
use any one based on developer choice.
Liferay
Server Bundle Consist Application server and Deployed Liferay Portal
Application. When we observed server deployment directory(for
tomcat/webapps) we can see deployed Liferay Portal application
with name ROOT.
Setting
Liferay portal Server Run Time In Liferay IDE+Eclipse.
Download
Liferay Portal Server with Tomcat Bundle. And extract in your
desired location
Eclipse
Window → Preferences → Server → Runtime Environments.
Click
Add to add a new Liferay runtime; find Liferay v6.2 (Tomcat 7) under
the Liferay, Inc. category and click Next.
Click
Browse and select your liferay-portal-6.2.x/tomcat-7.x directory.
Click Finish; you should see your Liferay portal runtime listed in Preferences → Server → Runtime Environments.
Click OK to save your runtime preferences
Easy Steps to Setting Up Liferay Development Environment With Liferay IDE
Download JDK 1.6 or later versions and install in your machine and set requires environment variables such JAVA_HOME and path variable.
Now Create One Directory Called WorkSpace
Now copy downloaded Liferay IDE+Eclipse Bundle into WorkSpace then extract into same place (after extraction you find directory name eclipse).
Copy Downloaded Liferay Portal Server Bundle Archive file into WorkSpace then extract in same place then change directory name liferay-portal-tomcat-6.2-ce-ga2 to bundles.
Copy Downloaded Plugins SDK archive file into WorkSpace then extract into same place(liferay-plugins-sdk-6.2) then change directory name from liferay-plugins-sdk-6.2 to plugins
Finally our Directory Structure As Follows
WorkSpace
bundles(liferay-portal-tomcat-6.2-ce-ga2)
plugins(liferay-plugins-sdk-6.2)
eclipse
Go to eclipse directory and click on eclipse icon then eclipse will be started now select WorkSpace as default workspace in eclipse dialog.
Install Liferay IDE simply Window-->Open Perspective-->Other-->Liferay to use Liferay IDE
Install Plugins SDK by Window-->Preferences → Liferay → Installed Plugin SDK in the dialog select plugins directory i.e(WorkSpace-->plugins)
Setup Liferay Portal Service Run time by Window → Preferences → Server → Runtime Environments.
Click Add to add a new Liferay runtime; find Liferay v6.2 (Tomcat 7) under the Liferay, Inc. category and click Next then Click Browse and select your bundles
/tomcat-7.x
directory.In the Eclipse you can find Server view there you can launch/Start server by click on start option then portal will be started after few minutes for first time.
Access portal with http://localhost:8080 then follows steps to complete configurations.
Now you start develop Liferay Plugins Applications and you can deploy into portal server.
Note:
Liferay default will use HSQL database it already available with Portal Server bundle and it will be start along with server startup.
Liferay IDE will use ANT or MAVEN to deploy liferay Plugin applications. default one is ANT.
Eclipse IDE already have ANT tool so we need not to install it. If you want change it you can install ANT and configure ANT in eclipse.
Liferay Plugin portlet Development Please follow below link
http://www.liferaysavvy.com/2014/04/liferay-mvc-portlet-development.html
Liferay Development Environment With Liferay IDE
http://www.liferaysavvy.com/2013/12/liferay-62-portal-development.html
Whats is Plugins SDK?
Plugins SDK is liferay applications development kit consist of libraries,files and Plugin templates. with this we can create and develop liferay plugins.
Plugins SDK provided command bases user interface i.e. ANT command and its targets to create and develop liferay plugins.
What is Portal Server Run Time?
Liferay Portal Run time is run time environment run liferay Plugin application and it consist of application server with deployed liferay portal along with HSQL database and one deployment directory i.e deploy.
Liferay Portal Run time come up with different Application server developer can choose any one among those(tomcat,jboss, glashfish, jetty,geromino, JOnAS and resin).
The portal run time available as bundle and no more configuration is required we can directly start server and access liferay portal.
What is Liferay IDE?
Liferay IDE extension/Plugin for eclipse to support Liferay Plugin Application Development.
Liferay IDE provides GUI based interfaces and it makes easy and fast development.
What are the minimum Artifacts required for Liferay Application Development?
Liferay Portal Server Bundle
JRE/JDK
Liferay Plugins SDK
ANT
One Text Editor
What are development tools for liferay plugins Development?
Liferay IDE
Liferay Developer Studio
Liferay Plugins SDK+ANT+Editor
MAVEN+Liferay MAVEN Artifacts
What are the basic Artifact when we develop with Liferay IDE?
Eclipse+Liferay IDE bundle
Plugins SDK
Liferay Portal Server Bundle
JDK/JRE
ANT(optional)
What is default database in liferay?
Liferay use HSQL as default database and this will be bundled with Liferay Portal Server Bundle.
Where we need to configure liferay server information?
We will use build.properties file available in Plugins SDK but we should not modify these properties so we need to clone build.properties file and change name as build.UserName.properties then modify the configurations
Can i modify build.properties file directly?
Yes you can modify but its not recommended process instead of that simply clone file in same location and change name as build.userName.properties
If suppose system user Name is meeraprince then what is the name of cloned properties file?
build.meeraprince.properties
What is server configuration in builld.userName.properties file for tomcat?
app.server.type = tomcat
app.server.parent.dir = /opt/LiferayWorkSpace62/bundles
app.server.tomcat.dir =${app.server.parent.dir}/tomcat-7.0.42
app.server.tomcat.deploy.dir =${app.server.parent.dir}/tomcat-7.0.42/webapps
app.server.tomcat.lib.global.dir =${app.server.parent.dir}/tomcat-7.0.42/lib/ext
app.server.tomcat.portal.dir =${app.server.parent.dir}/tomcat-7.0.42/webapps/ROOT
where is the hot/auto deployment directory?
The directory name is deploy which is available in liferay portal server run time bundle.
Example: liferay-portal-6.2-ce-ga2/deploy or bundles/deploy
Can i change hot/auto deployment directory location?
Yes you can change but you need to configure in build.username.properties with below property.
app.server.parent.dir = /opt/WorkSpace/bundles
auto.deploy.dir = ${app.server.parent.dir}/deploy
What is app.server.parent.dir ?
app.server.parent.dir is directory where portal server available
example: in our case tomcat7.x server available in the directory WorkSpace/bundles
Note: these directory is your choice but make sure portal server should be available in specified location .please provide fully qualified path.
What is Liferay Home?
Liferay Home directory and app.server.parent.dir are same where liferay portal servers are placed.
How can I change liferay database configurations?
Liferay Data base configurations are placed in portal-ext.properties file and this file should be placed on Liferay Home/ app.server.parent.dir directory.Liferay Support Many Databases so we can configure any one that specified by Liferay.
What are the databased supported by liferay?
db2,derby,hypersonic,ingres,mysql,oracle,postgresql,sqlserver,sybase
Suppose my database Mysql then how could configure in Liferay?
We need to configure Mysql database connection settings in portal-ext.properties with following properties and this file should be available in Liferay Home/ app.server.parent.dir directory.
# MySQL
jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://localhost/lportal? useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=
jdbc.default.password=
Note:
When we change database then we need to add respective jdbc implementation jar file in sever global lib directory. For MySQL we can find mysql.jar file. Fortunately liferay already added mysql.jar file in server global lib directory.
What is Server Global lib directory?
Server global lib directory consist of all jar files those are required by applications which are deployed in server. When we place any jar file in server global lib directory then it will be available to all applications. For tomcat tomcat-7.0.42/lib is server global lib directory.
What is liferay portal global lib directory?
Liferay portal global directory consist of all jar files which is used by liferay portal and all liferay deployed Plugin applications. If any library jar file placed in liferay global lib directory then it will be accessible to liferay portal and all Plugin applications. This directory name is ext which is sub directory of tomcat server lib directory that is /tomcat-7.0.42/lib/ext
If my data base then how can configure it in Liferay?
Liferay Data base configurations are placed in portal-ext.properties file and this file should be placed on Liferay Home/ app.server.parent.dir directory. The following are the Oracle Database connection properties.
# Oracle
jdbc.default.driverClassName=oracle.jdbc.driver.OracleDriver
jdbc.default.url=jdbc:oracle:thin:@localhost:1521:xe
jdbc.default.username=lportal
jdbc.default.password=lportal
Note:
Here we need to add oracle jdbc implementation ojdbc6.jar file in server global lib directory
What is portal-setup-wizard.properties?
portal-setup-wizard.properties file is properties file this will be created when we start liferay portal for first time.
When we access liferay portal for first time we will get some configuration pages such as admin user registration and liferay database configurations and all these configuration will be stored in portal-setup-wizard.properties.
Where portal-setup-wizard.properties file will be created?
portal-setup-wizard.properties will be created in Liferay Home/ app.server.parent.dir directory
Example properites stored in portal-setup-wizard.properties
admin.email.from.name=Test Test
liferay.home=/opt/LiferayWorkSpace62/bundles
admin.email.from.address=test@liferay.com
setup.wizard.enabled=false
How many places can I configure liferay database connection details?
We can use portal-setup-wizard.properties or portal-ext.properties and make sure both should be available in Liferay Home/ app.server.parent.dir.
portal-setup-wizard.properties will be created automatically by liferay when we access liferay portal first time but portal-ext.properties we need create to override existed portal properties.
Is this mandatory portal-ext.properties file should be in Liferay Home/ app.server.parent.dir directory?
No. We can also placed portal-ext.properties in portal classes directory i.e. /tomcat-7.0.42/webapps/ROOT/WEB-INF/classes.
But use Liferay Home/ app.server.parent.dir is best practice to place portal-ext.properties file.
If place portal-ext.properties all above three places then what could be the my configuration?
Liferay will finally read the properties from Liferay Home/ portal-ext.properties.
How plugins are packaged?
All liferay plugins will be packaged as .WAR file and these war files places on dist directory it will be available in plugins SDK directory.
What is the ANT target to deploy liferay plugins?
We will use ant deploy target and its default target for each liferay Plugin application. We can also use ant direct-deploy too.
Where is application build process will be defined?
In plugins SDK we can find buid.xml file where all liferay Plugin application build process will be defined. This file available in Plugins SDK root directory.
Do i need to modify liferay plugins build file?
No. all build process defined by liferay we never get chance to change those file.
What is difference between ant war and ant deploy targets?
Ant war target do the job like compile and package Plugin application as .WAR file and places .war file dist directory.
Ant deploy target do the job like compile and package plugins application as .war file place .WAR file in dist directory in addition to that it will copy .WAR file into liferay portal deploy(${app.server.parent.dir}/deploy) directory so that it makes Plugin application available to deployment.
Author
0 comments :
Post a Comment