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
2. Open your command prompt as Administrator
C:\windows\system32>cd D:\Workspace\Liferay7
C:\windows\system32>d:
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.
- 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.
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
- 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.
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.
- 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
Post a Comment