Java Reference
In-Depth Information
Example 7-4. A program to read mail headers
import javax.mail.* ;
import java.util.* ;
public class AllHeaderClient {
public static void main ( String [] args ) {
if ( args . length == 0 ) {
System . err . println (
"Usage: java AllHeaderClient protocol://username@host/foldername" );
return ;
}
URLName server = new URLName ( args [ 0 ]);
try {
Session session = Session . getInstance ( new Properties (),
new MailAuthenticator ( server . getUsername ()));
// Connect to the server and open the folder
Folder folder = session . getFolder ( server );
if ( folder == null ) {
System . out . println ( "Folder " + server . getFile () + " not found." );
System . exit ( 1 );
}
folder . open ( Folder . READ_ONLY );
// Get the messages from the server
Message [] messages = folder . getMessages ();
for ( int i = 0 ; i < messages . length ; i ++) {
System . out . println ( "------------ Message " + ( i + 1 )
+ " ------------" );
// Here's the difference...
@SuppressWarnings ( "unchecked" )
Enumeration < Header > headers = messages [ i ]. getAllHeaders ();
while ( headers . hasMoreElements ()) {
Header h = headers . nextElement ();
System . out . println ( h . getName () + ": " + h . getValue ());
}
System . out . println ();
}
// Close the connection
// but don't remove the messages from the server
folder . close ( false );
} catch ( MessagingException ex ) {
ex . printStackTrace ();
}
// Since we may have brought up a GUI to authenticate,
// we can't rely on returning from main() to exit
Search WWH ::




Custom Search