这是我在Java开发几年后第一个关于Stackoverflow的问题,通常我发现其他Q& A非常有帮助,但是对于这个问题我还没有找到解决方案,尽管我发现了类似的问题{ {3}}:
在我的情况下,我正在尝试连接到运行WRQ Reflection ftp服务器的LS文件列表的Windows NT服务器(他们说这些服务器不在sftp模式下运行,但接受常规的ftp连接)。 但它失败了:UNKNOWN XFB / Gateway
Caused by: org.apache.commons.net.ftp.parser.ParserInitializationException: Unknown parser type: UNKNOWN XFB/Gateway
at org.apache.commons.net.ftp.parser.DefaultFTPFileEntryParserFactory.createFileEntryParser(DefaultFTPFileEntryParserFactory.java:132)
at org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2263)
at org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2046)
at org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2093)
at org.apache.commons.vfs.provider.ftp.FTPClientWrapper.listFilesInDirectory(FTPClientWrapper.java:137)
at org.apache.commons.vfs.provider.ftp.FTPClientWrapper.listFiles(FTPClientWrapper.java:113)
at org.apache.commons.vfs.provider.ftp.FtpFileObject.doGetChildren(FtpFileObject.java:138)
at org.apache.commons.vfs.provider.ftp.FtpFileObject.getChildFile(FtpFileObject.java:111)
at org.apache.commons.vfs.provider.ftp.FtpFileObject.getInfo(FtpFileObject.java:196)
at org.apache.commons.vfs.provider.ftp.FtpFileObject.doGetType(FtpFileObject.java:319)
at org.apache.commons.vfs.provider.AbstractFileObject.getType(AbstractFileObject.java:441)
... 66 more
我不确定哪一个可用的解析器可以工作(UNIX的一个因为LS文件列表?),如果两者都不够,那么从哪里开始实现我自己的解析器。
问题是我无法自己测试连接。我们的Java应用程序在客户端域中运行,该域尝试连接到仅接受来自客户端域的传入连接的第三方,并且此时它们实际上没有帮助(至少不允许我从其连接到其ftp服务器)在客户的域外。)
只是做出改变+建立新版本(并让我们的客户测试它)基于预感是我现在不想做的事情。
我们的代码总是与我们的客户端使用我们的程序导出文件的其他ftp服务器一起使用,但这是他们设置的新连接。
简而言之: