« (メモ) 組織運営について | メイン | 自宅のPCが自分だけの放送局になる 「Orb」 »

「JAMES」で"matcher"&"mailet"の実装から設定までの流れを紹介

  はてなブックマークに追加 このエントリを livedoor クリップへ追加

メールアプリケーションは楽しそう!と思い、「JAMES」をつかってメールアプリケーションを作成しています。


さてはじめるかと思って、はじめてみると気づくと思いますが、「JAMES」のドキュメントは不親切&不十分ですね(笑)


メールの種類を振り分けるための"matcher"と振り分けたメールの処理を定義する"mailet"の実装方法と、実装したクラスを「JAMES」で利用するための設定方法について、簡単に順を追って説明したいと思います。


超早足です。

(1)必要なファイルを入手する

  ○「JavaMail API」を入手する

    ダウンロードしたファイルを展開します。
    できたディレクトリ内にある「mail.jar」ファイルを参照できるようにします。
    (JAVA_HOME/jre/lib/ext内に配置するなど。)


  ○「james-MailetSDK-○.○.○」を入手する

     ダウンロードしたファイルを展開します。
     展開してできたディレクトリ内にある「james.sar」ファイルを展開して、
     SAR-INF/lib以下にある、以下の2つのファイルを参照できるようにします。

       *mailet-2.3.jar
       *mailet-api-2.3.jar
     

(2)「matcher」を作成する

   GenericMatcherクラスをextendsして、match(Mail mail)メソッドを実装する。
   
  (注)package名は"kazuhiro"とした。


(3)「mailet」を作成する

   GenericMailetクラスをextendsして、service(Mail mail)メソッドを実装する。
   
   (注)package名は"kazuhiro"とした


(4)作成したクラスから、jarファイルをつくる


(5)作成したjarファイルを「JAMES_HOME/apps/james/SAR-INF/lib」に配置する


(6)「JAMES_HOME/apps/james/SAR-INF/config.xml」を編集する

  ○mailetのpackage名を追加する。

    <mailetpackages>
      (中略)
      <mailetpackage>kazuhiro</mailetpackage>
    </mailetpackages>

  ○matcherのpackage名を追加する。

    <matcherpackages>
      (中略)
      <matcherpackage>kazuhiro</matcherpackage>
    </matcherpackages>

  ○matcherで振り分けたメールを処理するmailetを指定する。

    <processor name="transport">
      <mailet match="MyMatcher" class="MyMailet"></mailet>
      (中略)
    </processor>


(7)「JAMES」を起動して、メールを送ってみる

  (例)メールを受信したとき、ユーザー名が"○○”だったら、messeage nameを表示する
  
  設定がきちんとできていれば、メールを送る(受信する)とコンソールに

    Mail1182704731187-0

  などと表示されます。



次回は、"matcher"&"mailet"の簡単なサンプルを、紹介したいと思います。

Ads BOARD








最近のエントリーとその関連エントリー

トラックバック

このエントリーのトラックバックURL:
http://kazuhiro.ty.land.to/blog/mt-tb.cgi/301

  Map