opensubscriber
   Find in this group all groups
 
Unknown more information…

c : classpathx-javamail@gnu.org 7 December 2009 • 4:58PM -0500

[Classpathx-javamail] Exception while sending mail through GNU JavaMail API.
by Dhaval Yoganandi

REPLY TO AUTHOR
 
REPLY TO GROUP



Hello gnu javamail team,

I've one problem while sending mail using gnu javamail library. Here is
what I'm using.

I'm using JamVm (a third party java virtual machine) with GNU Classpath
0.98. And I'm also using GNU javamail 1.1.2 library compiled with
dependent GNU libraries. Now, I've written a code to send the stored EML
files on the disk to the recipient. See the following code.

                  |Authenticator authenticator=||*null*;|

|                  MailcapCommandMap mc =
(MailcapCommandMap)CommandMap./getDefaultCommandMap/();|

|                  CommandMap./setDefaultCommandMap/(mc);                  |

|                  |

|                  Properties mailProperties = *new* Properties();   |

|                  mailProperties.put(MailConstants./MAILSMTPHOST/,
mailServerHost);|

|                  mailProperties.put(MailConstants./MAILSMTPPORT/,
mailServerPort);|

|                  mailProperties.put(MailConstants./MAILDEBUG/,
MailConstants./VALUETRUE/);|

|                  
mailProperties.put(MailConstants./MAILTRANSPORTPROTOCOL/,
MailConstants./TRANSPORTPROTOCOLSMTP/);                 |

|                  mailProperties.put(MailConstants./MAILSMTPAUTH/,
"false");|

|                  mailProperties.put(MailConstants./MAILDEBUG/,
MailConstants./VALUETRUE/);|

|                  Session mailSession =
Session./getInstance/(mailProperties, authenticator);|

|                  InputStream source = *new* FileInputStream(file);|

|                  MimeMessage mimeMessage = *new*
MimeMessage(mailSession,source);|

|                  mimeMessage.setHeader("Content-Type",
"multipart/mixed");|

|                  Address[] fromAddrsss = *new* Address[1];|

|                  Address[] toAddress = *new* Address[1];|

|                  fromAddrsss[0] = *new* InternetAddress(mailFrom);|

|                  toAddress[0] = *new*
InternetAddress(mailTo);                 |

|                  mimeMessage.addFrom(fromAddrsss);|

|                  mimeMessage.setRecipients(Message.RecipientType./TO/,
toAddress);|

|                  mimeMessage.setSubject(strSubject);             |

|                  Transport./send/(mimeMessage);|


and I am getting following exception while sending the mail. The code is
working fine with sun JVM and the javamail (not GNU javamail) library.

Exception is

Exception while sending Mail java.lang.ClassCastException
<http://java.sun.com/javase/6/docs/api/java/lang/ClassCastException.html>:
java/io/ByteArrayInputStreamjava.lang.ClassCastException:
java/io/ByteArrayInputStream

at javax.mail.internet.MimeMessage.updateHeaders(MimeMessage.java:1866)

at javax.mail.internet.MimeMessage.saveChanges(MimeMessage.java:1843)

at javax.mail.Transport.send(Transport.java:74)

at my.utilities.SendUtility.sendMail(SendUtility.java:199)

at my.utilities.SendUtility.handleReleaseRequest(SendUtility.java:70)

at my.servlets.MyServlet.doPost(MyServlet..java:129)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:638)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:720)

at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)


at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:145)


at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)


at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)


at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)

at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:139)


at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)


at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)

at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2460)

at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)


at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)


at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:119)


at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)


at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)


at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)


at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)

at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)


at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)


at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)

at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:410)

at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:529)

at java.lang.Thread.run(Thread.java:745)


--
Thanks and Regards,

Dhaval Yoganandi,
Jr. Software Engineer,
Elitecore Technologies Ltd.
Cyberoam.



Bookmark with:

Delicious   Digg   reddit   Facebook   StumbleUpon

Related Messages

opensubscriber is not affiliated with the authors of this message nor responsible for its content.