平成 17 年 12 月 15 日 ECL 卒研ゼミ関係者各位 近畿大学理工学部情報学科 自然言語処理研究室 藤森浩忠 James 1 James とは 5 James の動作 Java Apache Mail Enterprise Server ApacheJames を Mailet は James に組み込み メール受信時に起動さ 開発しているのは名前のとおり ApacheProject の James れ何らかの処理を行うプログラムである。Mailet は受信 サブプロジェクトです。もともと Java を専門とした メールに対して,任意の条件によって起動するように定 ApacheJJakarta プロジェクトの一つとしてこの James 義する。つまり Matcher と Mailet は組みあわせて利用 は開発されてきたとのことですが、それから昇格して する。Matcher も Mailet も標準でいくつか提供されて ApacheJames プロジェクトとして Jakarta から切り離 いるが,自身で作成することが可能である。また Mailet されたようです。100 単一のサーバーアプリケーション にはメール送信機能も提供されており,返信メールの送 で、メール送信/保存の両方を扱うことが可能 Java2 プ 信などの機能が簡単に実現でき,アプリケーションに無 ラットフォーム及び JavaMail 1.2 API に準拠 限の可能性を与えるものとなっている。Matcher,Mailet 2 機能 POP3 サーバー機能 メール受信用 SMTP サーバー機 能 メール送信用 MNTP サーバー機能 ニュースサーバー FetchPOP 機能あるメールサーバのメールを自分のメー ルサーバにダウンロードする機能のようです。【重要】 メール・アプリケーション組み込み機能 3 James の構成 とも作成は比較的簡単だ。両者とも,独自のクラスを作 成するためのスーパークラスが提供されているので,そ のクラスを継承したクラスを作成すればよい。 6 Meilet が実行される仕組み James がメールを受け取ると、一番上の [root] プロ セッサに渡される。メールを渡された [root] プロセッ サは、あらかじめ用意しておいたブラックリストによっ てスパムメールかそうでない正当なメールかを判断し James は自身の動作のために,Apache Avalon プロ ます。スパムメールと判断された場合にはそのメールは ジェクトのアプリケーション・フレームワークを利用し [spam] プロセッサに渡されることになります。一方で正 ている。Apache Avalon プロジェクトはコンポーネント 当なメールと判断された場合には [trancport] プロセッ 指向のサーバープログラムを作成するための,フレーム サにメールは渡されます。次に [tranceport] プロセッサ ワークやコンポーネントを提供するプロジェクトである。 はローカルのユーザ宛てかどうかを判断し、ローカルの この Avalon のフレームワーク上に James は構築されて ユーザ宛ての場合はユーザのメール BOX に保存します。 いる。James 内には Mailet が複数配置される それ以外だった場合には [error] プロセッサにメールを渡 4 Avalon します。このように James がメールを受け取ると、プロ セッサによって条件判断が行われ、その条件にあったプ Avalon のフレームワークを J2EE アプリケーショ ロセッサへメールが渡されてそこで処理または次の判断 ン・サーバー,James を1つの Web アプリケーショ が行われて別のプロセッサに渡されるというように処理 ン,Mailet がサーブレットと考えると判りやすいだろ が進んでいきます。 この処理の流れの中で、条件判断 う。James のアークテクチャは Avalon のフレームワー を行うのが [Matcher] と呼ばれるクラスです。さらに次 クに大きく依存しているが,James の利用においては, のプロセッサにメールを渡したり、ユーザのメール BOX Avalon フレームワークを意識することはそう多くはな に保存したりするのが [Mailet] です。この [Matcher] と い。Avalon プロジェクトは,前述のようなフレームワー [Mailet] は共に Java のクラスとして定義されており、れ クやコンポーネントから方法論まで提供している非常に を拡張する [Matcher] や [Mailet] をユーザが自ら作成す 巨大なプロジェクトである。 ることも可能。ユーザの意図した条件やそれに伴うユー ザ独自の処理を行わせることが可能になります。また、 ここで紹介した James がメールを受け取ってからの流れ はすべて conf.xml の中に記述されている設定ですので、 この流れは自由に変更することが可能です。
© Copyright 2025 ExpyDoc