Jcake-mx Pro and Jcake-mx Template released


News: Jcake-mx Pro and Jcake-mx Template released

  1. Jcake-mx Pro and Jcake-mx Template released (5 messages)

    Jcake-mx pro 1.0 and Jcake-mx Template 1.0 comprise an wrapper API for Javamail for programatic e-mail composition and sending, that allow programmers to send mail, including attachments and different mime types, with fairly little code.

    The main features of Jcake-mx include:
    • The same simple API for sending e-mails of any kind (plain text, HTML, with attachments, with embedded graphics, standard or personalized),
    • composing personalized e-mails from templates (regexp, FreeMarker and Velocity template engines are supported), model and view separation
    • transparent templates modifications ability without the need of restarting the application
    • templates caching with ehcache
    • support for multilanguage messages
    • fail-over support (e-mails queue is stored in RDBMS)
    • handling of returned e-mails via special POP3 account
    • sending e-mails in background (ideal out of box solution for highly responsive GUIs)
    • may be configured with an IoC container (such as Spring)
    • tested with popular SMTP servers (Qmail, Postfix and Sendmail) and most popular databases (PostgreSQL, MySQL, Oracle, FirebirdSQL)
    • very modular design, easy to extend
    Comparing to JavaMail, Jcake-mx pro offers a very compact API. Code samples are available at Jcake-mx Pro's home page. There are also some flash demonstrations to show the use of the API.

    What do you think of such wrappers? Would this qualify as a component or an API to you?

    Threaded Messages (5)

  2. Spring Mail?[ Go to top ]

    Can't see any real advantages over Spring Mail. Moreover Spring Mail is free and really open.

  3. Spring Mail?[ Go to top ]

    Does Spring Mail
      "handling of returned e-mails via special POP3 account"
    or something similiar?


  4. Template-based email[ Go to top ]

    I've experimented with StringTemplate and JavaMail. Here's a presentation that I gave in March 2005:

  5. fail-over support (e-mails queue is stored in RDBMS)
  6. I see how this looks good on the marketing material but if the target audience is developers, IMHO, this does not make much sense.

    SMTP servers (at least the ones like sendmail) are far more stable and reliable than any more-or-less complex runtime Java application. In what kind of design is a much less stable component ensuring the stability of a much more reliable component? Our system sends fairly large amount of newsletters, so sendmail is used quite heavily. yet, for the last two years - it was unavailable only once! And even that - because of the sysadmin's mistake, as we found out later. What's the uptime of an average J2EE application?

    Besides, there are professional systems for SMTP failover and load-balancing, if it is such an important requirement. I am sorry, but some primitive Java code, queueing messages in DB tables is a little bit childish.

    As for the rest of the requirements, as it was already pointed - there are existing truely open-source components that have the same purpose, so a comparision matrix or at least explanation - why not them and why JCake, would be useful.

  7. Artur:

    the major difference is that to make such a functionality as jcake-mx template offers (as shown on flash presentations 2 - 6 at http://jcake.com/jcake-mx-intro.php ), you would have to spend 1 or 2 days on coding. jcake-mx template is already coded and cheaper than two days of coding.

    Furthermore, a message prepared with Spring's MessageHelper (coded in Java) cannot be modified without recompiling the class and redeploying an application. (Sure, it can be if you develop similar solution to jcake-mx template...)


    You are absolutely right. jcake-mx pro does not try to substitute SMTP server in any way. It may queue the messages in DB to prevent such situations as misconfiguration or general SMTP server outage (hardware crash, net link failure), but it's not a must to turn this feature on.

    If a failure occures, jcake-mx will try to repeat sending of the message several times.

    Even if you do not use fail-over feature it is still (together with jcake-mx template) very powerful library for rapid e-mail composing and sending.

    As a positive side effect of queueing messages in DB you may send messages in-advance, with future sending date.

    And why jcake-mx and not open source alternatives? If there was a ready to use alternative with the same features set I wouldn't spend a minute on developing jcake-mx. Spring offers very nice and simple API for composing e-mails, FreeMarker is just a great template library, but it requires an effort to put it all together. With jcake-mx pro + template you will be able to create and send for example personalized HTML e-mail with inline images and attachments in less than 3 minutes. jcake-mx solution is also more flexible than hardcoded e-mail preparation in Java code. You do not have to recompile you code to make some changes in e-mail's structure. This saves your time.

    best wishes
    Piotr Maj