Hello list. My name is David, and I started recently to develop tools for Sakai. We decided to use Wicket and we are happy with that.
The problem is that we started from a existent Hello world example (a Maven archetype) written for Wicket 1.4.17. However we would like to migrate to 1.5 (and even 6 when we have 1.5 working) to take advantage of all the new functionality (like tree viewers and graphic charts). When I started the migration I just changed the name of the version, and of course it didn't work. But following this guide: [email protected], I managed to build it (I use Maven) However I got an error (please find trace below). I updated my dependencies to use Api Servlet 2.5 instead 2.4 but I am still having the same error, and the tool worked perfectly with Wicket 1.4 Could somebody help me, please? Please find attached also the web.xml of my tool, where I think the problem is. Thank you in advance org.sakaiproject.portal.api.PortalHandlerException: java.lang.IllegalStateException: filter path was not configured at org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:881) caused by: java.lang.IllegalStateException: filter path was not configured at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:164) at org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:137) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:634) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339) at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:511) at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1470) at org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:213) at org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:96) at org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:881) at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:695) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Best regards, David Torres Computer Scientist Renuda UK tel: +44 (0)20 3371 1709 web: www.renuda.com<http://www.renuda.com/> Renuda UK is registered in England and Wales. Company number 6218863. VAT registration number 918 6490 91. Registered office: 35 Charleville Road, London W14 9JJ, UK.
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <display-name>sakai.wicketArchetype</display-name> <!-- This application's servlet class --> <servlet> <servlet-name>sakai.wicketArchetype</servlet-name> <servlet-class>org.apache.wicket.protocol.http.WicketServlet</servlet-class> <init-param> <param-name>applicationClassName</param-name> <param-value>wicket.tool.MyApplication</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <!-- Deploy mode --> <context-param> <param-name>configuration</param-name> <param-value>development</param-value> <!-- <param-value>deployment</param-value> --> </context-param> <!-- Sakai Request Filter --> <filter> <filter-name>sakai.request</filter-name> <filter-class>org.sakaiproject.util.RequestFilter</filter-class> </filter> <filter-mapping> <filter-name>sakai.request</filter-name> <servlet-name>sakai.wicketArchetype</servlet-name> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> <dispatcher>INCLUDE</dispatcher> </filter-mapping> <!-- Sakai Tool Listener --> <listener> <listener-class>org.sakaiproject.util.ToolListener</listener-class> </listener> <!-- Sakai Spring Listener --> <listener> <listener-class>org.sakaiproject.util.ContextLoaderListener</listener-class> </listener> </web-app>
