Bug 793308 (JBEPP-392) - IllegalArgumentException when having portlet instance with colon in name
Summary: IllegalArgumentException when having portlet instance with colon in name
Keywords:
Status: CLOSED WONTFIX
Alias: JBEPP-392
Product: JBoss Enterprise Portal Platform 4
Classification: JBoss
Component: Portal
Version: 4.3.0.GA_CP4
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: 4.3.0.GA_CP7
Assignee: Default User
QA Contact:
URL: http://jira.jboss.org/jira/browse/JBE...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-07-07 13:55 UTC by mposolda
Modified: 2012-02-28 16:30 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
EPP 4.3.GA_CP05 - latest build, Sun JDK 1.5.17, Ubuntu linux
Last Closed: 2011-12-13 17:05:58 UTC
Type: Bug


Attachments (Terms of Use)


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

Description mposolda 2010-07-07 13:55:19 UTC
Date of First Response: 2010-07-11 10:12:30
project_key: JBEPP

Steps to reproduce:
1) Login as admin and go to http://localhost:8080/portal/auth/portal/admin
2) Go to portlet definitions and create instance of any portlet called my:instance
3) Go to portal objects tab and add our instance to any page
4) Go to the page with our instance. Now Catalina exception page can be seen with exception:

javax.servlet.ServletException: java.lang.IllegalArgumentException: Not a canonical value instanceWindow
	org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:278)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

root cause:

java.lang.IllegalArgumentException: Not a canonical value instanceWindow
	org.jboss.portal.core.model.portal.PortalObjectPath$CanonicalFormat.parse(PortalObjectPath.java:352)
	org.jboss.portal.core.model.portal.PortalObjectPath.<init>(PortalObjectPath.java:161)
	org.jboss.portal.core.model.portal.PortalObjectPath.parse(PortalObjectPath.java:309)
	org.jboss.portal.core.model.portal.PortalObjectId.parse(PortalObjectId.java:157)
	org.jboss.portal.core.model.portal.PortalObjectId.parse(PortalObjectId.java:136)
	org.jboss.portal.core.model.portal.navstate.PortalObjectNavigationalStateContext.createWindowKey(PortalObjectNavigationalStateContext.java:299)
	org.jboss.portal.core.model.portal.navstate.PortalObjectNavigationalStateContext.getWindowNavigationalState(PortalObjectNavigationalStateContext.java:194)
	org.jboss.portal.core.controller.portlet.ControllerPageNavigationalState.getWindowPublicContentStateParameters(ControllerPageNavigationalState.java:605)
	org.jboss.portal.core.controller.portlet.ControllerPageNavigationalState.initiateWindowPublicNavigationalStateUpdate(ControllerPageNavigationalState.java:640)
	org.jboss.portal.core.controller.portlet.ControllerPageNavigationalState.getPortletPublicNavigationalState(ControllerPageNavigationalState.java:347)
	org.jboss.portal.core.controller.portlet.PortletInvocationFactory$InternalInvokePortletCommandFactory.<init>(PortletInvocationFactory.java:320)
	org.jboss.portal.core.controller.portlet.PortletInvocationFactory.createInvokePortletCommandFactory(PortletInvocationFactory.java:69)
	org.jboss.portal.core.controller.portlet.PortletInvocationFactory.createRender(PortletInvocationFactory.java:142)
	org.jboss.portal.core.model.portal.command.render.RenderWindowCommand.createRenderInvocation(RenderWindowCommand.java:131)
	org.jboss.portal.core.impl.model.content.generic.InternalGenericContentProvider$2.createRenderInvocation(InternalGenericContentProvider.java:198)
	org.jboss.portal.core.impl.model.content.InternalContentProvider.renderWindow(InternalContentProvider.java:246)
	org.jboss.portal.core.impl.model.content.generic.InternalGenericContentProvider.renderWindow(InternalGenericContentProvider.java:267)
	org.jboss.portal.core.cms.content.InternalCMSContentProvider.renderWindow(InternalCMSContentProvider.java:105)
	org.jboss.portal.core.model.portal.command.render.RenderWindowCommand.execute(RenderWindowCommand.java:100)
	org.jboss.portal.core.controller.ControllerCommand$1.invoke(ControllerCommand.java:68)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:131)
	org.jboss.portal.core.aspects.controller.node.EventBroadcasterInterceptor.invoke(EventBroadcasterInterceptor.java:124)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.PageCustomizerInterceptor.invoke(PageCustomizerInterceptor.java:133)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.PolicyEnforcementInterceptor.invoke(PolicyEnforcementInterceptor.java:78)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.node.PortalNodeInterceptor.invoke(PortalNodeInterceptor.java:81)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.BackwardCompatibilityInterceptor.invoke(BackwardCompatibilityInterceptor.java:48)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.ControlInterceptor.invoke(ControlInterceptor.java:56)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.NavigationalStateInterceptor.invoke(NavigationalStateInterceptor.java:42)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.controller.ajax.AjaxInterceptor.invoke(AjaxInterceptor.java:55)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.ResourceAcquisitionInterceptor.invoke(ResourceAcquisitionInterceptor.java:50)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
	org.jboss.portal.core.controller.ControllerContext.execute(ControllerContext.java:134)
	org.jboss.portal.core.model.portal.command.render.RenderWindowCommand.render(RenderWindowCommand.java:80)
	org.jboss.portal.core.model.portal.command.render.RenderPageCommand.execute(RenderPageCommand.java:222)
	org.jboss.portal.core.controller.ControllerCommand$1.invoke(ControllerCommand.java:68)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:131)
	org.jboss.portal.core.aspects.controller.node.EventBroadcasterInterceptor.invoke(EventBroadcasterInterceptor.java:124)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.PageCustomizerInterceptor.invoke(PageCustomizerInterceptor.java:133)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.PolicyEnforcementInterceptor.invoke(PolicyEnforcementInterceptor.java:78)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.node.PortalNodeInterceptor.invoke(PortalNodeInterceptor.java:81)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.BackwardCompatibilityInterceptor.invoke(BackwardCompatibilityInterceptor.java:48)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.ControlInterceptor.invoke(ControlInterceptor.java:56)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.NavigationalStateInterceptor.invoke(NavigationalStateInterceptor.java:42)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.controller.ajax.AjaxInterceptor.invoke(AjaxInterceptor.java:55)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.controller.ResourceAcquisitionInterceptor.invoke(ResourceAcquisitionInterceptor.java:50)
	org.jboss.portal.core.controller.ControllerInterceptor.invoke(ControllerInterceptor.java:40)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
	org.jboss.portal.core.controller.ControllerContext.execute(ControllerContext.java:134)
	org.jboss.portal.core.model.portal.PortalObjectResponseHandler.processCommandResponse(PortalObjectResponseHandler.java:81)
	org.jboss.portal.core.controller.classic.ClassicResponseHandler.processHandlers(ClassicResponseHandler.java:79)
	org.jboss.portal.core.controller.classic.ClassicResponseHandler.processCommandResponse(ClassicResponseHandler.java:53)
	org.jboss.portal.core.controller.handler.ResponseHandlerSelector.processCommandResponse(ResponseHandlerSelector.java:70)
	org.jboss.portal.core.controller.Controller.processCommandResponse(Controller.java:315)
	org.jboss.portal.core.controller.Controller.processCommand(Controller.java:303)
	org.jboss.portal.core.controller.Controller.handle(Controller.java:261)
	org.jboss.portal.server.RequestControllerDispatcher.invoke(RequestControllerDispatcher.java:51)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:131)
	org.jboss.portal.server.aspects.server.ContentTypeInterceptor.invoke(ContentTypeInterceptor.java:68)
	org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.cms.aspect.IdentityBindingInterceptor.invoke(IdentityBindingInterceptor.java:47)
	org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.server.PortalContextPathInterceptor.invoke(PortalContextPathInterceptor.java:45)
	org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.server.LocaleInterceptor.invoke(LocaleInterceptor.java:96)
	org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.server.UserInterceptor.invoke(UserInterceptor.java:196)
	org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.server.aspects.server.SignOutInterceptor.invoke(SignOutInterceptor.java:98)
	org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.impl.api.user.UserEventBridgeTriggerInterceptor.invoke(UserEventBridgeTriggerInterceptor.java:65)
	org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.server.IdentityCacheInterceptor.invoke(IdentityCacheInterceptor.java:68)
	org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.core.aspects.server.TransactionInterceptor.org$jboss$portal$core$aspects$server$TransactionInterceptor$invoke$aop(TransactionInterceptor.java:49)
	org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
	org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
	org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:253)
	org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
	org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
	org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:262)
	org.jboss.portal.core.aspects.server.TransactionInterceptor$invoke_N5143606530999904530.invokeNext(TransactionInterceptor$invoke_N5143606530999904530.java)
	org.jboss.portal.core.aspects.server.TransactionInterceptor.invoke(TransactionInterceptor.java)
	org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:38)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.server.aspects.LockInterceptor$InternalLock.invoke(LockInterceptor.java:69)
	org.jboss.portal.server.aspects.LockInterceptor.invoke(LockInterceptor.java:130)
	org.jboss.portal.common.invocation.Invocation.invokeNext(Invocation.java:115)
	org.jboss.portal.common.invocation.Invocation.invoke(Invocation.java:157)
	org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:252)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

Comment 1 mposolda 2010-07-07 14:07:29 UTC
I tried couple of other characters but problem can be seen only with : character. Exception can be seen if window name contains colon character. In case that instance name has colon in name but window name does not have colon, portlet can be seen on page and everything is fine.

Comment 2 Prabhat Jha 2010-07-07 15:33:27 UTC
Link: Added: This issue is a dependency of JBQA-3461


Comment 3 Prabhat Jha 2010-07-11 14:12:30 UTC
I believe Thomas has already committed the fix to the tag. He may have forgot to add the jira issue in his commit so I don't see the commit here. Please test with the latest CP05 zip and close this jira accordingly.

Comment 7 mark yarborough 2011-11-09 22:34:03 UTC
Moved to 43 CP7 for triage after 5.2 ships.

Comment 8 Jared MORGAN 2012-01-03 23:26:37 UTC
Release Notes Docs Status: Added: Not Required



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