2017-02-02 18 views
1

바람둥이를 사용하여 자바와 함께 와플을 사용하려고합니다. 내가 와플 필터 데모 배포 할 때 :와플 필터 데모가 작동하지 않습니다.

02-Feb-2017 09:36:21.252 GRAVE [localhost-startStop-1] 

org.apache.catalina.core.StandardContext.filterStart Exception starting 

filter SecurityFilter 


java.lang.LinkageError: loader constraint violation: when resolving method "org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()Lorg/slf4j/ILoggerFactory;" the class loader (instance of org/apache/catalina/loader/ParallelWebappClassLoader) of the current class, org/slf4j/LoggerFactory, and the class loader (instance of java/net/URLClassLoader) for the method's defining class, org/slf4j/impl/StaticLoggerBinder, have different Class objects for the type org/slf4j/ILoggerFactory used in the signature 
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:418) 
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:357) 
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:383) 
at waffle.servlet.NegotiateSecurityFilter.<clinit>(NegotiateSecurityFilter.java:55) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 
at java.lang.reflect.Constructor.newInstance(Unknown Source) 
at java.lang.Class.newInstance(Unknown Source) 
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:119) 
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258) 
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105) 
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4572) 
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5215) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752) 
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728) 
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734) 
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:952) 
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1823) 
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) 
at java.util.concurrent.FutureTask.run(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 

그리고이 : https://github.com/Waffle/waffle/tree/master/Source/JNA/waffle-demo/waffle-filter

을 나는 바람둥이의 로그에서이 오류를 얻을

02-Feb-2017 09:37:25.784 GRAVE [30] 

org.apache.catalina.core.StandardContext.filterStart Exception starting 

filter SecurityFilter 


java.lang.LinkageError: loader constraint violation: when resolving method "org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()Lorg/slf4j/ILoggerFactory;" the class loader (instance of org/apache/catalina/loader/ParallelWebappClassLoader) of the current class, org/slf4j/LoggerFactory, and the class loader (instance of java/net/URLClassLoader) for the method's defining class, org/slf4j/impl/StaticLoggerBinder, have different Class objects for the type org/slf4j/ILoggerFactory used in the signature 
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:418) 
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:357) 
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:383) 
at waffle.servlet.NegotiateSecurityFilter.<clinit>(NegotiateSecurityFilter.java:55) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 
at java.lang.reflect.Constructor.newInstance(Unknown Source) 
at java.lang.Class.newInstance(Unknown Source) 
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:119) 
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258) 
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105) 
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4572) 
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5215) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1307) 
at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServlet.java:669) 
at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:217) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:648) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165) 
at org.apache.catalina.filters.CsrfPreventionFilter.doFilter(CsrfPreventionFilter.java:136) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165) 
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165) 
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) 
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:591) 
at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:319) 
at org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:88) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349) 
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:783) 
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) 
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:798) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1434) 
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
at java.lang.Thread.run(Unknown Source) 

답변

0

가 나는 해결책을 발견했습니다!

  1. 일식에 waffle_filter_demo.war을 가져옵니다.
  2. 사용할 런타임을 사용할 Apache Tomcat 버전으로 설정하십시오.
  3. 은 새로운 전쟁을 생성합니다.
  4. 서버에 배포하십시오.