You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by "David Sean Taylor (JIRA)" <je...@portals.apache.org> on 2007/05/09 18:33:15 UTC

[jira] Updated: (JS2-660) Request attribute not available in jsp when using the JetspeedPowerTool

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

David Sean Taylor updated JS2-660:
----------------------------------

          Component/s: Aggregation
        Fix Version/s: 2.1.1
    Affects Version/s:     (was: 2.1)
                       2.1.1

> Request attribute not available in jsp when using the JetspeedPowerTool
> -----------------------------------------------------------------------
>
>                 Key: JS2-660
>                 URL: https://issues.apache.org/jira/browse/JS2-660
>             Project: Jetspeed 2
>          Issue Type: Bug
>          Components: Aggregation
>    Affects Versions: 2.1.1
>            Reporter: Nicolas Dutertry
>         Assigned To: David Sean Taylor
>             Fix For: 2.1.1
>
>
> The request attributes set in a portlet are not available inside a jsp after an "include" when the portlet is inserted in the header.vm with JetspeedPowerTool.
> For example I have the foolowing code in a portlet doView :
>     request.setAttribute("test", "hello");
>     getPortletContext().getRequestDispatcher("/test.jsp").include(request, response);
> test.jsp contains :
>     ${test}
> And in header.vm :
>     $jetspeed.renderPortletEntity("testportlet", "portlets::TestPortlet")
> The value of attribute "test" is not visible. It works fine if the portlet is included in a psml.
> I suggest the following correction in the class org.apache.jetspeed.engine.servlet.ServletRequestImpl, in the method getAttribute(String) : 
> Replace : 
>     public Object getAttribute( String name )
>     {
>         Object value = null;
>         // In parallel mode, first look up from the worker.
>         Thread ct = Thread.currentThread();
>         if (ct instanceof Worker)
>         {
>             value = CurrentWorkerContext.getAttribute(name);
>         }
>         ...
> With : 
>     public Object getAttribute( String name )
>     {
>         Object value = null;
>         // In parallel mode, first look up from the worker.
>         Thread ct = Thread.currentThread();
>         if (ct instanceof Worker)
>         {
>             value = CurrentWorkerContext.getAttribute(name);
>             if (null == value)
>             {
>                 PortletRequest pr = (PortletRequest) super.getAttribute("javax.portlet.request");
>                 if (pr != null)
>                 {
>                     value = CurrentWorkerContext.getAttribute(nameSpaceMapper.encode(portletWindow.getId(),
>                             name));
>                 }
>             }
>         }
>         ....

-- 
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-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org