Bug 793871 (JBEPP-944) - "org.gatein.pc.api.NoSuchPortletException" occurs when adding an .NET wsrp portlet to a page.
Summary: "org.gatein.pc.api.NoSuchPortletException" occurs when adding an .NET wsrp po...
Keywords:
Status: CLOSED NEXTRELEASE
Alias: JBEPP-944
Product: JBoss Enterprise Portal Platform 5
Classification: JBoss
Component: Portal
Version: 5.1.0.GA
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: 5.2.0.GA
Assignee: claprun@redhat.com
QA Contact:
URL: http://jira.jboss.org/jira/browse/JBE...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-05-10 16:17 UTC by Gary Hu
Modified: 2013-09-02 05:13 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-01-12 15:31:57 UTC
Type: Bug


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker JBEPP-944 0 None None None Never

Description Gary Hu 2011-05-10 16:17:24 UTC
Help Desk Ticket Reference: https://na7.salesforce.com/500A0000007AnIu
project_key: JBEPP

I got the following errors when adding an .NET wsrp portlet to a page on EPP 5.1.
  Caused by: org.gatein.pc.api.NoSuchPortletException: No such portlet /netunity.0A14BC29-63CE-4081-93FC-484DB45FF9FF
	at org.gatein.pc.portlet.container.ContainerPortletInvoker.getPortlet(ContainerPortletInvoker.java:99)
	at org.gatein.pc.portlet.PortletInvokerInterceptor.getPortlet(PortletInvokerInterceptor.java:84)
	at org.gatein.pc.portlet.state.producer.ProducerPortletInvoker.invoke(ProducerPortletInvoker.java:211)
	at org.gatein.pc.federation.impl.FederatedPortletInvokerService.invoke(FederatedPortletInvokerService.java:151)
	at org.gatein.pc.federation.impl.FederatingPortletInvokerService.invoke(FederatingPortletInvokerService.java:211)
	at org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:89)
	at org.gatein.pc.portlet.aspects.PortletCustomizationInterceptor.invoke(PortletCustomizationInterceptor.java:76)
	at org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:89)
	at org.gatein.pc.portlet.aspects.ConsumerCacheInterceptor.invoke(ConsumerCacheInterceptor.java:162)
	at org.gatein.pc.portlet.PortletInvokerInterceptor.invoke(PortletInvokerInterceptor.java:89)
	at org.exoplatform.portal.webui.application.UIPortlet.invoke(UIPortlet.java:1039)
	at org.exoplatform.portal.webui.application.UIPortletLifecycle.processRender(UIPortletLifecycle.java:203)

The following steps could reproduce the issue.

1) login as root.
2) go to page group->WSRP to create a consumer, for example, netunity, using the producer wsdl url: http://www.netunitysoftware.com/wsrp2interop/wsrpproducer.asmx?WSDL
3) the consumer should be able to be created successfully and the remote portlets should be able to show up correctly under the "REMOTE" tab of "Portlet" on the Application Registry page. then add the remote portlet to a category, for example "Web".
4) create a new page by adding the wsrp portlet from the category, for example "web". you can see the error mentioned above in the log.

Comment 1 Martin Weiler 2011-05-11 08:08:09 UTC
It seems to make a difference how the remote portlet is added to the categories:

Approach 1:
----------
1.a Group -> Administration -> Application Registry
1.b Click on 'Portlet'
1.c Click on 'REMOTE'
1.d Select remote portlet and click on 'Click here to add into categories', add the portlet to Web category
1.e Create a new page and add the portlet -> ERROR: org.gatein.pc.api.NoSuchPortletException: No such portlet /netunity.E3C97F09-2C61-473a-B303-663B0D20E1B7

Approach 2:
----------
2.a Group -> Administration -> Application Registry
2.b In the 'CATEGORIES' box, select the Web category
2.c Click the + symbol to add portlets to this category
2.d Change select box 'Application Type' to 'wsrp'
2.e Select a portlet and click 'Add'
2.f Create a new page and add the portlet -> WORKS



Comment 2 Martin Weiler 2011-05-11 08:18:10 UTC
While it does not explain the difference in the generated portletID depending on how the portlet is added to the categories, there is a related JIRA regarding the inability to add portlets where the id has a preceding slash to a page: https://issues.jboss.org/browse/JBEPP-854

Comment 3 Gary Hu 2011-05-11 21:55:44 UTC
Here is another approach

3.a Group -> Administration -> Application Registry
3.b click "Import Applications".There will be categories "remote" as well as the producer services created by EPP. For example, I'm using NetUnit public producer, so "NetUnit" and "NetUnit Producer" categories are generated. 
3.c Create a new page and add the portlet from the categories "remote", or "NetUnit" or "NetUnit Producer" -> WORKS



Comment 5 Jared MORGAN 2011-11-16 22:52:34 UTC
Release Notes Docs Status: Added: Not Yet Documented


Comment 6 hfnukal@redhat.com 2012-01-12 14:32:51 UTC
Labels: Added: EPP_5_2_1_Candidate


Comment 7 Chris Laprun 2012-01-12 15:10:22 UTC
I believe that this has been fixed. I need to double check though.

Comment 8 Chris Laprun 2012-01-12 15:31:57 UTC
Labels: Removed: EPP_5_2_1_Candidate 
Release Notes Text: Added: Remote portlets were previously inconsistently handled at the Application Registry level. This situation resulted in an error being thrown when a remote portlet was added to a page after it had manually been added to a category from the Portlet tab of the Application Registry. This issue has been addressed and it should be now possible to add remote portlets to pages without problem, regardless of how they were made available to categories.



Note You need to log in before you can comment on or make changes to this bug.