folderlist Sample Program with JavaMail 1.5.4

Q

What is the folderlist.java in javamail-samples.zip? I downloaded it together with javax.mail-1.5.4.jar.

✍: FYIcenter.com

A

folderlist.java in javamail-samples.zip is a sample program that lists information about the folders in an email account on a mail server.

If you downloaded and installed javamail-samples.zip together with javax.mail-1.5.4.jar, folderlist.java is located at \local\javamail-1.5.4\javamail-samples\folderlist.java. Below is the usage description of folderlist.java:

Description:
  This program lists information about the folders in a Store.

Usage:
   java folderlist -L <url> -T <protocol> -H <host> -U <user>
        -P <passwd> [-R <root>] [-r] [-v] [-D] <pattern>

Options:
   -L <url>  : URL of the Store. The URL should include
        the password as well (if needed).
        Example: "imap://john:password@mailstore.com"
   -T <protocol> : store protocol (Ex: "imap")
   -H <host> : hostname of store.
   -U <user> : username (if needed)
   -P <passwd>   : password (if needed)
   -R <root> : root of the folder hierarchy. This is optional. If
      not present, listing starts from the default folder.
   -r       : list recursively - folder and all subfolders.
   -v       : verbose - show more info about each folder.
   -D       : Turn on session debugging
   <pattern>  : folders that match this pattern are listed. Use "*"
      as wildcard to match everything.

Here is an execution session of folderlist.java:

fyicenter>cd \local\javamail-1.5.4\javamail-samples

local\javamail-1.5.4\javamail-samples>java -version
java version "1.8.0_45"

local\javamail-1.5.4\javamail-samples>javac -cp .;..\javax.mail-1.5.4.jar
   folderlist.java

local\javamail-1.5.4\javamail-samples>java -cp .;..\javax.mail-1.5.4.jar
   folderlist -D -L imap://john:password@mailstore.com

DEBUG: setDebug: JavaMail version 1.5.4
DEBUG: getProvider() returning javax.mail.Provider[STORE,imap,com.sun.mail.imap.
IMAPStore,Oracle]
DEBUG IMAP: mail.imap.fetchsize: 16384
DEBUG IMAP: mail.imap.ignorebodystructuresize: false
DEBUG IMAP: mail.imap.statuscachetimeout: 1000
DEBUG IMAP: mail.imap.appendbuffersize: -1
DEBUG IMAP: mail.imap.minidletime: 10
DEBUG IMAP: closeFoldersOnStoreFailure
DEBUG IMAP: trying to connect to host "mailstore.com", port 143, isSSL false
Exception in thread "main" com.sun.mail.util.MailConnectException: Couldn't conn
ect to host, port: mailstore.com, 143; timeout -1;
  nested exception is:
        java.net.ConnectException: Connection timed out: connect
        at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:731)
        at javax.mail.Service.connect(Service.java:364)
        at javax.mail.Service.connect(Service.java:245)
        at javax.mail.Service.connect(Service.java:194)
        at folderlist.main(folderlist.java:107)
        ...

The output shows that:

  • The javax.mail-1.5.4.jar contains JavaMail API classes like javax.mail.Service.
  • The javax.mail-1.5.4.jar contains IMAP implementation classes like com.sun.mail.imap.IMAPStore.protocolConnect.
  • The connection time out exception is expected, because mailstore.com is not valid mail server.

 

Run folderlist.java 1.5.4 with Gmail SSL IMAP

Download and Install javamail-samples.zip

Download and Install JavaMail Library

⇑⇑ FAQ for JavaMail

2016-01-11, 2359👍, 0💬