Writing portlets with Apache Pluto and deploying them into Apache Geronimo

Source: Internet
Author: User
Tags versions tomcat apache tomcat

A brief introduction to Geronimo and Pluto

Apache Geronimo is a new member of the Java™platform, Enterprise Edition (Java EE) Server family (version 1.0 was released in January 2006). It is a powerful combination of several other projects, including OPENEJB, Axis, Jetty, Tomcat, ActiveMQ, and ServiceMix. Geronimo has recently been widely publicized because it is another Java 2 Platform, Enterprise Edition (EE) certified server. It is built from scratch using a dependency injection container. Geronimo also provides fine-grained control over class loader, allowing you to specify parent-child relationships, rather than just deleting all the classes in the shared Lib directory, and hoping that there are no problems.

Apache Pluto is a reference implementation of the Portlet specification. Pluto itself is not a full-featured portal server; instead, it is a lightweight portlet container that is suitable for embedding into a full-fledged portal server or testing a portlet. Pluto is currently used in several open source portal servers, such as Apache Jetspeed 2, Uportal, and Jahia. Pluto now supports version 1.0 of the Portlet specification (JSR 168), and version 2.0 of the specification (JSR 286) is currently under development.

If you are using Pluto to develop a portlet or portal server, it is meaningful to use it in conjunction with Geronimo. This is especially true if the portal or Portlet uses features specific to Geronimo, such as GBeans. Pluto's Web site does not explain how to install Pluto on Geronimo, but you can make some adjustments to the installation method.

Install Geronimo

Installing Geronimo is simple: simply install the Jetty-geronimo package from the Geronimo Web site and extract it into the Geronimo_home directory. Like Apache Tomcat, you can start the server with a startup script (or a batch file) that is located in the Geronimo_home/bin directory.

Note: A Geronimo 2.0-m2 with Jetty is used in this article. These steps have not been tested against other versions or Tomcat-geronimo packages.

Installing Pluto

Download the Pluto 1.1 package from the Pluto site and unzip it into the Pluto_home directory. The package is a binary version of the Pluto container that is bound to Tomcat, so you need to do some extra work to make it run on Geronimo.

Note: Pluto 1.1 is used in this paper. These steps have not been tested against previous versions.

To add a library to the repository

Pluto requires that some jar files be placed in a shared location so that the Portlet application and the portal driver itself can use the jar files. Starting with version 1.1, Geronimo supports shared library directories. However, creating explicit dependencies is a better choice because it allows finer control.

To define dependencies between libraries, libraries must be available for the Geronimo repository. All Pluto dependencies are in the Pluto_home/shared/lib directory. However, because Geronimo already has some of these libraries installed, just add some of these libraries to the repository:

Pluto-container-1.1.0.jar

Pluto-descriptor-api-1.1.0.jar

Pluto-descriptor-impl-1.1.0.jar

Pluto-taglib-1.1.0.jar

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.