【问题标题】:Tomcat unable to start applicationTomcat 无法启动应用程序
【发布时间】:2017-03-09 17:57:59
【问题描述】:

我已经在tomcat 服务器中安装了petclinic 应用程序。在tomcat 启动和加载petclinic 应用程序期间,我遇到以下堆栈跟踪错误。如何解决这个问题?

apache-tomcat-7.0.47/webapps/petclinic 2016 年 10 月 27 日 12:14:36 PM org.apache.catalina.core.StandardContext startInternal

严重:ServletContainerInitializer 处理期间出错 javax.servlet.ServletException:无法在以下位置实例化 WebApplicationInitializer 类 org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:160) 在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5423) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 在 org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) 在 org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) 在 org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633) 在 org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1120) 在 org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1678) 在 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:483) 在 java.util.concurrent.FutureTask.run(FutureTask.java:274) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1157) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:627) 在 java.lang.Thread.run(Thread.java:798) 引起: java.lang.NoClassDefFoundError: org.glassfish.jersey.server.ResourceConfig 位于 java.lang.J9VMInternals.verifyImpl(Native Method) 在 java.lang.J9VMInternals.verify(J9VMInternals.java:94) 在 java.lang.J9VMInternals.initialize(J9VMInternals.java:169) 在 java.lang.J9VMInternals.newInstanceImpl(Native Method) 在 java.lang.Class.newInstance(Class.java:1781) 在 org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:157) ... 12 更多原因:java.lang.ClassNotFoundException: org.glassfish.jersey.server.ResourceConfig 位于 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702) 在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547) ... 18 更多

【问题讨论】:

    标签: spring tomcat web-applications


    【解决方案1】:

    我想你没有让 spring 知道一些 bean 类。

    查看您的 context.xml 或 dispatcher-context.xml。

    在上面的异常堆栈中, 它说发生了 java.lang.ClassNotFoundException。

    即使您的 java src 包中有类文件,Spring 也无法找到它们。

    如果我的回答没有解决你的问题, 您需要显示您的 xml 或源代码以确定问题所在。

    【讨论】:

    • 我的 context.xml 是空的,就像普通的 tomcat 安装 context.xml 一样,在宠物诊所应用程序中也没有 dispatcher-context.ml
    最近更新 更多