GRAVE: l'Exception springSecurityFilterChain... ClassCastException... DelegatingFilterProxy ne peut pas être lancé
quelqu'un peut-il m'aider à résoudre mon tomcat exécuter erreur, j'obtiens l'erreur suivante quand je lance tomcat:
SEVERE: Exception starting filter springSecurityFilterChain
java.lang.ClassCastException: org.springframework.web.filter.DelegatingFilterProxy cannot be cast to javax.servlet.Filter
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4001)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4651)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
at org.apache.catalina.startup.Embedded.start(Embedded.java:825)
at org.codehaus.mojo.tomcat.AbstractRunMojo.startContainer(AbstractRunMojo.java:533)
at org.codehaus.mojo.tomcat.AbstractRunMojo.execute(AbstractRunMojo.java:239)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
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.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Vous devez vous connecter pour publier un commentaire.
L'un de vos dépendances, y compris un servlet-api dans votre fichier war qui provoque ce comportement. À l'aide de mvn dependency:tree, vous pouvez trouver que votre dépendance est que. Après cela, vous devez exclure le servlet-api comme suit:
Vous avez besoin de le faire pour un autre servlet-api (par exemple, org.mortbay.jetée:servlet-api, ..) ainsi.
J'ai pu résoudre ce problème en supprimant servlet-api.jar de mon déploiement de l'assemblée (dans eclipse)
mon-web-projet-> propriétés -> Déploiement de l'Assemblée
et le retirer. Pour d'autres, que sur des projets maven le champ d'application de la servlet-api dépendance doit être réglé à "bénéficier"
J'ai eu un problème similaire quand j'ai ajouté la dépendance de CXF. J'ai essayé de l'recommandée ci-dessus est une manière d'exclure javax.servlet à partir de cette dépendance, mais il n'a pas de travail, mais l'ajout de condition résolu.
Il pourrait être une autre affaire pour vous, mais vaut la peine d'essayer.
Si j'ai répondu à votre question s'il vous plaît marquer de la sorte. 😉
Similaires problème a été résolu par l'exclusion de geronimo.
Determinig jar fichiers contenus de l'erreur samu trouvé par l'analyse de chaque fichier jar dans le dossier WEB-INF/lib du dossier pour les classes qu'il contient. I. e.
probablement dans web.xml vous configurez
mais c'est le filtre. ainsi le changement de servlet comme filtre.