alisa0123 2009-04-23 19:21
浏览 392
已采纳

web.xml添加listener应用变得不可用是为什么?

我在运行web应用的时候,在web.xml中添加了listener后整个资源就变的不可用了。把listener去掉就正常,这是为什么呢?
下面是我添加listener后log的内容:

2009-4-23 19:01:04 org.apache.catalina.startup.HostConfig checkResources
信息: Reloading context [/testPetstore]
2009-4-23 19:01:05 org.apache.catalina.core.StandardContext listenerStart
严重: Error configuring application listener of class com.sun.javaee.blueprints.petstore.model.CatalogFacade
java.lang.NoClassDefFoundError: Ljavax/persistence/EntityManagerFactory;
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Class.java:2291)
at java.lang.Class.getDeclaredFields(Class.java:1743)
at org.apache.catalina.util.DefaultAnnotationProcessor.processAnnotations(DefaultAnnotationProcessor.java:134)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3790)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1116)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1214)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassNotFoundException: javax.persistence.EntityManagerFactory
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 15 more
2009-4-23 19:01:05 org.apache.catalina.core.StandardContext listenerStart
严重: Skipped installing application listeners due to previous error(s)
2009-4-23 19:01:05 org.apache.catalina.core.StandardContext start
严重: Error listenerStart
2009-4-23 19:01:05 org.apache.catalina.core.StandardContext start
严重: Context [/testPetstore] startup failed due to previous errors

由此看错误出在:
Ljavax/persistence/EntityManagerFactory
但是如何解决呢?

  • 写回答

1条回答 默认 最新

  • hantsy 2009-04-23 19:32
    关注

    早说过了,petstore 2.0 需要一个Java EE标准环境,web容器是无法运行的。
    你这里明显就没有java persistence api支持,而所有的Java EE标准都内置了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog