1 Reply Latest reply on Oct 10, 2005 2:54 AM by murphyric

    Prototype JavaMail RAR in head

    starksm64

      A prototype JavaMail resource adaptor that support message inflow to allow messages from a mail folder to be delivered to MDBs has been added to head. Deployment of the mail-ra.rar allows one to deploy JavaMail based MDBs as shown by this example code:

      ejb-jar.xml:

      <?xml version="1.0" encoding="UTF-8"?>
      <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
       http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
       version="2.1">
      
       <enterprise-beans>
      
       <message-driven>
       <description>An MDB that accepts mail messages</description>
       <ejb-name>MailMDB</ejb-name>
       <ejb-class>org.jboss.test.jca.inflowmdb.TestJavaMailMDB</ejb-class>
       <messaging-type>org.jboss.resource.adapter.mail.inflow.MailListener</messaging-type>
       <activation-config>
       <activation-config-property>
       <activation-config-property-name>mailServer</activation-config-property-name>
       <activation-config-property-value>${mailhost:mailhost}</activation-config-property-value>
       </activation-config-property>
       <activation-config-property>
       <activation-config-property-name>mailFolder</activation-config-property-name>
       <activation-config-property-value>INBOX</activation-config-property-value>
       </activation-config-property>
       <activation-config-property>
       <activation-config-property-name>storeProtocol</activation-config-property-name>
       <activation-config-property-value>imap</activation-config-property-value>
       </activation-config-property>
       <activation-config-property>
       <activation-config-property-name>userName</activation-config-property-name>
       <activation-config-property-value>jduke</activation-config-property-value>
       </activation-config-property>
       <activation-config-property>
       <activation-config-property-name>password</activation-config-property-name>
       <activation-config-property-value>theduke</activation-config-property-value>
       </activation-config-property>
       </activation-config>
       <transaction-type>Container</transaction-type>
       </message-driven>
       </enterprise-beans>
      </ejb-jar>
      
      


      jboss.xml:
      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE jboss PUBLIC
       "-//JBoss//DTD JBOSS 4.0//EN"
       "http://www.jboss.org/j2ee/dtd/jboss_4_0.dtd">
      
      <jboss>
       <enterprise-beans>
       <message-driven>
       <ejb-name>MailMDB</ejb-name>
       <resource-adapter-name>mail-ra.rar</resource-adapter-name>
       </message-driven>
       </enterprise-beans>
      </jboss>
      


      Sample MDB:
      /*
       * JBoss, the OpenSource J2EE webOS
       *
       * Distributable under LGPL license.
       * See terms of license at gnu.org.
       */
      package org.jboss.test.jca.inflowmdb;
      
      import javax.ejb.MessageDrivenBean;
      import javax.ejb.MessageDrivenContext;
      import javax.mail.Message;
      
      import org.jboss.resource.adapter.mail.inflow.MailListener;
      import org.jboss.logging.Logger;
      
      /**
       * A JavaMail based MDB.
       *
       * @author Scott.stark@jboss.org
       * @version $Revision: 1.1 $
       */
      public class TestJavaMailMDB
       implements MessageDrivenBean, MailListener
      {
       private static Logger log = Logger.getLogger(TestJavaMailMDB.class);
      
       private MessageDrivenContext ctx;
      
       public void ejbCreate()
       {
       log.info("ejbCreate");
       }
      
       public void ejbRemove()
       {
       log.info("ejbRemove");
       }
      
       public void setMessageDrivenContext(MessageDrivenContext ctx)
       {
       this.ctx = ctx;
       }
      
       public void onMessage(Message msg)
       {
       log.info("onMessage, msg="+msg);
       }
      }
      



        • 1. Re: Prototype JavaMail RAR in head
          murphyric

          Hello,
          I did as-is in this topic.I packed the MDB with the below ejb-jar descriptor.
          I used the DEFAULT server of Jboss for deployment.
          When I tried to deploy the Mdb with the below descriptor changes:
          I don't even see the Mail-ra.rar debug statements.Plz help me if I made any wrong.A reply is deeply appreciated.

          Thanks in Advance
          ____________________________________________________________

          <message-driven>
          An MDB that accepts mail messages
          <ejb-name>MailMDB</ejb-name>
          <ejb-class>TestJavaMailMDB</ejb-class>
          <messaging-type>org.jboss.resource.adapter.mail.inflow.MailListener</messaging-type>
          <activation-config>
          <activation-config-property>
          <activation-config-property-name>mailServer</activation-config-property-name>
          <activation-config-property-value>pop.xyz.com</activation-config-property-value>
          </activation-config-property>
          <activation-config-property>
          <activation-config-property-name>mailFolder</activation-config-property-name>
          <activation-config-property-value>INBOX</activation-config-property-value>
          </activation-config-property>
          <activation-config-property>
          <activation-config-property-name>storeProtocol</activation-config-property-name>
          <activation-config-property-value>pop/activation-config-property-value>
          </activation-config-property>
          <activation-config-property>
          <activation-config-property-name>userName</activation-config-property-name>
          <activation-config-property-value>vts@xyz.com</activation-config-property-value>
          </activation-config-property>
          <activation-config-property>
          <activation-config-property-name>password</activation-config-property-name>
          <activation-config-property-value>vts</activation-config-property-value>
          </activation-config-property>
          </activation-config>
          <transaction-type>Container</transaction-type>
          </message-driven>

          ____________________________________________________________