You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-dev@portals.apache.org by "Elliot Metsger (JIRA)" <ji...@apache.org> on 2006/09/03 23:33:24 UTC

[jira] Assigned: (PLUTO-233) Exception thrown if edit or help mode is not supported by portlet

     [ http://issues.apache.org/jira/browse/PLUTO-233?page=all ]

Elliot Metsger reassigned PLUTO-233:
------------------------------------

    Assignee: Elliot Metsger

> Exception thrown if edit or help mode is not supported by portlet
> -----------------------------------------------------------------
>
>                 Key: PLUTO-233
>                 URL: http://issues.apache.org/jira/browse/PLUTO-233
>             Project: Pluto
>          Issue Type: Bug
>          Components: portlet container, portal driver
>    Affects Versions: 1.1.0, 1.1.0-beta1
>            Reporter: Craig Doremus
>         Assigned To: Elliot Metsger
>             Fix For: 1.1.0
>
>
> If a portlet does not support edit or help mode an exception is thrown if the window control for edit or help mode is selected.
> Here is the top part of the stack trace produced if the Help mode is selected:
> javax.portlet.PortletException: doHelp method not implemented
> 	at javax.portlet.GenericPortlet.doHelp(GenericPortlet.java:343)
> 	at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:258)
> 	at javax.portlet.GenericPortlet.render(GenericPortlet.java:175)
> 	at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:208)
> 	at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:143)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> 	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
> 	at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
> 	at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
> 	at org.apache.pluto.core.PortletInvoker.invoke(PortletInvoker.java:169)
> 	at org.apache.pluto.core.PortletInvoker.render(PortletInvoker.java:111)
> 	at org.apache.pluto.core.PortletContainerImpl.doRender(PortletContainerImpl.java:158)
> 	at org.apache.pluto.driver.tags.PortletTag.doStartTag(PortletTag.java:138)
> 	at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspx_meth_pluto_portlet_0(org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp:97)
> 	at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService(org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp:72)
> 	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> 	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
> 	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
> 	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Portlet modes and buttons in the 1.1 portal driver

Posted by Elliot Metsger <em...@jhu.edu>.
Hi all,

I'd like the portal to only display the buttons for the modes supported 
by the portlet.  It appears this is in Jira as PLUTO-233 and PLUTO-252. 
  I'm wondering if the list can comment on my approach.

In order to do this I have a patch in my working copy which does the 
following:

1. Exposes the supported modes of the portlet by modifying the 
PortletWindowConfig class, adding getModes(String mimeType) and 
setModes(Map) methods.
2. Modifies the PortletRegistryServiceImpl to populate the registry on 
initialization.
3. Modifed the PortletRegistryServiceImpl to add the supported modes to 
the PortletWindowConfig (which occurs during initialization)

That's as far as I've gotten.  I have debugging inside of PortletTag 
which confirms that what I've done so far works:

[DEBUG] PortletInvoker - Performing Render Invocation
[DEBUG] PortletInvoker - Dispatching to portlet servlet at: 
/PlutoInvoker/TestPortlet1
<...snip...>
[DEBUG] PortletTag - Evaluated portletId [${portlet}] to 
[/testsuite.TestPortlet2]
[DEBUG] PortletTag - Rendering Portlet Window: 
org.apache.pluto.driver.services.portal.PortletWindowConfig@3650ed
[DEBUG] PortletTag - Unable to determine content type from request.
[DEBUG] PortletTag - Portlet Window supports the following modes for 
content type [text/html]: [VIEW], [EDIT], [HELP]
<...snip...>

If this approach is acceptable, I'll move forward with updating the view 
side of things so that the portlet mode buttons are displayed properly. 
  If I've missed anything or if this approach is off base, please do let 
me know.

Thanks a lot,
Elliot

Elliot Metsger (JIRA) wrote:
>      [ http://issues.apache.org/jira/browse/PLUTO-233?page=all ]
> 
> Elliot Metsger reassigned PLUTO-233:
> ------------------------------------
> 
>     Assignee: Elliot Metsger
> 
>> Exception thrown if edit or help mode is not supported by portlet
>> -----------------------------------------------------------------
>>
>>                 Key: PLUTO-233
>>                 URL: http://issues.apache.org/jira/browse/PLUTO-233
>>             Project: Pluto
>>          Issue Type: Bug
>>          Components: portlet container, portal driver
>>    Affects Versions: 1.1.0, 1.1.0-beta1
>>            Reporter: Craig Doremus
>>         Assigned To: Elliot Metsger
>>             Fix For: 1.1.0
>>
>>
>> If a portlet does not support edit or help mode an exception is thrown if the window control for edit or help mode is selected.
>> Here is the top part of the stack trace produced if the Help mode is selected:
>> javax.portlet.PortletException: doHelp method not implemented
>> 	at javax.portlet.GenericPortlet.doHelp(GenericPortlet.java:343)
>> 	at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:258)
>> 	at javax.portlet.GenericPortlet.render(GenericPortlet.java:175)
>> 	at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:208)
>> 	at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:143)
>> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
>> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>> 	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
>> 	at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
>> 	at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
>> 	at org.apache.pluto.core.PortletInvoker.invoke(PortletInvoker.java:169)
>> 	at org.apache.pluto.core.PortletInvoker.render(PortletInvoker.java:111)
>> 	at org.apache.pluto.core.PortletContainerImpl.doRender(PortletContainerImpl.java:158)
>> 	at org.apache.pluto.driver.tags.PortletTag.doStartTag(PortletTag.java:138)
>> 	at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspx_meth_pluto_portlet_0(org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp:97)
>> 	at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService(org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp:72)
>> 	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>> 	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
>> 	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
>> 	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
>> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>