[ 
https://issues.apache.org/jira/browse/JS2-949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Woonsan Ko resolved JS2-949.
----------------------------

    Resolution: Fixed

Done.

Brief explanation:
- Jetspeed 2.2 will always behave as a buffering portal implementation for both 
portal pipeline and desktop pipeline.
  (I thought that desktop pipeline should behave as a streaming portal, but it 
turned out to be able to use buffering solution as well.)
- A portlet can contribute any element in the head of the page by using 
standard API (createElement(), addProperty(MimeResponse.MARKUP_HEAD_ELEMENT, 
element)).
- Jetspeed keeps the insertion order of head elements contributed by a portlet 
in both portal pipeline and desktop pipeline.
  (For example, if a portlet adds a script block, A, followed by another script 
block, B, then Jetspeed guarantees script block A is prior to script block B.)
- Jetspeed include just one head element if there are multiple elements with 
same ID. That is, if a head element is contributed with ID attribute, then the 
ID attribute is used by Jetspeed for this purpose.
  (For example, if a script element with ID='dojo' is contributed by a portlet 
and another script element with same ID='dojo' is contributed by another 
portlet, then Jetspeed will include only one element.)
  If a contributed head element does not have ID attribute, then the element 
will be stringified to generate an ID for the element.

By the way, the old Jetspeed interfaces and head aggregation components should 
be refactored to comply with Portlet 2.0 spec.
I will create a new JIRA issue for this problem and for migration of the 
existing portlets based on the old APIs.

> Portlet 2.0 optional feature support: head contribution
> -------------------------------------------------------
>
>                 Key: JS2-949
>                 URL: https://issues.apache.org/jira/browse/JS2-949
>             Project: Jetspeed 2
>          Issue Type: Improvement
>    Affects Versions: 2.2-M1
>            Reporter: Woonsan Ko
>            Assignee: Woonsan Ko
>             Fix For: 2.2.0
>
>
> - To provide more optimized way handling DOM element for head contribution 
> element.
> - Page aggregators should aggregate head elements to be contributed to the 
> page
>   * Portal pipeline acts as non-streaming portal implementation,
>      while Desktop pipeline acts as streaming portal implementation.
>   * In Desktop pipeline, as a streaming portal, the portal will invoke 
> render() method twice: one for head elements and the other for rendering 
> markups.
> - AJAX desktop implementations should be slightly changed to adapt itself to 
> this change.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscr...@portals.apache.org
For additional commands, e-mail: jetspeed-dev-h...@portals.apache.org

Reply via email to