This discussion is archived
3 Replies Latest reply: Oct 15, 2012 7:20 AM by Dan at Branchbird RSS

Any documentation on the Mailer component in AppConfig.xml?

953835 Newbie
Currently Being Moderated
I also see this refered to as the "Mail Notification Bean".
I would like to find the attribute for the list of emails to receive reports, and I would also like to know how to change things like the replyto address.
What I have works, but I would like to get what I have cleaned up. So far I have just been doing things by making guesses. Is this documented any where?
Thanks
  • 1. Re: Any documentation on the Mailer component in AppConfig.xml?
    Dan at Branchbird Journeyer
    Currently Being Moderated
    Joe,

    There used to be a great post on EDeN that chronicled this custom mailer component's use. Supposedly all previous EDeN posts have been ported into the Oracle Endeca community here: https://communities.oracle.com/portal/server.pt/community/endeca/515 , but I couldn't find anything.

    That said, I was able to dig some configuration out of one of my old AppConfig.xml files from previous project work:

    <custom-component id="Mailer" class="com.endeca.esource.dtmailerutility.MailNotificationComponent" host-id="ITLHost">
    <properties>
    <property value="${mailer.smtpHost}" name="smtpHost"/>
    <property value="${mailer.srcAddr}" name="srcAddr"/>
    <property value="${mailer.destAddr}" name="destAddr"/>
    </properties>
    <directories>
    <directory name="savedMsgDir">./logs/saved_msgs</directory>
    </directories>
    </custom-component>

    where the ${mailer.*} tokens are set in the accompanying environment.properties file:

    # Environment specific properties
    mailer.smtpHost = smtp.branchbird.com
    mailer.srcAddr = admin@branchbird.com
    mailer.destAddr = admin@branchbird.com

    Then in your baseline java beanshell script you could call out something like to pass in the subject and body of the email message:

    Mailer.sendExceptionMsg("Error running Baseline Update", e);

    As you've probably already done, you need to make sure the Mailer .jar is on your classpath via the ./control/runcommand.bat file:

    set CLASSPATH=%CLASSPATH%;%~dp0\..\config\lib\java\mail-notification.jar

    And as you see above you also need to make sure your .jar is in the ./config/lib/java directory.

    I hope this helps.

    Thanks,
    Dan
    Branchbird
  • 2. Re: Any documentation on the Mailer component in AppConfig.xml?
    953835 Newbie
    Currently Being Moderated
    So have I have all of that and it works. Now I would like to expand on that functionlity.

    1] Emailing reports
    I am able to email the daily and weekly reports using this "Mailer.setReportDestAddrList("email-addr1,email-add2)". So I figured there must be a property value named "reportDestAddrList" which I could set. But that didn't work. Why are the properties for Mailer not documented some where? Like I said I have this functionality working, so this is not killing me.

    2] Setting the reply-to some thing different
    When the email is sent the reply-to is set to the server on which Endeca is running. So it is a reply-to value for which you can not send an email back to. I would like the reply-to value to be the email address for the support group, whick I am in. So if some one has a question about the report there isn't any confustion about who to email.

    Thanks.

    Edited by: EndecaJoe on Oct 15, 2012 7:01 AM
  • 3. Re: Any documentation on the Mailer component in AppConfig.xml?
    Dan at Branchbird Journeyer
    Currently Being Moderated
    Joe, the Mailer component was never Endeca product. It was servicesware that found use on many Endeca implementations. That is why there is no formal documentation on it, unfortunately. I found that the .jar component was packaged with source code, so I cracked it open and got a better idea of what can and can't be set.

    1) From the source, you can do one of these two things to specify more than one destination address:

    * - destAddr or destAddrList (required): at least one destination address is required. If
    * more than one destination address is necessary, configure the separate addresses as
    * destAddr1, destAddr2, destAddr3, and so on. Or use the destAddrList property to configure
    * a comma-delimited list of destination addresses.

    2) This should be the srcAddr property. Are you setting this property?

    Hope this helps.

    Thanks,
    Dan
    Branchbird

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points