Printed: Apr 19, 2026
From: http://www.jcp.org/en/jsr/detail?id=301
|
| Specification Leads | |||
| Michael Freedman | Oracle | ||
| Expert Group | |||
| Adobe Systems Inc. | BEA Systems | Bosch, Andy | |
| Brasier, Matthew | Christian, Raschka | Djeyassilane, Shankar | |
| Haley, Jondean | HIPPO | ICEsoft Technologies Inc. | |
| Mann, Kito D. | Marinschek, Martin | Oracle | |
| Red Hat | SAP Labs | Spiegl, Thomas | |
| Sun Microsystems, Inc. | TIBCO Software Inc. | Tiwari, Shashank | |
the following information has been updated since the original proposal:
Original Java Specification Request (JSR)
Identification |
Request |
Contributions
Section 1. Identification
Submitting Member: Oracle Corporation
Name of Contact Person: Don Deutsch
E-Mail Address: donal.deutsch
Telephone Number: +1 650 506 2275
Fax Number: +1 650 506 7416
Specification Lead: Michael Freedman
E-Mail Address: michael.freedman
Telephone Number: +1 650 506 4904
Fax Number: +1 650 506 7416
Initial Expert Group Membership:
SAP AG
TIBCO Software
Apache Software Foundation
BEA Systems, Inc.
Supporting this JSR:
Adobe Systems
Apache Software Foundation
BEA Systems Inc.
Red Hat (JBoss)
S&N AG
SunGard Higher Education
Sun Microsystems, Inc.
TIBCO
Vignette Corportation
Section 2: Request
The Java Portlet Container Specification will define the required behavior of a JSR 168/JSR286 portlet that proxies for JSF artifacts.
Currently, there are a number of JSF Portlet Bridge implementations including a number that have been open sourced. These implementations vary in style and substance to such as degree as to neither provide consistent interoperability across bridge implementations nor to provide interoperability across JSR portlet containers. I.e. the same JSF artifact can run differently in different bridge implementations and/or the same JSF artifact can run differently in the same bridge implementation running on a different portlet containers. This reduces the effectiveness of developing portlets using JSF technology as there are different rules to learn for different environments.
The purpose of this specification is to standardize the behavior of these bridge implementations to ensure true interoperability for JSF artifacts. The specification will focus on defining behavior related to three areas:
1. Coexistence: the specification will define rules ensuring a portlet bridge's implementation doesn't subvert concurrently executing non-portlet based JSF artifacts within the same web application, i.e. servlet/http based JSF artifacts. In addition, the specification will define rules ensuring a portlet bridge's implementation doesn't subvert JSF (controller) extensions that are running in the environment.
2. Correctness: there are differences between the portlet model and the JSF model. This specification will define the correct transformations between them.
3. Extensions: there are some portlet features for which there are no corresponding JSF concepts. This is increasingly true in the ongoing consideration of the next revision of Java Portlet Specification (JSR 286). For example, how do portlet events map to the JSF execution lifecyle? This specification will define how these extensions behave and are treated in the JSF environment.
At a minimum any platform that supports JSR 168 portlets. Currently, this is the J2EETM 1.4 platform.
Any platform that supports JSR 168 and/or JSR 286 portlets plus JavaServer Faces. Currently JSR 168/286 are JavaTM extensions for the J2EE platform.
No.
This will standardize the execution of JSF artifacts as portlets providing consistency and interoperability which should greatly enhance the desirability of implementing portlets in JSF.
The Java Portlet Specification concerns itself with the contract between the portlet container and the portlet. The Java Server Faces specification concerns itself with defining an MVC execution environment. This JSR defines how to bridge between the two.
The JSF Portlet Bridge provides a transformation service, mapping between JSR portlet semantics and JSF MVC semantics. This specification standarizes this mapping behavior, though not the mapping implementation.
javax.portlet.faces package name will be used for API specifications.
No.
No.
No.
No.
To be determined by the expert group, initial target is to have a working EG by Summer 2006, an early public draft by the early of 2007, a complete public draft by mid 2007 and a final version by late 2007.
E-mail discussion, teleconferencing as needed (likely regular -- weekly/bi-weekly), and occasional face-2-face meetings.
Transparency will be achieved by releasing regular (early) public drafts of the specification as the work progresses and by tracking, updating and posting an accurate schedule.
stand-alone.
N/A
The license will be a free-of-charge open source license compatible with Java EE licensing.
Section 3: Contributions
JSR 168: Java Portlet Specification 1.0: http://jcp.org/aboutJava/communityprocess/final/jsr168/index.html JSR 252: JavaServer Faces Specification 2.0 (Proposed Final draft 2): http://jcp.org/aboutJava/communityprocess/pfd/jsr252/index2.html These implementations provide a good starting point for understanding the variance in implementations: Sun Microsystem's source for a JSF Bridge Portlet for JSF 1.x: https://javaserverfaces.dev.java.net/servlets/ProjectDocumentList?folderID=3389&expandFolder=3389&folderID=1703 Apache MyFaces's source for a JSF Bridge Portlet for JSF 1.2: http://myfaces.apache.org/download.html
The existing source will be used to establish a common understanding of the role and function of such a bridge. It will help to establish a common venacular for discussing the specifics of what function needs to be specified.