Portlets
   HOME

TheInfoList



OR:

The Java Portlet Specification defines a
contract A contract is a legally enforceable agreement between two or more parties that creates, defines, and governs mutual rights and obligations between them. A contract typically involves the transfer of goods, services, money, or a promise to tr ...
between the portlet container and portlets and provides a convenient programming model for Java portlet developers. Portlets are pluggable
user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ...
software component Component-based software engineering (CBSE), also called component-based development (CBD), is a branch of software engineering that emphasizes the separation of concerns with respect to the wide-ranging functionality available throughout a give ...
s that are managed and displayed in a
web portal A web portal is a specially designed website that brings information from diverse sources, like emails, online forums and search engines, together in a uniform way. Usually, each information source gets its dedicated area on the page for displayi ...
, for example an
enterprise portal An enterprise portal, also known as an enterprise information portal (EIP), is a framework for integrating information, people and processes across organizational boundaries in a manner similar to the more general web portals. Enterprise portals p ...
or a web CMS. A portlet can aggregate (integrate) and personalize content from different sources within a web page. A portlet responds to requests from a web client with and generates dynamic content. Portlets produce fragments of markup (
HTML The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaSc ...
,
XHTML Extensible HyperText Markup Language (XHTML) is part of the family of XML markup languages. It mirrors or extends versions of the widely used HyperText Markup Language (HTML), the language in which Web pages are formulated. While HTML, prior ...
, WML) that are aggregated into a portal. Typically, following the
desktop metaphor In computing, the desktop metaphor is an interface metaphor which is a set of unifying concepts used by graphical user interfaces to help users interact more easily with the computer. The desktop metaphor treats the computer monitor as if it is ...
, a portal page is displayed as a collection of non-overlapping portlet windows, where each portlet window displays a portlet. Hence a portlet (or collection of portlets) resembles a
web-based application A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection. History In earlier computing models like client-serve ...
that is hosted in a
portal Portal often refers to: * Portal (architecture), an opening in a wall of a building, gate or fortification, or the extremities (ends) of a tunnel Portal may also refer to: Arts and entertainment Gaming * ''Portal'' (series), two video games ...
. Some examples of portlet applications are
e-mail Electronic mail (email or e-mail) is a method of exchanging messages ("mail") between people using electronic devices. Email was thus conceived as the electronic (digital) version of, or counterpart to, mail, at a time when "mail" meant ...
, weather reports,
discussion forum An Internet forum, or message board, is an online discussion site where people can hold conversations in the form of posted messages. They differ from chat rooms in that messages are often longer than one line of text, and are at least tempora ...
s, and
news News is information about current events. This may be provided through many different media: word of mouth, printing, postal systems, broadcasting, electronic communication, or through the testimony of observers and witnesses to events. N ...
. A portlet is managed by a
portlet container The Java Portlet Specification defines a contract between the portlet container and portlets and provides a convenient programming model for Java portlet developers. Portlets are pluggable user interface software components that are managed and ...
. Portlet standards platform independent application programming interfaces that are intended to enable software developers to create portlets that can be plugged into any portal supporting the standards. An example is the Java Portlet Specification. A Java portlet resembles a Java
Servlet A Jakarta Servlet (formerly Java Servlet) is a Java software component that extends the capabilities of a server. Although servlets can respond to many types of requests, they most commonly implement web containers for hosting web application ...
, but produces fragments rather than complete documents, and is not bound by a URL. A portlet container runs
portlet The Java Portlet Specification defines a contract between the portlet container and portlets and provides a convenient programming model for Java portlet developers. Portlets are pluggable user interface software components that are managed and ...
s and provides them with the required runtime environment. A portlet container contains portlets and manages their life cycles. It also provides persistent storage mechanisms for the portlet preferences. A portlet container receives requests from the portal to execute requests on the portlets hosted by it. A portlet container is not responsible for aggregating the content produced by the portlets; the portal itself handles aggregation. A portal and a portlet container can be built together as a single component of an application suite or as two separate components of a portal application.


JSR 168

The Java Portlet Specification V1.0 was developed under the
Java Community Process The Java Community Process (JCP), established in 1998, is a formalized mechanism that allows interested parties to develop standard technical specifications for Java technology. Anyone can become a JCP Member by filling a form available at thJCP w ...
as Java Specification Request JSR 168, and released in its final form in October 2003. The Java Portlet Specification V1.0 introduces the basic portlet programming model with: * two phases of action processing and rendering in order to support the Model–View–Controller pattern. * portlet modes, enabling the portal to advise the portlet what task it should perform and what content it should generate * window states, indicating the amount of portal page space that will be assigned to the content generated by the portlet * portlet data model, allowing the portlet to store view information in the render parameters, session related information in the portlet session and per user persistent data in the portlet preferences * a packaging format in order to group different portlets and other
Java EE Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web ser ...
artifacts needed by these portlets into one portlet application which can be deployed on the portal server. * Portal development as a way to integrate the different web-based applications for supporting deliveries of information and services.


Portlet Catalog

Initially Java portal vendors had their own portlet development framework thus those portlets were confined to specific portal servers and couldn't be deployed to the rest of the Java portals. After JSR 168 inception, Java portlets may be deployed on any Java portal servers adhering to JSR 168 specifications. A Portlets Catalog is a set of portlets that are ready-to-use components for enterprise portals. For those who want to adopt portals certainly need many and variety of portlets to deploy and run. Here Portlets catalog are of use. A JSR 168 portlets catalog makes sure that portlets under this catalog may run on any standards–compliant Java portal server. Types of portlet solution (vertical domains and technology) like collaboration, social networking, community, content management, utility, calendaring, HRM all are available in these catalogs. There are many open source and commercial Portlets Catalog available but JSR 168 based solutions are rare. JSR 168 specifications offer suitability to the developers to reuse the code to maintain a set of JSR 168 compliant portlets. For deployers, it's easy to keep a single set of solution and deploy it on many.


JSR 286

JSR-286 is the Java Portlet specification v2.0 as developed under the JCP and created in alignment with the updated version 2.0 of WSRP. It was released in June 2008. It was developed to improve on the short-comings of the version 1.0 specification, JSR-168. Some of its major features include: * Inter-Portlet Communication through events and public render parameters * Serving dynamically generated resources directly through portlets * Serving
AJAX Ajax may refer to: Greek mythology and tragedy * Ajax the Great, a Greek mythological hero, son of King Telamon and Periboea * Ajax the Lesser, a Greek mythological hero, son of Oileus, the king of Locris * ''Ajax'' (play), by the ancient Gree ...
or JSON data directly through portlets * Introduction of portlet filters and listeners


JSR 362

JSR-362 is the Java Portlet specification v3.0 and was released in April 2017. Some of its major features include: * Resource Dependencies * Explicit Render State * CDI 1.2 Integration * Servlet 3.1 Alignment * Portlet Hub & XHR IPC * FacesBridge Integration vi
JSR 378


See also

*
List of enterprise portal vendors This is a list of notable vendors of enterprise portals. An enterprise portal is a framework for integrating information, people and processes across organizational boundaries. {, class="wikitable sortable" , - ! Vendor ! Product Name ! Technolo ...
*
Web Services for Remote Portlets Web most often refers to: * Spider web, a silken structure created by the animal * World Wide Web or the Web, an Internet-based hypertext system Web, WEB, or the Web may also refer to: Computing * WEB, a literate programming system created by ...
(WSRP) * Java Portlet Specification * JSR 168 (Java Portlet Definition Standard)


References


External links


JSR 168
(Version 1.0 of the Java Portlet Specification)
JSR 286
(Version 2.0 of the Java Portlet Specification)
JSR 362
(Version 3.0 of the Java Portlet specification)
JSR 301
(Portlet 2.0 Bridge for JSF 1.2 Specification)
JSR 329
(Portlet 2.0 Bridge for JSF 1.2 Specification)
JSR 378
(Portlet 3.0 Bridge for JSF 2.2 Specification)
JSR 168 Open Source Reference Implementation at Apache

Open source JSR 168/WSRP community
at https://web.archive.org/web/20100613131851/http://www.java.net/
Rapid Portlet Generator
for generating JSR 168-compliant portlets
Dynamic SOAP Portlet
for dynamic integration of
SOAP Soap is a salt of a fatty acid used in a variety of cleansing and lubricating products. In a domestic setting, soaps are surfactants usually used for washing, bathing, and other types of housekeeping. In industrial settings, soaps are use ...
services in JSR-168 portals {{Web interfaces Portlet specification Portlet specification Web portals AMD AMD microprocessors AMD technologies