当我关闭嵌入式FTP服务器时(使用stop()
方法),我得到以下例外。
有没有办法可以避免这种情况并干净地关闭?
15:06:35.054 [pool-7-thread-2] |错误 o.a.ftpserver.impl.DefaultFtpHandler - 捕获异常,关闭 session java.lang.AbstractMethodError: org.apache.ftpserver.listener.nio.FtpHandlerAdapter.inputClosed(Lorg /阿帕奇/米纳/核心/会话/ IoSession;)V 在 org.apache.mina.core.filterchain.DefaultIoFilterChain $ TailFilter.inputClosed(DefaultIoFilterChain.java:834) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextInputClosed(DefaultIoFilterChain.java:611) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.access $ 1200(DefaultIoFilterChain.java:48) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain $ EntryImpl $ 1.inputClosed(DefaultIoFilterChain.java:938) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.IoFilterAdapter.inputClosed(IoFilterAdapter.java:134) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextInputClosed(DefaultIoFilterChain.java:611) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.access $ 1200(DefaultIoFilterChain.java:48) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain $ EntryImpl $ 1.inputClosed(DefaultIoFilterChain.java:938) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.IoFilterAdapter.inputClosed(IoFilterAdapter.java:134) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextInputClosed(DefaultIoFilterChain.java:611) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.access $ 1200(DefaultIoFilterChain.java:48) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain $ EntryImpl $ 1.inputClosed(DefaultIoFilterChain.java:938) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.IoFilterAdapter.inputClosed(IoFilterAdapter.java:134) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextInputClosed(DefaultIoFilterChain.java:611) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.access $ 1200(DefaultIoFilterChain.java:48) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain $ EntryImpl $ 1.inputClosed(DefaultIoFilterChain.java:938) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.IoFilterAdapter.inputClosed(IoFilterAdapter.java:134) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextInputClosed(DefaultIoFilterChain.java:611) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.access $ 1200(DefaultIoFilterChain.java:48) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain $ EntryImpl $ 1.inputClosed(DefaultIoFilterChain.java:938) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.IoFilterAdapter.inputClosed(IoFilterAdapter.java:134) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextInputClosed(DefaultIoFilterChain.java:611) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.access $ 1200(DefaultIoFilterChain.java:48) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain $ EntryImpl $ 1.inputClosed(DefaultIoFilterChain.java:938) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.IoFilterAdapter.inputClosed(IoFilterAdapter.java:134) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextInputClosed(DefaultIoFilterChain.java:611) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireInputClosed(DefaultIoFilterChain.java:604) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:729) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:668) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:657) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.polling.AbstractPollingIoProcessor.access $ 600(AbstractPollingIoProcessor.java:67) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.core.polling.AbstractPollingIoProcessor $ Processor.run(AbstractPollingIoProcessor.java:1121) 〜[mina-core-2.0.8.jar:na] at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64) 〜[mina-core-2.0.8.jar:na] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 〜[na:1.7.0_67] at java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:615) 〜[na:1.7.0_67]在java.lang.Thread.run(Thread.java:745)[na:1.7.0_67]
答案 0 :(得分:1)
您需要使用Apache mina 2.0.7。在2.0.8版本中,他们在接口IoHandler中添加了一个新方法,但是ftpserver类FtpHandlerAdapter没有实现它。