Wednesday, November 12, 2014

Liferay’s Development Platform Quick Notes

What is web application?

A web application or web app is any software that runs in a web browser.
It is created in a browser-supported programming language (such as the combination of JavaScript, HTML and CSS) and relies on a web browser to render the application.

Generally web application can serve static data or dynamic data to the client when it send request to the server.Web application will be available in the network such as Internet or Intranet.

What is Portal?

A portla application is web application consist of more content(files,images) and other dynamic functionality.

What is Liferay?

Liferay is portal based web application which reduce development cost and as developer can easily develop applications and they can run into liferay portal. 

What are the ways to incorporate application into Liferay?

Liferay supports two main, standards-based technologies for incorporating your applications into Liferay Portlets and Open Social gadgets.

What is hot deployment?

Hot deployment is process in web application deployment so that we need not stop server while deployment of application and the changes can be applied as soon as deployment is it makes application available with zero downtime.

What is portlet?

Portlets are small web applications written in Java that run in a portion of a web page and portal container is responsible to aggregate all portlets content and make it as web page.

What are the portlet features?

portlet are hot deployed applications.

zero down time.

Large functionality we can split it and make it as portlets.

What are the technologies can we use in portlet application?

We can use Java web based frame works to developer portlets(spring, struts, jsf, vaadin)
Liferay is also providing their own portlet development frameworks such as MVC Portlet and Alloy Portlet.

What is open social gadget?

open social gadgets are small application developed using browser based technologies such as HTML,JavaScript,Ajax. 

What are the features of open social gadgets ?

Open Social gadgets provide a standard way to develop applications for a portal environment.

Open social gadgets can use any of the back end technologies such as php,python,ruby and groovy. 

Open social gadgets are specific to develop social application.

How many types of Open social gadgets?

There are two types of Open social gadgets Remote gadgets and Local gadgets.

What is remote Gadget?

Remote gadgets run in remote server but present or use in any of portal and its developed in any of technologies but deployed in respective portal server but we can use it any where. its not advisable some intranets are not allowed to run remote apps in local portal.

What is Local Gadget?

local gadgets deployed in local server and use in portal which is already deployed in same server. 

How portlet can exposed to outside world?

Liferay lets you expose portlets to the outside world as Open Social gadgets. 

How liferay can Reuse existing web application in portals?

Redevelop an exist application into portlet applications. 

Web service based integrations like we expose web application features as web services and we will consume in liferay portlets. 

Iframe based usage. 

Using Web proxy liferay portlet 

If web application is used Struts or JSF then we can convert as portlets with minimal changes.

What are the technologies liferay supports?

Liferay support any of J2EE technologies so that we can develop portlet applications any of your choices. 

We can use Spring MVC, Struts 2, Ruby, PHP.

We can also use component based frameworks such as JSF,Vaadin and GWT.

The simpler way we can use liferay specific portlet framework such as MVC Portlet and Alloy Portlet 

What are the JavaScript libraries liferay supports?

Liferay supported JavaScript libraries such as Jquery, YUI, AUI, ExtJS and Dojo. 

What are the notable JSF component libraries?

We can use Component libraries such as ICE Faces, Rich Faces,Prime Faces with combination of JSF framework. 

What is advantage of Component based framework?

Component based framework work helps us to develop user Interface very quickly because we can find plenty of UI components that makes UI development easy as much easy. 

From Which version AUI is in Liferay ?

From version 6 liferay have come up with their own JavaScript implementation called Alloy UI which is based on YUI3. 

Most of the liferay portlets have used AUI Java script and its components to develop liferay user interface. 

What is AUI?

Alloy UI(AUI) is user interface component library consist of JavaScript,CSS and JSP tags. AUI provide many UI components for quick UI development in liferay and its built it on top of YUI3.

What is Service Builder Tool(SB)?

Liferay developed tool called Service Builder which can develop database services with simple configuration. 

Liferay’s Service Builder automates creating interfaces and classes for database persistence and service layers

What type of web services generated by Service Builder?

SB also implemented SOAP, JSON based web services to expose services to out side world.

Liferay not impose you to use specific technologies we can use any of technologies when we develop applications. 

Liferay have given many out of box features so that we can extend to customize liferay.

Which mechanism Liferay provided for extending or customize the liferay portal?

Liferay introduces mechanism called Plugins so that we can extend or customize liferay portal.we have different types of Plugins based on its contextual use.

Each plugin we can package as war file and deploy into liferay portal server so that we can see changes or add new features to the portal. 

Whats are the liferay plugins available?

Liferay have given Plugins SDK so that we can develop liferay plugins such as portlet,hook,layout,theme,ext and web.

What is Theme and its features?

Theme is liferay plugin and Themes are used to customize look and feel of liferay portal.

Themes consist of many css files, velocity,free marker template and java script files. 

Liferay 6 come up with responsive feature so that we can view lifera portla in mobile phone,tablets and desktops with consistence view. 

Most importantly, themes let you focus on designing your site’s UI, while leaving its functionality to the portlets. 

Themes are hot deployment capable plugin 

What is Layout Template and its features?

Layout Templates provide predefined page layout.we can split page as sections so that we can fill sections with portlets means arrangement of portlet in the page can decided by layout templates.

We can embded common use portlets in the layout so that it will be visible whenever we applied layout to the page. 

Like themes, layout templates are also written in Velocity and free marker templates and are hot-deployable. 

What is Hook Plugin and its features?

Hooks are used to Customizing or Extending the Out-of-Box Functionality and its 

Hook pluigins to user to modify portla properties not all some limited properties. 

Hooks can used to modify language properties files, JSP files, Struts Actions and modify portal services using Using service wrapper.

Hooks perform custom actions on startup, shutdown, login, logout, session creation, and session destruction. 

Liferay have many kind of hooks like JSP Hook,Portal Properties Hook, Language Properties hook, Service wrapper hook, Indexer Post Processor Hook, Struts Action Hook, Custom Action hook and Servlet filter hook

What is Ext Plugin and its features?

We will use Ext Plugins for advanced customization. ext can modify or change any of portal existed behaviors we can change any part of portal using ext plugins.

Ext plugins provide the largest degree of flexibility in modifying the Liferay core, allowing you to replace essentially any class with a custom implementation.

Ext Pluins not hot deployable so we need to restart server to see changes. 

Ext Plugin was introduced from Liferay 6 version before it was a separate component along with plugins SDK. 

What is Portlet Plugin and its features?

Portlet is used to add new features to liferay portal and its look like independent application and it uses the Liferay Portla API and Services.

Portlets are hot deployable applications. 

Portlet pluigins are very flexible application and its have independent database schema and its own services to fulfill requirements. 

Each portlet plugin may have one or more portlets. 
Portlet plugin use the Service Builder tool to generate the service layer. 

What is Web Plugins?

Web plugin is separate web application and that can be deployed into liferay portal. 

What are the Liferay development Choices?

Liferay Plugin development have many choices so that developer can choose their flexible tools.
Liferay have given many ways to develop liferay plugins such as 
Apache Ant and the Plugins SDK
Eclipse and the Liferay IDE
Liferay Developer Studio
Maven Based Development
Other IDE tools(NetBeans, IntelliJ IDEA )

What is default Build Mechanism in Liferay?

Liferay used ANT based build to deploy plugins into portal we can also use MAVEN based build.

What is Plugins SDK?

Liferay have given Plugins SDK so that we can develop plugin applications and its consist set of libraries and plugin templates so that we can simply create plugins and deploy into liferay portal. 

What is ANT?

ANT is a build tool for build and deploy applications. Its xml based configuration to defined application build process and its includes task called compile, packaging and deploy into server.

What is Apache ANT and the Plugins SDK?

Liferay Plugins SDK have provided ANT based commands so that we can run commands for create plugins and deploy plugins into portal. 

Plugins SDK provided command based UI with help of ANT tool. 

Before Start Development we need to install ANT in our machine and need to set required environment variable such as ANT_HOME and need to set ANT path variable. 

What is Eclipse and the Liferay IDE?

Liferay have developed Liferay IDE for eclipse so that we can integrate Liferay IDE with eclipse to develop Liferay Plugin.

Liferay IDE is GUI based interface to crate plugins ant its also provide different plugin templates so that we can create basic plugin very quickly and its consist of all basic configuration and its files. 

Liferay IDE is Eclipse Plugin and we need configure Plugins SDK into Eclipse to start development. 

Liferay IDE created plugins are used ANT tool to build and deploy into portal.

Liferay IDE/Eclipse by default have ANT tool if you want use your local installed ANT we need to configure in eclipse. 

What is Liferay Developer Studio?

Liferay Have developed Developer Studio and its Enterprise Edition for plugin development.

Its also like Liferay IDE but its have many features so that we can create and deploy liferay plugins. 

What is MAVEN?

Maven is application build tool so that we can build and deploy applications into server with minimal effort. If can do many tasks like compile,packaging and deploy into server.

What is MAVEN Based Development?

Many developers prefer other command-line alternatives to Apache Ant. The most popular of these alternatives is Maven. To support developers that want to use Maven we have mavenized Liferay artifacts for referencing in your Maven projects. See the next chapter for an in-depth look at developing plugins in Maven. 

What are the other IDE tool liferay can use?

We can also use NetBeans, IntelliJ IDEA for plugins development. 


Popular Posts

Recent Posts

Recent Posts Widget