Book Image

Liferay User Interface Development

By : Jonas X. Yuan, Xinsheng Chen, Frank Yu
Book Image

Liferay User Interface Development

By: Jonas X. Yuan, Xinsheng Chen, Frank Yu

Overview of this book

<p>Liferay employs a specialized theming system, which allows you to change the look and feel of the user interfaces. As a developer, by using the right tools to create and manipulate themes with Liferay Portal, you can get your site to look any way you want it to; but the Liferay theming system can be difficult to get started with. This practical guide provides you with a well organized manual for working with Liferay as a programmer to help you get started.<br /><br />Liferay User Interface Development is a pioneer in explaining Liferay's powerful theming system by taking you through examples to get you to create your own themes as quickly as possible. It focuses on how portal pages are created and styled and also discusses some simple configuration and customization to change the look and feel of a portal page. Its explicit instructions are accompanied by plenty of source code. With the open source nature of Liferay, you will find a user-friendly environment to design themes with the latest user interface technologies.<br /><br />Liferay User Interface Development unlocks the potential of using Liferay as a framework to develop a rich user interface.</p> <p>The book starts off with how you should go about structuring a Liferay Portal web page. It identifies the components of a portal page: theme, layout, and portlets. This hands-on tutorial explains themes, portlets, and Alloy UI, which is the latest output from the Alloy Project of Liferay, in an easy-to-understand way. It covers all aspects of a theme from its inception and rendering through its consumption by an end user, with in-depth discussion.<br /><br />By the end of this book, you will clearly understand themes, layouts, and the Alloy API. Most importantly you will obtain the skills to write a theme and layout templates, apply them to a portal, and also control the portlet UI through different mechanisms.</p> <p>This clear, concise, and practical tutorial will ensure that you have developed skills to become a competent Liferay themer. The detailed text is accompanied with source code that allows you to play with the examples, update the code, and add custom features.</p>
Table of Contents (12 chapters)
11
Index

Velocity template for e-mail

There are other uses for Velocity templates. For example, we can use a Velocity template for generating the body of an e-mail. We put the e-mail body in a template instead of hard-coding it in Java. We would also put the sender's name and the sender's e-mail address in a portlet.properties file.

  1. Run create.bat vmail Vmail in the ${PLUGINS_SDK_HOME}/portlets/ directory to create a Vmail portlet.
  2. Create a ${PLUGINS_SDK_HOME}/portlets/vmail-portlet/docroot/WEB-INF/src/com/sample/jsp/portlet/etemplate.vm template with the following content:
    Thank you for your excellent work on $company.getProjectName() for $company.getCompanyName()
  3. Create a ${PLUGINS_SDK_HOME}/portlets/vmail-portlet/docroot/WEB-INF/src/com/sample/jsp/portlet/JSPPortlet.java file with the following content:
    String template = StringUtil.read(getClass().getClassLoader(), "com/sample/jsp/portlet/etemplate.vm", false);
    Ecompany eCom = new Ecompany();
    // ignore details
    variables.put(&quot...