Neil Griffin created PLUTO-772:
----------------------------------
Summary: Implement MVCBean portlets
Key: PLUTO-772
URL: https://issues.apache.org/jira/browse/PLUTO-772
Project: Pluto
Issue Type: New Feature
Components: portlet container
Affects Versions: 3.0.2
Reporter: Neil Griffin
Assignee: Neil Griffin
This issue serves as a task for implementing a large subset of [MVC
1.0|https://www.mvc-spec.org] for use with portlet technology in Apache Pluto.
[The MVC 1.0 Specification, JavaDoc, and API are all licensed using The Apache
License 2.0|https://www.mvc-spec.org/news/2017/05/17/license-decided.html].
Although the Spec is also licensed using the standard JCP click-through
specification license, Pluto's implementation is in no way associated with the
JCP click-through specification license, and is not an implementation that ever
intends to pass the TCK, especially since the TCK is servlet/webapp based and
is incompatible with portlet environments.
h2. Background
Portlet 3.0 supplied the concept of a CDI "Bean Portlet" and introduced
annotation-driven method dispatching with annotations such as
{{@ActionMethod}}, {{@RenderMethod}}, and {{@ServeResourceMethod}}. This is
effectively the "C" (Controller) concern of the MVC design pattern.
However, Portlet 3.0 did not give us the "M" (Model) or "V" (View) concerns,
nor did it give us a CDI scope that allows for model data to survive from the
{{ACTION_PHASE}} to the {{RENDER_PHASE}} of the portlet lifecycle.
In order to remedy this shortcoming, Pluto's implementation of MVC 1.0
satisfies a large subset of MVC 1.0 requirements in a way that makes sense for
portlet developers. Requirements based on JAX-RS method dispatching are not
(and will not be) implemented -- instead, Pluto's implementation relies on the
aforementioned Portlet 3.0 CDI "Bean Portlet" method dispatching. Pluto also
implements {{@RedirectScoped}} so that model data to survive from the
{{ACTION_PHASE}} to the {{RENDER_PHASE}} of the portlet lifecycle.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)