cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Haul <h...@informatik.tu-darmstadt.de>
Subject Re: Sendmail Action HTML-Mail & Attachment
Date Fri, 07 May 2004 07:10:40 GMT
Joerg Heinicke wrote:
> 
> 
> On 04.05.2004 13:07, Nils Köster wrote:
> 
>> I'm trying to send mail via the sendmail action with html-body and
>> pdf-attachment, my sitemap looks like this:
>>
>>   <map:act type="sendmail">
>>     <map:parameter name="smtphost" value="some.smtp.de"/>
>>     <map:parameter name="from" value="somebody@somewhere.de"/>
>>     <map:parameter name="to" value="somebody@somewhere.de"/>
>>     <map:parameter name="subject" value="{request-param:subject}"/>
>>     <!--map:parameter name="body" value="{request-param:message}"/-->
>>     <map:parameter name="src" value="context://mailer/test.html"/>
>>     <map:parameter name="srcMimeType" value="text/html"/>
>>     <map:parameter name="cc" value=""/>
>>     <map:parameter name="bcc" value="somebody@somewhere.de"/>
>>     <map:parameter name="attachments" 
>> value="{request-param:attachment}"/>
>>     <map:parameter name="charset" value="ISO-8859-1"/>
>>   </map:act>
>>
>> In request-param:attachment i have something like:
>> context:/nkpm/resources/documents/some.pdf
>>
>> But it doesn't send the mail when I have both in it: attachment and
>> html-src. With one of them it works.
>>
>> Does anybody have a clue?
> 
> 
>> In the error.log I get:
>> -----------------------------------------------
>> ERROR   (2004-05-02) 22:25.32:156   [sitemap.action.sendmail] 
>> (/mailer/mail)
>> http8080-Processor25/Sendmail: SendmailAction: An exception was thrown 
>> while
>> sending email. java.lang.NullPointerException
>>     at
>> org.apache.cocoon.mail.MailMessageSender.send(MailMessageSender.java:323)
>>     at org.apache.cocoon.acting.Sendmail.act(Sendmail.java:253)
> 
> 
>  From the code the NPE is obvious:
> 
> 306    BodyPart bodypart = null;
> 307
> 308    if (this.src != null) {
> 309        DataSource ds = null;
> 310
> 311        Source source = resolver.resolveURI(this.src);
> 312        sourcesList.add(source);
> 313        if (source.exists()) {
> 314            ds =
> 315                new SourceDataSource(
> 316                    source,
> 317                    (this.srcMimeType == null
> 318                        ? source.getMimeType()
> 319                        : this.srcMimeType),
> 320                    this.src.substring(this.src.lastIndexOf('/') + 1));
> 321        }
> 322
> 323        bodypart.setDataHandler(new DataHandler(ds));
> 324        bodypart.setFileName(ds.getName());
> 325
> 326        multipart.addBodyPart(bodypart);
> 
> bodypart was never set/is still null in line 323.
> 
> Unfortunately I don't know how to fix it and I don't have the time to 
> dive in at the moment. Christian wrote the code and could probably fix 
> it in the shortest time as he knows what should happen. Unfortunately he 
> made himself very rare on the lists in the last weeks, so I guess he has 
> not much time ATM neither.

Hi Nils, Joerg,

sorry that I can't look into this ATM but I believe the original idea was
that every mail should contain a plain text body, not just attachments.
However, we could for example provide a default text like "please see attachment"
or the like but I feel like it would make more sense to do this application
specific.

So, the simplest solution for Nils would be to add such a body text and add the
pdf as attachment.

I need to dig up the specs to see if it is allowed to have no bodypart. Will try
to look into this over the weekend.

Cheers,
	Chris.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


Mime
View raw message