« Back to Using Liferay

Web Applications Integration

(Redirected from Liferay Web Application Integrator)

Integrating standalone web applications into a Portal is not an easy task. There is no magic recipe for a good integration in a very short time without having to make compromises. However, Liferay makes it possible to achieve a near-native integration with minimal effort.

The Web Application Integrator (WAI) will automatically deploy any standard Java servlet application as a portlet within Liferay. To use the WAI, simply copy an application WAR file into the autodeploy directory, and then add the portlet to your page. Liferay transparently handles the rest.

Behind the scenes, your application will be embedded in an iframe inside the portlet. While this would normally result in annoying artifacts such as scrollbars, the WAI will automatically resize the iframe to fit its contents, and provides a bookmarkable link to the current page.

Deploying a real world application #

To see an example of how simple it is to deploy an application using the WAI, follow the instructions below to install JAMWiki. It is distributed as a single WAR file, and is perfect for demonstration purposes.

  1. Download JAMWiki
  2. Start Liferay
  3. Copy the jamwiki.war file in the "deploy" directory, located in the root directory of your Liferay bundle
  4. Wait for the the portlet to be auto-deployed
  5. Create a new page
  6. Add the jamwiki portlet to the page; it will be located in the "Undefined" category
  7. Follow the normal jamwiki installation process
  8. Jamwiki is setup!

You can now use it just like any other portlet: maximize it, minimize it, or move it around the page. If you want to send someone a link to the current page or bookmark it, just click on "Permanent Link" at the bottom of the portlet.

Limitations #

  • Refreshing your browser without clicking on "Permanent Link" will return you to the application's home page.
  • Login credentials cannot be shared with the embedded application.
  • If the user navigates away from your site within the iframe, the automatic resizing and permanent link functionality will cease to function.

Settings #

The deployment process performed by WAI can be customized by creating a liferay-plugin-package.xml file in the WEB-INF directory of the web application.

  • wai.connector.iframe.height.default: The default height of the iframe to be used on pages where the actual height cannot be determined.
0 Attachments
Average (0 Votes)
The average rating is 0.0 stars out of 5.
Threaded Replies Author Date
Handling non java web applications It is a... Paul Voors September 30, 2008 12:20 AM
For non-java applications, try using the Iframe... Connor Mckay August 2, 2010 6:36 PM

Handling non java web applications

It is a good solution for java web applications. But how to handle non java application, which can not be fitted into a war file (like jspwiki and jira)? For instance a big php application that does not fit in a portlet? For a PHP application a solution might be using quercus in some way, as it is done in resin. Other -remote?- applications might be handled with a fake/empty war file which is configured in the portal after autodeploy. The "war-file" should only contain the url, packed in such way that it can be picked up by the portal.
Posted on 9/30/08 12:20 AM.
Connor Mckay
For non-java applications, try using the Iframe portlet. It provides essentially the same functionality without requiring that the embedded application be contained in a WAR, or even written in Java.
Posted on 8/2/10 6:36 PM in reply to Paul Voors.