Skip to main content

Liferay 7 - MVC Portlet via Maven

Leveraging OSGI Module

Liferay leverages the OSGi framework to provide a development environment for modular applications. There are many OSGi best practices that Liferay Portal follows to provide an easy-to-develop-for platform. Here, we are not going to talk about these rather we will focus on developing our first Liferay 7 Portlet.

1. Create a folder : D:\Workspace\Liferay7

2. Open your command prompt as Administrator

C:\windows\system32>cd D:\Workspace\Liferay7
C:\windows\system32>d:
D:\Workspace\Liferay7>

3. Execute the below command

D:\Workspace\Liferay7>mvn archetype:generate -DarchetypeGroupId=com.liferay -DarchetypeArtifactId=com.liferay.project.templates.mvc.portlet -DgroupId=com.mindtree -DartifactId=com.mindtree.sample.portlet -DinteractiveMode=false -DclassName=Sample -Dauthor=AtifAliSiddiqui

Note:
- Before executing the above command, make sure you have installed Maven on your machine.
- Wait for the "BUILD SUCCESS" message to appear
Important:
In maven everything is a plugin. So Archetype is also a plugin.

Each plugin is identified by Group Id, Artifact Id and version.
In our case we have used an Archetype Plugin.
- GroupId is com.liferay
- ArtifactId is com.liferay.project.templates.mvc.portlet.
4. Please verify the generated directory structure looks as classified below

- com.mindtree.sample.portlet
----- src
--------- main
------------- java
----------------- com
--------------------- mindtree
------------------------- portlet
----------------------------- SamplePortlet.java
------------- resources
----------------- content
--------------------- Language.properties
----------------- META-INF
--------------------- resources
------------------------- init.jsp
------------------------- view.jsp
----- .gitignore
----- bnd.bnd
----- build.gradle
----- pom.xml

5. Import this maven project into eclipse.

- Open up eclipse.
- Mention the Workspace as "D:\Workspace\Liferay7".
- On the Left hand side, Package Explorer. Right click and select Import.
- Expand "Maven", choose "Existing Maven Projects".
- Root Directory - "D:\Workspace\Liferay7".
- The maven project we just created should appear and be selected under projects. Click Finish.

6. Add some text to your view.jsp

- In Package Explorer, go to "src/main/resources/META-INF/resources/view.jsp"
- Enter the following
<%@ include file="/init.jsp" %>


This is the first Portlet created by Atif.
7. Lets build our Project / Portlet

- In Eclipse select "Run" -> "Run Configurations"
- Right click "Maven Build" -> New
- Name :: Build Portlet
- Base directory :: ${workspace_loc:/com.mindtree.sample.portlet}
- Goal :: clean package
- Click Apply
- Click Run
- Check in Console if the Build is Successful

8. Lets Deploy our Portlet to Liferay

- Start up your Liferay7 instance, if not already running.
- Copy the "com.mindtree.sample.portlet-1.0-SNAPSHOT.jar" from "D:\Workspace\Liferay7\com.mindtree.sample.portlet\target".
- Paste "com.mindtree.sample.portlet-1.0-SNAPSHOT.jar" to "D:\Liferay\Community Edition 7.0\liferay-ce-portal-7.0-ga3\deploy".
- See Liferay console / logs on the deployment of your portlet.
9. Now login to Liferay and see if your portlet has deployed, and add to page.

Comments

Popular posts from this blog

Keyboard First Impressions: Kinesis Advantage Mechanical Ergonomic Keyboard

An ergonomic keyboard with mechanical switches that’s looking to attract users interesting in a high quality, highly ergonomic offering and don’t mind the rather steep learning curve or the price. The  TECK  isn’t the only such keyboard, of course, and I decided to see what other mechanical switch ergonomic keyboards I could get for comparison. Next up on the list is the granddaddy of high-end ergonomic keyboards, the  Kinesis Contour Advantage . I wanted to provide my first impressions of the Kinesis, along with some thoughts on the initial switch and the learning curve. This time, I also made the effort to put together a video of my first few minutes of typing. It actually wasn’t as bad as with the TECK, but that’s likely due to the fact that I already lost many of my typing conventions when I made that switch earlier this year. I’ll start with the video, where I take a typing test on four different keyboards and provide some thoughts on the experience, and then ...

Everything about Java 8

The following post is a comprehensive summary of the developer-facing changes coming in Java 8. This next iteration of the JDK is currently scheduled for general availability in  September 2013 . Read More

OnePlus 3T in 2017

Hi there, I just bought OnePlus 3T, why? Even when OnePlus 5 is out and OnePlus 5T looming around the corner. Top five reasons why the 3T might just be a very sound investment if you are in the market for a new phone. 3T is going for a relatively cheap price. Its wickedly fast. Its 1080p display. Its software. OnePlus 5 isnt a huge update. Key Specs Display - 5.50-inch Processor - 1.6GHz quad-core Front Camera - 16-megapixel Resolution - 1080x1920 pixels RAM - 6GB OS - Android 7.1.1 Storage - 64GB Rear Camera - 16-megapixel Battery Capacity - 3400mAh Overall Rating 9/10 - Design 9/10 - Display 9/10 - Software 9/10 - Performance 9/10 - Battery life 9/10 - Camera 9/10 - Value for money Important - No other phone with all round 9's. Good Solid system and app performance Very good battery life Competent set of cameras Amazing premium build quality Good value for money Bad Nothing as yet