我在struts1 spring和hibernate集成中的动态Web应用程序是在64位机器上开发的。它在64位机器上运行正常但在32位机器上出现jar问题它给出了以下错误
SEVERE: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener
java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener
at java.lang.ClassLoader.findBootstrapClass(Native Method)
和
SEVERE: Error configuring application listener of class org.springframework.web.util.Log4jConfigListener
java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener
at java.lang.ClassLoader.findBootstrapClass(Native Method)
我应该更换32位机器的所有罐子吗?
答案 0 :(得分:2)
当我尝试编译一个没有servlet依赖的项目时,我有一些类似的问题,如果你使用maven将javax.servlet放在pom.xml中
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
如果您知道版本目标并且范围是提供,您可以将版本更改为另一个版本,因为可能您将使用tomcat或其他类型的服务器,其中已包含实现
或者,如果你不使用maven,你可以下载.jar并添加到你的项目的lib文件夹
答案 1 :(得分:0)
您在运行时只在类路径中没有Spring(全部或部分)。当您尝试加载应用程序时,似乎Log4jConfigListener
是引用的第一个类。注意将所有需要的jar文件复制到WEB-INF/lib
目录。