No, i�m doing something like this:

<my:sendMail to="[EMAIL PROTECTED]"
                        from="[EMAIL PROTECTED]"
                        subject="test">Today is a good day for
java.</my:sendMail>

> ----------
> De:   Bill Barker[SMTP:[EMAIL PROTECTED]
> Responder:    Tomcat Users List
> Enviada:      quinta-feira, 29 de maio de 2003 4:26
> Para:         [EMAIL PROTECTED]
> Assunto:      Re: Taglib using BodyTagSupport
> 
> The class looks Ok to me.  How are you referring to it in your JSP page?
> It
> should fail if you are doing something like:
>   <my:sendMail to="[EMAIL PROTECTED]"
>                         from="[EMAIL PROTECTED]"
>                         subject="test" />
> 
> (e.g. an empty body).
> 
> "Edson Alves Pereira" <[EMAIL PROTECTED]> wrote in message
> news:[EMAIL PROTECTED]
> br
> ...
> Hello folks, i�m using tomcat-4.1.18 and i tried to create a tag
> that would read its body and do some work. But bodyContent always cames
> null, i�m following this example:
> 
> package com.acme.tag;
> 
> import javax.servlet.jsp.*;
> import javax.servlet.jsp.tagext.*;
> import javax.naming.*;
> import javax.mail.*;
> import javax.mail.internet.*;
> import java.util.*;
> 
> /**
>  * A Tag for sending Mail messages
>  * @author Magnus Rydin
>  */
> public class SendMailTag extends BodyTagSupport {
>     private String mimeType = "text/plain";
>     private Session session = null;
>     private Message message = null;
>     private String to = null;
>     private String cc = null;
>     private String bcc = null;
>     private String from = null;
>     private String subject = null;
>     private String sessionLocation = null;
>     private Multipart multipart = new MimeMultipart();
>     private InitialContext context = null;
> 
>     /** Constructor */
>     public SendMailTag() {
>         super();
>     }
> 
>     /**
>      * Method used by the JSP container to set the to variable
>      * @param to the TO address
>      */
>     public void setTo(String to) {
>         this.to = to;
>     }
> 
>     /**
>      * Method used by the JSP container to set the cc variable
>      * @param cc the CC address
>      */
>     public void setCc(String cc) {
>         this.cc = cc;
>     }
> 
>     /**
>      * Method used by the JSP container to set the bcc variable
>      * @param bcc the BCC address
>      */
>     public void setBcc(String bcc) {
>         this.bcc = bcc;
>     }
> 
>     /**
>      * Method used by the JSP container to set the from variable
>      * @param from the FROM address
>      */
>     public void setFrom(String from) {
>         this.from = from;
>     }
> 
>     /**
>      * Method used by the JSP container to set the subject variable
>      * @param from the FROM address
>      */
>     public void setSubject(String subject) {
>         this.subject = subject;
>     }
> 
>     /**
>      * Method used by the JSP container to set the mimeType variable
>      * @param mimeType the mimetype to use
>      */
>     public void setMimeType(String mimeType) {
>         this.mimeType = mimeType;
>     }
> 
>     /**
>      * Method used by the JSP container to set the session variable
>      * @param mimeType the mimetype to use
>      */
>     public void setSession(String session) {
>         this.sessionLocation = session;
>     }
> 
>     /** Method used by subTags to add parts to the message */
>     public Multipart getMultipart() {
>         return multipart;
>     }
> 
>     /**
>      * Method called at start of tag
>      * @return EVAL_BODY_TAG
>      * @throws JspException if mail session could not be found
>      */
>     public int doStartTag() throws JspTagException {
>         try {
>             context = new InitialContext();
>             //get the mail session
>             if (sessionLocation != null) {
>                 session = (Session)context.lookup("java:comp/env/mail/" +
> sessionLocation);
>             } else {
>                 session = Session.getDefaultInstance(
>                     new Properties(), null);
>             }
>         } catch (NamingException ne) {
>             throw new JspTagException(ne.getMessage());
>         }
>         message = new MimeMessage(session);
>         return EVAL_BODY_TAG;
>     }
> 
>     /**
>      * Method called at end of body
>      * @return SKIP_BODY
>      * @throws JspException if message content could not be set
>      */
>     public int doAfterBody() throws JspTagException {
>         try {
>             MimeBodyPart mbp = new MimeBodyPart();
>             mbp.setContent(bodyContent.getString(), mimeType);
>             multipart.addBodyPart(mbp, 0);
>             message.setContent(multipart);
>         } catch (MessagingException me) {
>             throw new JspTagException(me.getMessage());
>         }
>         // clear body
>         bodyContent.clearBody();
>         return SKIP_BODY;
>     }
> 
>     /**
>      * Method called at end of tag
>      * @return EVAL_PAGE
>      * @throws JspException if there is an illegal address or if the mail
> could not be sent
>      */
>     public int doEndTag() throws JspTagException {
>         try {
>             if (from != null) {
>                 message.setFrom(
>                     new InternetAddress(from));
>             }
>             if (subject != null) {
>                 message.setSubject(subject);
>             }
>             addRecipients(to,Message.RecipientType.TO);
>             addRecipients(cc,Message.RecipientType.CC);
>             addRecipients(bcc,Message.RecipientType.BCC);
>             Transport.send(message);
>         } catch (AddressException ae) {
>             throw new JspTagException(ae.getMessage());
>         } catch (MessagingException me) {
>             throw new JspTagException(me.getMessage());
>         }
>         return EVAL_PAGE;
>     }
> 
>    /**
>      * Adds one or more recipients to the message.
>      * Multiple recipients should be separated by comma-signs
>      * @throws AddressException if there is an illegal address
>      * @throws MessagingException if the address cannot be added to the
> Message
>      */
>     public void addRecipients(String addresses, Message.RecipientType
> type)
> throws AddressException, MessagingException
>     {
>       if (addresses != null) {
>         StringTokenizer st = new java.util.StringTokenizer(addresses,
> ",");
>         while (st.hasMoreTokens()) {
>           InternetAddress inetAddress=new InternetAddress(st.nextToken());
>           message.addRecipient(type,inetAddress);
>         }
>       }
>     }
> }
> 
> 
> Any idea?
> 
> Best regards,
> Edson
> 
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 

Reply via email to