The portal provides a consolidated view of multiple content sources, or portlets, in a single browser display. The process of consolidating and rendering this content together is known as aggregation. In Jetspeed, the aggregator is made up of several pluggable Spring components that plug into the Jetspeed engine.
List of Aggregators:
Component Name | Description | Multithreaded? | JSR-168 Caching? |
---|---|---|---|
PageAggregator | Given a PSML page, aggregates the content of all portlets on that page. | no | yes |
AsyncPageAggregator | A multi-threaded, asynchronous PSML page aggregator. | yes | yes |
PortletAggregator | Renders the content of one single portlet. | no* | yes |
<!-- Default portlet timeout in milliseconds: Zero means no portlet timeout option by default. --> <constructor-arg> <value>0</value> </constructor-arg>
The default aggregator is single-threaded. To switch to multi-threaded, edit the pipelines.xml spring configuration file:
<!-- Before --> <bean id="aggregatorValve" class="org.apache.jetspeed.aggregator.AggregatorValve" init-method="initialize" <constructor-arg> <ref bean="org.apache.jetspeed.aggregator.PageAggregator"/> </constructor-arg> </bean> <!-- After --> <bean id="aggregatorValve" class="org.apache.jetspeed.aggregator.AggregatorValve" init-method="initialize" <constructor-arg> <ref bean="org.apache.jetspeed.aggregator.AsyncPageAggregator"/> </constructor-arg> </bean>
For the multithreaded aggregator, you can override the default setting for rendering timeout for a specific portlet. This value is set in milliseconds and represents the timeout value that Jetspeed will give the portlet to complete rendering before it gives up.
<portlet> <portlet-name>PickANumberPortlet</portlet-name> <js:metadata name="timeout">3000</js:metadata> </portlet>