2010-12-28 2 views
0
org.apache.wicket.protocol.http.WebApplicationFactoryCreationException: Unable to create application factory of class org.apache.wicket.spring.SpringWebApplicationFactory 
     at org.apache.wicket.protocol.http.WicketFilter.getApplicationFactory(WicketFilter.java:228) 
     at org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:271) 
     at org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:252) 
     at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97) 
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
     at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713) 
     at org.mortbay.jetty.servlet.Context.startContext(Context.java:140) 
     at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282) 
     at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518) 
     at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499) 
     at org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:115) 
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
     at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152) 
     at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156) 
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
     at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152) 
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
     at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
     at org.mortbay.jetty.Server.doStart(Server.java:224) 
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
     at org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132) 
     at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:454) 
     at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:396) 
     at org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:210) 
     at org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:184) 
     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:107) 
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:195) 
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148) 
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:140) 
     at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) 
     at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) 
     at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) 
     at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:314) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:151) 
     at org.apache.maven.cli.MavenCli.execute(MavenCli.java:445) 
     at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:168) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:132) 
     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:597) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) 
2010-12-28 14:51:46.213:INFO::Started [email protected]:8080 

Я использую Wicket 1.5 M3, Spring 3.0, и я получаю эту ошибку. Ниже приведена моя конфигурация Web.xml.Невозможно создать приложение фабрику класса org.apache.wicket.spring.SpringWebApplicationFactory

<?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/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" 
    version="2.4"> 

    <display-name>mysticpaste</display-name> 

    <!-- 
      There are three means to configure Wickets configuration mode and they are 
      tested in the order given. 
      1) A system property: -Dwicket.configuration 
      2) servlet specific <init-param> 
      3) context specific <context-param> 
      The value might be either "development" (reloading when templates change) 
      or "deployment". If no configuration is found, "development" is the default. 
    --> 



    <filter> 
      <filter-name>wicket.mysticpaste</filter-name> 
      <filter-class> 
       org.apache.wicket.protocol.http.WicketFilter 
       </filter-class> 
      <init-param> 
       <param-name>applicationFactoryClassName</param-name> 
       <param-value>org.apache.wicket.spring.SpringWebApplicationFactory</param-value> 
      </init-param> 
    </filter> 

     <context-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value>classpath:com/mysticcoders/mysticpaste/spring/application-context.xml</param-value> 
    </context-param> 
    <listener> 
     <listener-class> 
      org.springframework.web.context.ContextLoaderListener 
     </listener-class> 
    </listener> 

    <filter> 
     <filter-name>wicket.session</filter-name> 
     <filter-class>org.apache.wicket.protocol.http.servlet.WicketSessionFilter</filter-class> 
     <init-param> 
      <param-name>filterName</param-name> 
      <param-value>wicket.mysticpaste</param-value> 
     </init-param> 
    </filter> 

    <filter-mapping> 
     <filter-name>wicket.session</filter-name> 
     <url-pattern>/servlet/*</url-pattern> 
    </filter-mapping> 

    <filter> 
     <filter-name>open.hibernate.session.in.view</filter-name> 
     <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class> 
    </filter> 

    <!-- Important! This filter mapping must come before Wicket's! --> 
    <filter-mapping> 
     <filter-name>open.hibernate.session.in.view</filter-name> 
     <url-pattern>/*</url-pattern> 
    </filter-mapping> 



</web-app> 

ответ

0

Вы объявили/аннотировали свое веб-приложение как фасоль весны? Это необходимо, прежде чем Wicket сможет найти ваше веб-приложение через Spring. (Смотри также: SpringWebApplicationFactory)

Смежные вопросы