我刚刚下载了 JBoss Portal Server 2.7.2(准确地说是 JBoss Portal + JBoss AS 4.2.3 捆绑包)并尝试像示例中提供的 SimpleHelloWorld 一样部署 portlet。portlet 部署得很好,但是当我把它放在一个页面上时,我得到了以下异常。我也尝试添加其他 Portlet(例如 Spring WebFlow dist 提供的预订 MVC portelt),但同样的问题发生了。
当我创建新实例时会出现问题,例如当我创建 CMS Portlet 的新实例时,我会收到相同的错误。如果我使用现有实例,它可以工作。如果我部署一个使用“portle-instances.xml”创建实例的 portlet,那么它可以正常工作,但是由于以下错误,使用 Admin 创建其他实例并在页面上部署它们会失败。
我究竟做错了什么?有人可以帮忙吗?
javax.servlet.ServletException: java.lang.IllegalArgumentException: Not a canonical value SimplestHelloWorldWindow
org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:278)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
root cause
java.lang.IllegalArgumentException: Not a canonical value SimplestHelloWorldWindow
org.jboss.portal.core.model.portal.PortalObjectPath$CanonicalFormat.parse(PortalObjectPath.java:357)
org.jboss.portal.core.model.portal.PortalObjectPath.<init>(PortalObjectPath.java:161)
org.jboss.portal.core.model.portal.PortalObjectPath.parse(PortalObjectPath.java:314)
org.jboss.portal.core.model.portal.PortalObjectId.parse(PortalObjectId.java:158)
org.jboss.portal.core.model.portal.PortalObjectId.parse(PortalObjectId.java:143)
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.getPortletWindowNavigationalState(ControllerPageNavigationalState.java:230)
org.jboss.portal.core.model.portal.command.render.RenderWindowCommand.getPortletNavigationalState(RenderWindowCommand.java:121)
org.jboss.portal.core.impl.model.content.InternalContentProvider.renderWindow(InternalContentProvider.java:211)
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:134)
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:134)
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:80)
org.jboss.portal.core.controller.classic.ClassicResponseHandler.processHandlers(ClassicResponseHandler.java:78)
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.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.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.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:803)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)