Hi,
I keep on getting this error and don't know what to do with it. I have one servlet (see code below) which creates a MailServlet object and calls the MailServlet to send the mail. I have placed the mail.jar and activation.jar in the lib dir of my web-application.
Hope you can help:
ERROR MSG:
----------
About.java:164: cannot access com.comparitel.web.util.MailServlet
bad class file: C:\Program Files\Apache Group\Tomcat 4.1\webapps\comparitel\WEB-
INF\classes\com\comparitel\web\util\MailServlet.java
file does not contain class com.comparitel.web.util.MailServlet
Please remove or make sure it appears in the correct subdirectory of the classpath.
MailServlet mail = new MailServlet();
^
1 error
CODE ABOUT.JAVA:
----------------
package com.comparitel.web.general;
//=============================== Imports ============================
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.comparitel.util.*;
import com.comparitel.core.*;
import com.comparitel.db.*;
import com.comparitel.appint.*;
import com.comparitel.web.util.*;
import com.javaexchange.dbConnectionBroker.*;
public class About extends HttpServlet{
//============================ Declarations =======================
public String strTittle="", strMailTo="", strParam="";
//=========================== Public Methods ======================
/*-----------------------------------------------------------------
* Method: doGet
* Description: This method will catch all incomming requests from the GUI
*-----------------------------------------------------------------*/
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
String strMethod = "About.doGet";
StringBuffer strHtml = new StringBuffer();
// get DB connection and log object
DbConnectionBroker pool = (DbConnectionBroker) getServletContext().getAttribute(Global.CONTEXT_CONN_POOL);
Log log = (Log) getServletContext().getAttribute(Global.CONTEXT_LOG);
Connection conn = null;
PrintWriter out = res.getWriter();
String strMailTo = req.getParameter("emailTo"
boolean b = getDetails(strMailTo);
if ( b )
{
res.setContentType("text/html"
conn = pool.getConnection();
if ( conn!=null )
{
strHtml.append("<html>\n"
strHtml.append("<head>\n"
strHtml.append("<title>\n"
strHtml.append(strTittle);
strHtml.append("</title>\n"
strHtml.append("<link rel=\"stylesheet\" type=\"text/css\" href=\"css-lib/Comparitel_All.css\">\n"
strHtml.append("<SCRIPT LANGUAGE=\"JavaScript\" SRC=\"scripts/ValidateCustomerForm.js\"></SCRIPT>\n"
strHtml.append("</head>\n"
strHtml.append("<body leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n"
strHtml.append("<table width=\"750\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n"
strHtml.append("<tr><td colspan=\"3\" align=\"center\">\n"
strHtml.append("<img src=\"images/general/spacer.gif\" alt=\"\" width=\"1\" height=\"40\" border=\"0\">\n"
strHtml.append("</td></tr><tr>\n"
strHtml.append("<td rowspan=\"2\">\n"
strHtml.append("<img src=\"images/general/spacer.gif\" alt=\"\" width=\"10\" height=\"1\" border=\"0\">\n"
strHtml.append("</td>\n"
strHtml.append("<td class=\"green\" colspan=\"2\">\n"
strHtml.append("<strong>\n"
strHtml.append(strTittle);
strHtml.append("</strong>\n"
strHtml.append("<br><br>\n"
strHtml.append("Tell us what you think "
strHtml.append(strTittle);
strHtml.append("<br><br>\n"
strHtml.append("You can fill in the form or contact us directly at: <a class=\"green\" tabindex=\"1\" href=\"mailto:"
strHtml.append(strMailTo);
strHtml.append("\">"
strHtml.append(strMailTo);
strHtml.append("</a>\n"
strHtml.append("<br><br> </td></tr><tr>\n"
strHtml.append("<td class=\"green\" >\n"
strHtml.append("<form method=\"POST\" name=\"ctForm\" onSubmit=\"return ValidateForm('contact')\" action=\"sentmail\">\n"
strHtml.append("Email address: <br>\n"
strHtml.append("<input class=\"contact\" type=\"text\" name=\"email\" size=\"65\" tabindex=\"2\"><br>\n"
strHtml.append("<br>\n"
strHtml.append("Comment: <br>\n"
strHtml.append("<textarea class=\"contact\" cols=\"67\" rows=\"10\" name=\"message\"></textarea><br>\n"
strHtml.append("<input class=\"greenBtn\" type=\"submit\" name=\"send\" value=\"Send\">\n"
strHtml.append("<input class=\"greenBtn\" type=\"hidden\" name=\"mailTo\" value=\""
strHtml.append(strParam);
strHtml.append("\">\n"
strHtml.append("</td>\n"
strHtml.append("<td class=\"green\" width=\"150\"> \n"
strHtml.append("</td></tr></table></form></body></html>\n"
pool.freeConnection(conn);
out.println(strHtml.toString());
}
else
{
System.out.println("No Connection object - "+strMethod);
log.out(strMethod,Global.LOG_ERR,"no connection",conn);
}
}
else
{
System.out.println("Error while setting the parameters"
log.out(strMethod,Global.LOG_ERR,"Error while setting the parameters",conn);
}// end boolean check
} // end doget
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
ServletContext context = getServletContext();
String strHost = (String)context.getAttribute(Global.MAIL_HOST);
String strUsr = (String)context.getAttribute(Global.MAIL_USR);
String strPwd = (String)context.getAttribute(Global.MAIL_PWD);
String strSMTP = (String)context.getAttribute(Global.MAIL_SMTP);
PrintWriter out = res.getWriter();
String strMethod = "About.doPost";
StringBuffer strHtml = new StringBuffer();
String strMailFrom = req.getParameter("email"
String strMsg = req.getParameter("message"
String strParm = req.getParameter("mailTo"
boolean b = getDetails(strParm);
MailServlet mail = new MailServlet();
mail.mailFrom = strMailFrom;
mail.host = strHost;
mail.sendHost = strSMTP;
mail.mailUser = strUsr;
mail.mailPwd = strPwd;
mail.mailTo = strMailTo;
boolean a = mail.sendMail(strTittle,strMsg);
strHtml.append("<html>\n"
strHtml.append("<head>\n"
strHtml.append("<title>[tittle from the global file]</title>\n"
strHtml.append("<link rel=\"stylesheet\" type=\"text/css\" href=\"css-lib/Comparitel_All.css\">\n"
strHtml.append("</head>\n"
strHtml.append("<body leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n"
strHtml.append("<table width=\"750\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n"
strHtml.append("<tr><td colspan=\"3\" align=\"center\">\n"
strHtml.append("<h1>Thanks for you comment<h1>\n"
strHtml.append("</td></tr></table></form></body></html>\n"
out.println(strHtml.toString());
} // end doPost
public boolean getDetails(String strMailTo)
{
if ( strMailTo!=null && strMailTo.equals(Global.ABOUT_US) )
{
strTittle=Global.CONTACT_TITTLE_AU;
strMailTo=Global.MAIL_ADDR_INFO;
strParam=Global.ABOUT_US;
}
else
return false;
if ( strMailTo!=null && strMailTo.equals(Global.ABOUT_BC) )
{
strTittle=Global.CONTACT_TITTLE_BC;
strMailTo=Global.MAIL_ADDR_BC;
strParam=Global.ABOUT_BC;
}
else
return false;
if ( strMailTo!=null && strMailTo.equals(Global.ABOUT_BA) )
{
strTittle=Global.CONTACT_TITTLE_BA;
strMailTo=Global.MAIL_ADDR_BA;
strParam=Global.ABOUT_BA;
}
else
return false;
if ( strMailTo!=null && strMailTo.equals(Global.ABOUT_CS) )
{
strTittle=Global.CONTACT_TITTLE_CS;
strMailTo=Global.MAIL_ADDR_CS;
strParam=Global.ABOUT_CS;
}
else
return false;
return true;
} // end getDetails
} // end class
I keep on getting this error and don't know what to do with it. I have one servlet (see code below) which creates a MailServlet object and calls the MailServlet to send the mail. I have placed the mail.jar and activation.jar in the lib dir of my web-application.
Hope you can help:
ERROR MSG:
----------
About.java:164: cannot access com.comparitel.web.util.MailServlet
bad class file: C:\Program Files\Apache Group\Tomcat 4.1\webapps\comparitel\WEB-
INF\classes\com\comparitel\web\util\MailServlet.java
file does not contain class com.comparitel.web.util.MailServlet
Please remove or make sure it appears in the correct subdirectory of the classpath.
MailServlet mail = new MailServlet();
^
1 error
CODE ABOUT.JAVA:
----------------
package com.comparitel.web.general;
//=============================== Imports ============================
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.comparitel.util.*;
import com.comparitel.core.*;
import com.comparitel.db.*;
import com.comparitel.appint.*;
import com.comparitel.web.util.*;
import com.javaexchange.dbConnectionBroker.*;
public class About extends HttpServlet{
//============================ Declarations =======================
public String strTittle="", strMailTo="", strParam="";
//=========================== Public Methods ======================
/*-----------------------------------------------------------------
* Method: doGet
* Description: This method will catch all incomming requests from the GUI
*-----------------------------------------------------------------*/
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
String strMethod = "About.doGet";
StringBuffer strHtml = new StringBuffer();
// get DB connection and log object
DbConnectionBroker pool = (DbConnectionBroker) getServletContext().getAttribute(Global.CONTEXT_CONN_POOL);
Log log = (Log) getServletContext().getAttribute(Global.CONTEXT_LOG);
Connection conn = null;
PrintWriter out = res.getWriter();
String strMailTo = req.getParameter("emailTo"
boolean b = getDetails(strMailTo);
if ( b )
{
res.setContentType("text/html"
conn = pool.getConnection();
if ( conn!=null )
{
strHtml.append("<html>\n"
strHtml.append("<head>\n"
strHtml.append("<title>\n"
strHtml.append(strTittle);
strHtml.append("</title>\n"
strHtml.append("<link rel=\"stylesheet\" type=\"text/css\" href=\"css-lib/Comparitel_All.css\">\n"
strHtml.append("<SCRIPT LANGUAGE=\"JavaScript\" SRC=\"scripts/ValidateCustomerForm.js\"></SCRIPT>\n"
strHtml.append("</head>\n"
strHtml.append("<body leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n"
strHtml.append("<table width=\"750\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n"
strHtml.append("<tr><td colspan=\"3\" align=\"center\">\n"
strHtml.append("<img src=\"images/general/spacer.gif\" alt=\"\" width=\"1\" height=\"40\" border=\"0\">\n"
strHtml.append("</td></tr><tr>\n"
strHtml.append("<td rowspan=\"2\">\n"
strHtml.append("<img src=\"images/general/spacer.gif\" alt=\"\" width=\"10\" height=\"1\" border=\"0\">\n"
strHtml.append("</td>\n"
strHtml.append("<td class=\"green\" colspan=\"2\">\n"
strHtml.append("<strong>\n"
strHtml.append(strTittle);
strHtml.append("</strong>\n"
strHtml.append("<br><br>\n"
strHtml.append("Tell us what you think "
strHtml.append(strTittle);
strHtml.append("<br><br>\n"
strHtml.append("You can fill in the form or contact us directly at: <a class=\"green\" tabindex=\"1\" href=\"mailto:"
strHtml.append(strMailTo);
strHtml.append("\">"
strHtml.append(strMailTo);
strHtml.append("</a>\n"
strHtml.append("<br><br> </td></tr><tr>\n"
strHtml.append("<td class=\"green\" >\n"
strHtml.append("<form method=\"POST\" name=\"ctForm\" onSubmit=\"return ValidateForm('contact')\" action=\"sentmail\">\n"
strHtml.append("Email address: <br>\n"
strHtml.append("<input class=\"contact\" type=\"text\" name=\"email\" size=\"65\" tabindex=\"2\"><br>\n"
strHtml.append("<br>\n"
strHtml.append("Comment: <br>\n"
strHtml.append("<textarea class=\"contact\" cols=\"67\" rows=\"10\" name=\"message\"></textarea><br>\n"
strHtml.append("<input class=\"greenBtn\" type=\"submit\" name=\"send\" value=\"Send\">\n"
strHtml.append("<input class=\"greenBtn\" type=\"hidden\" name=\"mailTo\" value=\""
strHtml.append(strParam);
strHtml.append("\">\n"
strHtml.append("</td>\n"
strHtml.append("<td class=\"green\" width=\"150\"> \n"
strHtml.append("</td></tr></table></form></body></html>\n"
pool.freeConnection(conn);
out.println(strHtml.toString());
}
else
{
System.out.println("No Connection object - "+strMethod);
log.out(strMethod,Global.LOG_ERR,"no connection",conn);
}
}
else
{
System.out.println("Error while setting the parameters"
log.out(strMethod,Global.LOG_ERR,"Error while setting the parameters",conn);
}// end boolean check
} // end doget
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
ServletContext context = getServletContext();
String strHost = (String)context.getAttribute(Global.MAIL_HOST);
String strUsr = (String)context.getAttribute(Global.MAIL_USR);
String strPwd = (String)context.getAttribute(Global.MAIL_PWD);
String strSMTP = (String)context.getAttribute(Global.MAIL_SMTP);
PrintWriter out = res.getWriter();
String strMethod = "About.doPost";
StringBuffer strHtml = new StringBuffer();
String strMailFrom = req.getParameter("email"
String strMsg = req.getParameter("message"
String strParm = req.getParameter("mailTo"
boolean b = getDetails(strParm);
MailServlet mail = new MailServlet();
mail.mailFrom = strMailFrom;
mail.host = strHost;
mail.sendHost = strSMTP;
mail.mailUser = strUsr;
mail.mailPwd = strPwd;
mail.mailTo = strMailTo;
boolean a = mail.sendMail(strTittle,strMsg);
strHtml.append("<html>\n"
strHtml.append("<head>\n"
strHtml.append("<title>[tittle from the global file]</title>\n"
strHtml.append("<link rel=\"stylesheet\" type=\"text/css\" href=\"css-lib/Comparitel_All.css\">\n"
strHtml.append("</head>\n"
strHtml.append("<body leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n"
strHtml.append("<table width=\"750\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\">\n"
strHtml.append("<tr><td colspan=\"3\" align=\"center\">\n"
strHtml.append("<h1>Thanks for you comment<h1>\n"
strHtml.append("</td></tr></table></form></body></html>\n"
out.println(strHtml.toString());
} // end doPost
public boolean getDetails(String strMailTo)
{
if ( strMailTo!=null && strMailTo.equals(Global.ABOUT_US) )
{
strTittle=Global.CONTACT_TITTLE_AU;
strMailTo=Global.MAIL_ADDR_INFO;
strParam=Global.ABOUT_US;
}
else
return false;
if ( strMailTo!=null && strMailTo.equals(Global.ABOUT_BC) )
{
strTittle=Global.CONTACT_TITTLE_BC;
strMailTo=Global.MAIL_ADDR_BC;
strParam=Global.ABOUT_BC;
}
else
return false;
if ( strMailTo!=null && strMailTo.equals(Global.ABOUT_BA) )
{
strTittle=Global.CONTACT_TITTLE_BA;
strMailTo=Global.MAIL_ADDR_BA;
strParam=Global.ABOUT_BA;
}
else
return false;
if ( strMailTo!=null && strMailTo.equals(Global.ABOUT_CS) )
{
strTittle=Global.CONTACT_TITTLE_CS;
strMailTo=Global.MAIL_ADDR_CS;
strParam=Global.ABOUT_CS;
}
else
return false;
return true;
} // end getDetails
} // end class