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

Reply via email to