On Aug 3, 2007, at 9:50 AM, Edgar Poce wrote:
Hi,
I'm using jetspeed 2.0 and I'm can't upgrade in the short term, I
also need to display a portlet in the velocity decoration, is there a
way to achieve the functionality provided by
$jetspeed.renderPortletEntity(...) which was included in later
versions?
Sounds like you are looking for something like:
<span style="position:absolute;right:5em">
$jetspeed.renderPortletEntity("theClock", "j2-admin::DateTimePortlet")
</span>
Have a look at the JPT implementation:
public String renderPortletEntity(String entityId, String
portletId)
{
RequestContext context = getRequestContext();
PortletAggregatorFragmentImpl fragment = new
PortletAggregatorFragmentImpl(
entityId);
fragment.setType(Fragment.PORTLET);
fragment.setName(portletId);
ContentFragment contentFragment = new ContentFragmentImpl
(fragment,
new HashMap());
//renderer.renderNow(contentFragment, context);
renderer.render(contentFragment, context);
return contentFragment.getRenderedContent();
}
PortletAggregatorFragmentImpl was available in 2.0, as was
ContentFragmentImpl
I guess what you are missing is this specific API
(renderPortletEntity) on the JPT
You could either build a JAR with the impl above and place it in
jetspeed/WEB-INF/lib
To get your new class into the decorator, add it the the velocity
tools as a request tool