2017-01-18 43 views
1

我想給KeyCloak春季安全適配器集成到應用程序,但我看到的例外是這樣的:如何在Spring中修復「java.lang.NoSuchMethodError:org.keycloak.adapters.PreAuthActionsHandler」?

Exception: java.lang.NoSuchMethodError: org.keycloak.adapters.PreAuthActionsHandler.<init>(Lorg\/keycloak\/adapters\/spi\/UserSessionManagement;Lorg\/keycloak\/adapters\/AdapterDeploymentContext;Lorg\/keycloak\/adapters\/spi\/HttpFacade;)V\n\tat org.keycloak.adapters.springsecurity.filter.KeycloakPreAuthActionsFilter.doFilter(KeycloakPreAuthActionsFilter.java:80) 

我該如何解決這個問題?

回答

1

這裏的問題是我部署Spring應用程序的Wildfly服務器已經啓用了KeyCloak子系統來處理傳統的servlet授權(具有更老版本的KeyCloak)。我的Spring應用程序遇到了有關在Wildfly中配置的舊版KeyCloak和彈簧安全適配器新版本的類加載問題。

解決的辦法是與此排除從我的春天應用程序的keycloak子系統在jboss-部署-structure.xml文件:

<jboss-deployment-structure> 
    <deployment> 
     <exclude-subsystems> 
      <subsystem name="keycloak"/> 
     </exclude-subsystems> 
    </deployment> 
</jboss-deployment-structure> 
相關問題