I have Jetspeed 2 built and running using the following environment:
Tomcat 5.0.28 MySQL 4.0.17 I'm trying to deploy my first portlet using the instructions at http://wiki.apache.org/portals/Jetspeed2/DeployingCustomPortlets. When I deploy the portlet, Jetspeed goes through the hot deploy sequence. Here is my output: INFO: Loading portlet application from web archive C:\apache\tomcat\webapps\jetspeed\WEB-INF\deploy\MyFirstPortlet.war INFO: Preparing to (re) deploy portlet app "DougsApp" INFO: Deploying portlet applicaion WAR MyFirstPortlet.war INFO: Portlet application deployment target directory is C:\apache\tomcat\webapps\jetspeed/..//DougsApp Writing out infused web.xml for DougsApp INFO: Did not load extended metadata as it most likely does not exist. java.io.FileNotFoundException: Unable to locate file or path C:\apache\tomcat\webapps\jetspeed\..\DougsApp\WEB-INF\jetspeed-portlet.xml INFO: Loading web.xml into memory.... INFO: Saving the portlet.xml in the registry... INFO: Committing registry changes... INFO: FileSystem deployment done. Oct 21, 2004 10:35:29 AM org.apache.catalina.core.StandardHostDeployer install INFO: Installing web application at context path /DougsApp from URL file:/C:/apache/tomcat/webapps/DougsApp/ INFO: Catalina deployment response: OK - Deployed application at context path /DougsApp Do I need to package my portlet with a jetspeed-portlet.xml deployment descriptor? When I view the Jetspeed main page, I get the following error below in the new portlet window. Thanks for the help. I'm looking forward to getting more involved in the Jetspeed2. - Doug org.apache.jetspeed.container.window.FailedToRetrievePortletWindow: org.apache.jetspeed.container.window.FailedToCreateWindowException: Error generating new PortletEntity: org.apache.jetspeed.components.portletentity.PortletEntityNotGeneratedExcept ion: Failed to retrieve Portlet Definition for DougsApp::DougsFirst at org.apache.jetspeed.container.window.impl.PortletWindowAccessorImpl.getPortl etWindow(PortletWindowAccessorImpl.java:100) at org.apache.jetspeed.velocity.JetspeedPowerTool.getWindowState(JetspeedPowerT ool.java:279) at org.apache.jetspeed.velocity.JetspeedPowerTool.getDecoratorActions(JetspeedP owerTool.java:896) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.velocity.runtime.parser.node.PropertyExecutor.execute(PropertyExe cutor.java:111) at org.apache.velocity.util.introspection.UberspectImpl$VelGetterImpl.invoke(Ub erspectImpl.java:302) at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier. java:157) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.ja va:175) at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java :327) at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.ja va:51) at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirecti ve.java:95) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:23 0) at org.apache.velocity.Template.merge(Template.java:256) at org.apache.jetspeed.velocity.JetspeedVelocityViewServlet.mergeTemplate(Jetsp eedVelocityViewServlet.java:116) at org.apache.velocity.tools.view.servlet.VelocityViewServlet.doRequest(Velocit yViewServlet.java:455) at org.apache.velocity.tools.view.servlet.VelocityViewServlet.doGet(VelocityVie wServlet.java:411) 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(Application FilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:157) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher. java:704) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch er.java:590) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher .java:510) at org.apache.jetspeed.dispatcher.JetspeedRequestDispatcher.include(JetspeedReq uestDispatcher.java:65) at org.apache.jetspeed.velocity.JetspeedPowerTool.decorateAndIncludePortlet(Jet speedPowerTool.java:774) at org.apache.jetspeed.velocity.JetspeedPowerTool.decorateAndInclude(JetspeedPo werTool.java:661) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(Ub erspectImpl.java:267) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:197 ) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.ja va:175) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.jav a:220) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55) at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:166) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.jav a:114) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55) at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:166) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.jav a:114) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:23 0) at org.apache.velocity.Template.merge(Template.java:256) at org.apache.jetspeed.velocity.JetspeedVelocityViewServlet.mergeTemplate(Jetsp eedVelocityViewServlet.java:116) at org.apache.velocity.tools.view.servlet.VelocityViewServlet.doRequest(Velocit yViewServlet.java:455) at org.apache.velocity.tools.view.servlet.VelocityViewServlet.doGet(VelocityVie wServlet.java:411) 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(Application FilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:157) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher. java:704) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch er.java:590) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher .java:510) at org.apache.jetspeed.dispatcher.JetspeedRequestDispatcher.include(JetspeedReq uestDispatcher.java:65) at org.apache.portals.bridges.common.GenericServletPortlet.doView(GenericServle tPortlet.java:339) at org.apache.jetspeed.portlets.layout.LayoutPortlet.doView(LayoutPortlet.java: 143) at org.apache.jetspeed.portlets.layout.MultiColumnPortlet.doView(MultiColumnPor tlet.java:107) at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:247) at javax.portlet.GenericPortlet.render(GenericPortlet.java:175) at org.apache.jetspeed.container.JetspeedContainerServlet.doGet(JetspeedContain erServlet.java:234) 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(Application FilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:157) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher. java:704) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch er.java:590) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher .java:510) at org.apache.jetspeed.container.invoker.ServletPortletInvoker.invoke(ServletPo rtletInvoker.java:213) at org.apache.jetspeed.container.invoker.ServletPortletInvoker.render(ServletPo rtletInvoker.java:124) at org.apache.pluto.PortletContainerImpl.renderPortlet(PortletContainerImpl.jav a:103) at org.apache.jetspeed.container.JetspeedPortletContainerWrapper.renderPortlet( JetspeedPortletContainerWrapper.java:88) at org.apache.jetspeed.aggregator.impl.PortletRendererImpl.renderNow(PortletRen dererImpl.java:110) at org.apache.jetspeed.aggregator.impl.PageAggregatorImpl.build(PageAggregatorI mpl.java:267) at org.apache.jetspeed.aggregator.AggregatorValve.invoke(AggregatorValve.java:4 8) at org.apache.jetspeed.pipeline.JetspeedPipeline.invokeNext(JetspeedPipeline.ja va:209) at org.apache.jetspeed.pipeline.valve.impl.ActionValveImpl.invoke(ActionValveIm pl.java:112) at org.apache.jetspeed.pipeline.JetspeedPipeline.invokeNext(JetspeedPipeline.ja va:209) at org.apache.jetspeed.container.ContainerValve.invoke(ContainerValve.java:76) at org.apache.jetspeed.pipeline.JetspeedPipeline.invokeNext(JetspeedPipeline.ja va:209) at org.apache.jetspeed.profiler.impl.ProfilerValveImpl.invoke(ProfilerValveImpl .java:102) at org.apache.jetspeed.pipeline.JetspeedPipeline.invokeNext(JetspeedPipeline.ja va:209) at org.apache.jetspeed.security.impl.SecurityValveImpl.invoke(SecurityValveImpl .java:97) at org.apache.jetspeed.pipeline.JetspeedPipeline.invokeNext(JetspeedPipeline.ja va:209) at org.apache.jetspeed.container.url.impl.PortalURLValveImpl.invoke(PortalURLVa lveImpl.java:55) at org.apache.jetspeed.pipeline.JetspeedPipeline.invokeNext(JetspeedPipeline.ja va:209) at org.apache.jetspeed.capabilities.impl.CapabilityValveImpl.invoke(CapabilityV alveImpl.java:137) at org.apache.jetspeed.pipeline.JetspeedPipeline.invokeNext(JetspeedPipeline.ja va:209) at org.apache.jetspeed.localization.impl.LocalizationValveImpl.invoke(Localizat ionValveImpl.java:73) at org.apache.jetspeed.pipeline.JetspeedPipeline.invokeNext(JetspeedPipeline.ja va:209) at org.apache.jetspeed.pipeline.JetspeedPipeline.invoke(JetspeedPipeline.java:1 91) at org.apache.jetspeed.engine.AbstractEngine.service(AbstractEngine.java:251) at org.apache.jetspeed.engine.JetspeedServlet.doGet(JetspeedServlet.java:227) 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(Application FilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:157) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher. java:704) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDis patcher.java:474) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatch er.java:409) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher .java:312) at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:670 ) at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:637) at org.apache.jsp.index_jsp._jspService(index_jsp.java:44) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:3 24) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application FilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja va:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContext Valve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja va:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase .java:462) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137 ) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118 ) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne ction(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:683) at java.lang.Thread.run(Thread.java:534) Caused by: org.apache.jetspeed.container.window.FailedToCreateWindowException: Error generating new PortletEntity: org.apache.jetspeed.components.portletentity.PortletEntityNotGeneratedExcept ion: Failed to retrieve Portlet Definition for DougsApp::DougsFirst at org.apache.jetspeed.container.window.impl.PortletWindowAccessorImpl.createPo rtletWindow(PortletWindowAccessorImpl.java:138) at org.apache.jetspeed.container.window.impl.PortletWindowAccessorImpl.createPo rtletWindow(PortletWindowAccessorImpl.java:120) at org.apache.jetspeed.container.window.impl.PortletWindowAccessorImpl.getPortl etWindow(PortletWindowAccessorImpl.java:96) ... 136 more Caused by: org.apache.jetspeed.components.portletentity.PortletEntityNotGeneratedExcept ion: Failed to retrieve Portlet Definition for DougsApp::DougsFirst at org.apache.jetspeed.components.portletentity.PortletEntityAccessComponentImp l.generateEntityFromFragment(PortletEntityAccessComponentImpl.java:96) at org.apache.jetspeed.container.window.impl.PortletWindowAccessorImpl.createPo rtletWindow(PortletWindowAccessorImpl.java:133) ... 138 more