Hi Neil, After modifying the pom.xml and rebuilding, deploying, all the portlets now display without error. Modifications to pom.xml include commenting out provided scope for apache taglibs, and adding a dependency on JSTL 1.2 :
<*dependency*> <*groupId*>javax.servlet</*groupId*> <*artifactId*>jstl</*artifactId*> <*version*>1.2</*version*></*dependency*><*dependency*> <*groupId*>org.apache.taglibs</*groupId*> <*artifactId*>taglibs-standard-spec</*artifactId*> *<!--<scope>provided</scope>--> *</*dependency*> Im not really sure what Im supposed to see here. I thought the demo would allow you to change colors are send text messages, but none of that seems to be working for me. I am seeing messages in the Chrome console though... -- David S Taylor 707 529-9194 da...@bluesunrise.com On Wed, Dec 3, 2014 at 3:31 PM, Neil Griffin <neil.grif...@portletfaces.org> wrote: > Hi David, > > Just a suggestion, but you might want to start with a new/clean > Tomcat 7.0.21 that does not include Pluto. > > Not sure why, but that's what I had to do last week in order to get it to > work. I think I also had to add the following to tomcat-users.xml: > > <user name="pluto" password="pluto" roles="pluto,manager"/> > > Neil > > On Dec 3, 2014, at 6:15 PM, David S Taylor <da...@bluesunrise.com> wrote: > > Scott, > > I tried it out, but got errors, see below. Here are the steps I used to > deploy ... please let me know if I am missing something or doing something > wrong > > 0. Pull latest on PortletHub branch > > > git brach > *PortletHub > master > > > git pull origin > > 1. Build Pluto from root directory > > mvn clean install > > 2. Build Distribution > > ant -f dist-build.xml > > 3. start Pluto > > cd target/dist/pluto-2.1.0-SNAPSHOT/bin > chmod +x *.sh > ./startup.sh > > 4. deploy the Portlet Hub > > cp PortletHubDemo/target/PortletHubDemo.war > target/dist/pluto-2.1.0-SNAPSHOT/webapps/ > > 5. Login to Pluto as pluto/pluto > > 6. Create a new page called Hub from Pluto Admin > > 7. Add any Hub portlet to the Hub page. I tried a few, they all get this > error when navigating to the Hub page: > > > Error rendering portlet MessageBoxPortlet. > > javax.portlet.PortletException: org.apache.jasper.JasperException: The > absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either > web.xml or the jar files deployed with this application > at > org.apache.pluto.container.impl.PortletRequestDispatcherImpl.doDispatch(PortletRequestDispatcherImpl.java:187) > at > org.apache.pluto.container.impl.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:227) > at basic.portlet.MessageBoxPortlet.doView(MessageBoxPortlet.java:63) > at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:348) > at javax.portlet.GenericPortlet.render(GenericPortlet.java:253) > at > org.apache.pluto.driver.services.container.FilterChainImpl.doFilter(FilterChainImpl.java:163) > at > org.apache.pluto.driver.services.container.FilterChainImpl.processFilter(FilterChainImpl.java:91) > at > org.apache.pluto.driver.services.container.FilterManagerImpl.processFilter(FilterManagerImpl.java:105) > at > org.apache.pluto.container.driver.PortletServlet.dispatch(PortletServlet.java:340) > at > org.apache.pluto.container.driver.PortletServlet.doGet(PortletServlet.java:261) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684) > at > org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:593) > at > org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:530) > at > org.apache.pluto.driver.container.DefaultPortletInvokerService.invoke(DefaultPortletInvokerService.java:233) > at > org.apache.pluto.driver.container.DefaultPortletInvokerService.render(DefaultPortletInvokerService.java:117) > at > org.apache.pluto.container.impl.PortletContainerImpl.doRender(PortletContainerImpl.java:157) > at > org.apache.pluto.driver.tags.PortletTag.doStartTag(PortletTag.java:165) > at > org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService(portlet_002dskin_jsp.java:95) > at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:433) > at > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684) > at > org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:593) > at > org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:530) > at > org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:927) > at > org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._jspx_meth_c_005fforEach_005f1(pluto_002ddefault_002dtheme_jsp.java:617) > at > org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._jspx_meth_c_005fotherwise_005f0(pluto_002ddefault_002dtheme_jsp.java:561) > at > org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._jspx_meth_c_005fchoose_005f0(pluto_002ddefault_002dtheme_jsp.java:422) > at > org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._jspService(pluto_002ddefault_002dtheme_jsp.java:217) > at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:433) > at > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684) > at > org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:471) > at > org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402) > at > org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329) > at > org.apache.pluto.driver.PortalDriverServlet.doGet(PortalDriverServlet.java:255) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269) > at > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515) > at > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.apache.jasper.JasperException: The absolute uri: > http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the > jar files deployed with this application > at > org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:56) > at > org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:410) > at > org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:117) > at > org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:311) > at > org.apache.jasper.compiler.TagLibraryInfoImpl.(TagLibraryInfoImpl.java:152) > at > org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:410) > at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475) > at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1425) > at org.apache.jasper.compiler.Parser.parse(Parser.java:138) > at > org.apache.jasper.compiler.ParserController.doParse(ParserController.java:242) > at > org.apache.jasper.compiler.ParserController.parse(ParserController.java:102) > at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:198) > at org.apache.jasper.compiler.Compiler.compile(Compiler.java:373) > at org.apache.jasper.compiler.Compiler.compile(Compiler.java:353) > at org.apache.jasper.compiler.Compiler.compile(Compiler.java:340) > at > org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:644) > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:358) > at > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684) > at > org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:593) > at > org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:530) > at > org.apache.pluto.container.impl.PortletRequestDispatcherImpl.doDispatch(PortletRequestDispatcherImpl.java:174) > ... 68 more > > > > -- > David S Taylor > 707 529-9194 > da...@bluesunrise.com > > > On Wed, Dec 3, 2014 at 7:37 AM, Martin Scott Nicklous < > scott.nickl...@de.ibm.com> wrote: > >> >> Hi, >> >> I pushed several commits to the PortletHub branch of the Pluto repository, >> completing the Portlet Hub functionality (I think). There are quite a few >> changes, one of which ended up going deeper than I had really expected, >> which is why it took a little longer than planned. >> >> Changes: >> >> 1) Added accessor helper functions to the PortletParameters and >> PortletState objects >> >> 2) Modified portlet JavaScript code to use the new accessors >> >> 3) Used jslint to improve the portletHubImpl.js code >> >> 4) Completed the portlet hub action functionality by allowing the Portlet >> Client JavaScript code to provide a form element to the action() method >> rather than having to set the action parameters on the URL. >> >> In order to keep the client-side implementation easy, I implemented this >> through use of the XHR2 FormData object. >> >> It turns out that XHR2 sends FormData as "multipart/form-data" rather than >> as "application/x-www-form-urlencoded", so multipart form support was >> needed on the server side as well. In order to avoid writing my own parser >> for the multipart form data, I moved the Pluto servlet dependency to v3.0. >> Some JSPs weren't working for non-obvious reasons, so I moved the JSP and >> EL dependencies to v2.2 and moved to the latest standard tag library as >> well. That ended up solving the problem. >> >> Now everything seems to work. We've got the PortletHub functionality >> complete AND we have moved to the Java EE 6 level of servlet api, JSP api, >> EL api, and JSTL support. >> >> It would be good if someone could try this out and verify that it doesn't >> just work only on my machine. Since there are a number of changes, you >> will >> have to pull the latest level from the PortletHub branch, recompile, and >> completely redeploy Pluto and the demo portlets to see the changes. >> >> regards, >> Scott >> >> > >