DispatcherServlet不能被强制转换为提供了作用域的javax.servlet



这个问题可能是一个重复的问题,但由于我无法找到一个具体的解决方案,因此再次发布,我得到这个错误:

DispatcherServlet cannot be cast to javax.servlet.Servlet

即使在依赖项中提供的作用域如下

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.0.1</version>
    <scope>provided</scope>
</dependency>

我在我的eclipse上运行一个spring安全web应用程序。我也尝试了所有其他范围,但没有帮助。

只是一个想法,但是我假设您在服务器上运行应用程序时得到这个错误。如果是这样,则可能存在类装入器问题,并且您有两个由不同的类装入器装入的javax.servlet.Servlet类实例。如果你有一个GenericServlet的实例,那么它必须可以转换到它的一个超类,但是,不知何故,VM试图将它转换到不同的超类负载。如果同一个类(按名称)被两个不同的类加载器加载,它们最终会在VM中成为两个不同的类。

相关内容

  • 没有找到相关文章

最新更新