On 1/29/08, Artamonov, Juri <[EMAIL PROTECTED]> wrote: > Seems I had something similar and I couldn't get it as well before since I > always was getting UrlFileProvider. After I looked on the code I see that > providers.xml contains > > <provider > class-name="org.apache.commons.vfs.provider.ftp.FtpFileProvider"> > <scheme name="ftp"/> > <if-available class-name="org.apache.commons.net.ftp.FTPFile"/> > </provider> > > That means org.apache.commons.net.ftp.FTPFile should be in your classpath. > After I added the corresponding library it works. > > Could you please check that org.apache.commons.net.ftp.FTPFile is in your > classpath?
I've had that issue before and fixed it. So, I know it's in the classpath. I added a Class.forName() to my code to verify and it didn't get a ClassNotFoundException. Of course, the fact that this code works sometimes and doesn't other times would lead me to believe that it's not a classpath issue. > > Best regards, > Juri. > > -----Original Message----- > From: Mario Ivankovits [mailto:[EMAIL PROTECTED] > Sent: Tuesday, January 29, 2008 4:45 PM > To: Jakarta Commons Users List > Subject: Re: [vfs] Inconsistent Behavior... > > Hi! > > I think your only chance is to use tcpdump and/or wireshark to debug the > network flow to see the real answers of the ftp server. > Or debug into the VFS code ... somewhere in doAttach in FtpFileObject > and see whats going wrong in there. > > Sorry! > > Ciao, > Mario > > > Well, I ran it once and it said "The file type is file" and it > > succeeded, but then I ran it again and it says "The file type is > > imaginary" and it failed. Here's the code: > > > > final FileSystemManager fsm = VFS.getManager(); > > final FileObject remoteFile = > > fsm.resolveFile("ftp://ftp.ncbi.nih.gov/pub/HomoloGene/current/homologene.data"); > > System.out.println("The file type is " + > > remoteFile.getType().getName() + "."); > > final File tmp = File.createTempFile("download", ".txt"); > > tmp.deleteOnExit(); > > final FileObject tempFile = fsm.toFileObject(tmp); > > FileUtil.copyContent(remoteFile, tempFile); > > > > Here's the complete output: > > > > [EMAIL PROTECTED]:18:11 INFO (DefaultFileReplicator) - Using > > "C:\Users\jcarman\AppData\Local\Temp\vfs_cache" as temporary files > > store. > > [EMAIL PROTECTED]:18:12 DEBUG (StandardFileSystemManager) - Skipping > > provider "org.apache.commons.vfs.provider.sftp.SftpFileProvider" > > because required class "com.jcraft.jsch.JSch" is not available. > > [EMAIL PROTECTED]:18:12 DEBUG (StandardFileSystemManager) - Skipping > > provider "org.apache.commons.vfs.provider.smb.SmbFileProvider" because > > required class "jcifs.smb.SmbFile" is not available. > > [EMAIL PROTECTED]:18:12 DEBUG (SoftRefFilesCache) - putFile: > > ftp://ftp.ncbi.nih.gov/pub/HomoloGene/current/homologene.data > > [EMAIL PROTECTED]:18:12 DEBUG (SoftRefFilesCache) - putFile: > > ftp://ftp.ncbi.nih.gov/ > > [EMAIL PROTECTED]:18:12 DEBUG (SoftRefFilesCache) - putFile: > > ftp://ftp.ncbi.nih.gov/pub/HomoloGene/current > > [EMAIL PROTECTED]:18:12 DEBUG (SoftRefFilesCache) - putFile: > > ftp://ftp.ncbi.nih.gov/pub/HomoloGene > > [EMAIL PROTECTED]:18:12 DEBUG (SoftRefFilesCache) - putFile: > > ftp://ftp.ncbi.nih.gov/pub > > The file type is imaginary. > > [EMAIL PROTECTED]:18:13 DEBUG (SoftRefFilesCache) - putFile: > > file:///C:/Users/jcarman/AppData/Local/Temp/download14482.txt > > Exception in thread "main" org.apache.commons.vfs.FileSystemException: > > Could not read from > > "ftp://ftp.ncbi.nih.gov/pub/HomoloGene/current/homologene.data" > > because it is a not a file. > > at > > org.apache.commons.vfs.provider.AbstractFileObject.getInputStream(AbstractFileObject.java:1149) > > at > > org.apache.commons.vfs.provider.DefaultFileContent.getInputStream(DefaultFileContent.java:360) > > at org.apache.commons.vfs.FileUtil.writeContent(FileUtil.java:71) > > at org.apache.commons.vfs.FileUtil.copyContent(FileUtil.java:103) > > > > I left out the project-specific parts of the stack trace because it's > > not relevant, but there were no nested exceptions. > > > > On 1/29/08, Mario Ivankovits <[EMAIL PROTECTED]> wrote: > > > >> Hi! > >> > >>> Did you get my second email? That's the entire output I got when I ran > >>> it. > >>> > >>> > >> Uh, oh, ok! > >> > >> So then, it seems that VFS thinks the file is either a directory or non > >> existent. > >> > >> Could you please: > >> > >> *) check the filetype of the FileObject see if its virtual or whatever > >> *) try to connect to the ftp server using a commandline tool to see if > >> the ftp output is in a style which makes it impossible for commons-net > >> to parse the output, e.g. due to localized date format. > >> > >> Ciao, > >> Mario > >> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: [EMAIL PROTECTED] > >> For additional commands, e-mail: [EMAIL PROTECTED] > >> > >> > >> > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > -- > mit freundlichen Grüßen > > Mario Ivankovits > Software Engineering > > OPS EDV VertriebsgesmbH > A-1120 Wien, Michael-Bernhard-Gasse 10 > > Firmenbuch Nr.: FN51233v, Handelsgericht Wien > Tel.: +43-1-8938810; Fax: +43-1-8938810/3700 > http://www.ops.co.at > > E-Mail: [EMAIL PROTECTED] > Skype: mario_ivankovits > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
