Solved

Sending an email from a java application

Posted on 2002-04-11
10
149 Views
Last Modified: 2013-11-24
However i am still having problems...


I am running on Windows XP, i have copied the "mail.jar" and the "activation.jar" files into the folder
C:\WINDOWS\java\classes directory, i downloaded them. I got them from the JavaMail API 1.2 release and the JAVABEANS ACTIVATION FRAMEWORK respectively.

I then added the classpath to them in my Visual J++. I specified the paths as:
C:\WINDOWS\java\classes\mail.jar
C:\WINDOWS\java\classes\activation.jar

but i get an Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/Message

I am really struggling to realise what i have done wrong...
can anyone spot any error?

Or does anyone have any code for sending an email. I have been trying all day, if you have a class that would work, aswell as the method call or constructor to the class...if so i will award you with the pints
0
Comment
Question by:BillFogarty
10 Comments
 
LVL 92

Expert Comment

by:objects
ID: 6935692
Not sure how the classpath works in J++.
In genberal though you should simply be able to put the jar files into your 'ext' directory(s) and they'll get picked up automatically.
Your ext directory(s) (you may have two one for jdk, and one for jre) will be in the JDK/JRE folder inside the lib folder.

0
 

Author Comment

by:BillFogarty
ID: 6935699
ya i have the mail.jar and activation.jar in both directories....
0
 
LVL 92

Expert Comment

by:objects
ID: 6935717
have you tried compiling/running from command line.
0
Webinar: Aligning, Automating, Winning

Join Dan Russo, Senior Manager of Operations Intelligence, for an in-depth discussion on how Dealertrack, leading provider of integrated digital solutions for the automotive industry, transformed their DevOps processes to increase collaboration and move with greater velocity.

 
LVL 2

Expert Comment

by:coreyit
ID: 6935787
objects touched on this, but I believe that you'll want to be sure that jar files are in lib, not classes.

-corey
0
 
LVL 92

Expert Comment

by:objects
ID: 6935825
> that jar files are in lib

They need to be in lib/ext, not lib.
0
 
LVL 2

Expert Comment

by:coreyit
ID: 6935842
Ah, true.
0
 
LVL 3

Expert Comment

by:msterjev
ID: 6936021
Add rt.jar (C:\Program Files\JavaSoft\JRE\1.3.1\lib\rt.jar)to the J++ classpath(also mail.jar and activation.jar from ext directory), and change the interpreter into the Options tab to be java.exe ( for example C:\jdk1.3.1\bin\java.exe).This would works!
0
 
LVL 1

Expert Comment

by:jose_tijo
ID: 6936036
Hi
  You have to put the jars (mail.jar & activation.jar) into the following directory

JAVA_HOME\jre\lib\ext\

Also following is the code to send email

You have to import the following

import javax.mail.*;
import javax.mail.event.*;
import javax.mail.internet.*;

/**Make Sure you are defining the variables correctly*/

/**Source Code*/

public static String sendMail() {
         Properties properties = new Properties();
         properties.put("mail.smtp.host", "<your smtp host>");
         properties.put("mail.from", "Sun Microystems");
         
         Session session = Session.getInstance(properties,null);
         
         try {
              Message message = new MimeMessage(session);
              int i=0;
              InternetAddress[] address = {new InternetAddress("<address here>")};
              message.setRecipients(Message.RecipientType.TO, address);
              message.setFrom(new InternetAddress("fromaddress@here.com"));
              message.setSubject("Hi");
              message.setContent(mail_Content, "text/html");
              transport = session.getTransport(address[0]);
                                       transport.connect();
                   transport.sendMessage(message,address);
                             }catch (Exception e) {
              System.out.println("Exception: " + e.toString());
              return "Error sending Mail";
          }
         return "Mail Successfully Send!";
    }


0
 
LVL 9

Expert Comment

by:Venci75
ID: 7940620
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:
PAQ'd and pts removed
Please leave any comments here within the next seven days.
 
PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!
 
Venci75
EE Cleanup Volunteer
0
 

Accepted Solution

by:
modulo earned 0 total points
ID: 7990802
Finalized as proposed

modulo

Community Support Moderator
Experts Exchange
0

Featured Post

MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
javap not working 8 58
how to install java on RHEL image on EC2 4 39
How do I remove an object from a 3 40
ejb on wildfly 5 30
Java contains several comparison operators (e.g., <, <=, >, >=, ==, !=) that allow you to compare primitive values. However, these operators cannot be used to compare the contents of objects. Interface Comparable is used to allow objects of a cl…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
Video by: Michael
Viewers learn about how to reduce the potential repetitiveness of coding in main by developing methods to perform specific tasks for their program. Additionally, objects are introduced for the purpose of learning how to call methods in Java. Define …
This video teaches viewers about errors in exception handling.

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question