やっつけ不定記

好きなときに好きなことをちゃっちゃと書いてます

Muleを触ってみた

MuleというESB製品で遊んでみました。ウィキペディアさんによると、
日本ではエディタが思い浮かぶとのことで(私もそうでした)、
ESB Muleといわれているそうです。

てなわけで、以下、遊んでみたメモの殴り書き。

・試した環境
CentOS 5.1(VMwareでHost-only設定)
JDK 1.6.0_06-b02
Tomcat 6.0.16
一部、Windows XP上のEclipse3.3(Jarの組み換えで使用)
Mule 2.1.1
JAF 1.1.1
JavaMail 1.4.1
Xerces2 2.9.1

Muleパッケージの展開
$ tar zxfv mule-2.1.1.tar.gz
$ mv mule-2.1.1 mule
# mv mule /usr/local/

Java Activation Frameworkの展開
$ unzip jaf-1_1_1.zip
# mv jaf-1_1_1/activation.jar /usr/local/mule/lib/user/

・JavaMailの展開
$ unzip javamail-1_4_1.zip
# mv javamail-1_4_1/mail.jar /usr/local/mule/lib/user/

Muleの起動(単体で上げるやり方っぽい)
# export MULE_HOME=/usr/local/mule
# cd /usr/local/mule/bin
# ./mule
ずらずら説明と
Hit return to continue ...
が出るので、ひたすら Enter を押下すると
Do you accept the terms and conditions of this license agreement [y/n]? y

・起動すると下記のポートが開くらしいが、未確認。
# netstat -an | grep 60504

Muleのバージョンを調べる
# ./mule -version

Muleのサンプル
# /usr/local/mule/example/echo/echo
1を選択すると、コマンドラインのエコーアプリが動いた
# /usr/local/mule/example/hello/hello
2を選択する。ブラウザで
http://localhost:8888/?name=Dolly
にアクセスすると、何かしら返ってきた。

Mule付属のwebappサンプルの作成(Tomcatで動かす)
apache-ant-1.7.1-bin.tar.gzのパッケージを /usr/local/ 以下に展開
ディレクトリ名を /usr/local/ant とした。
# export MULE_HOME=/usr/local/mule
# cd /usr/local/ant/bin
# ./ant -f /usr/local/mule/examples/webapp/build.xml
→ /usr/local/mule/examples/webapp/targetにmule-examples.warができた。
→ このままTomcatにデプロイすると、
javax.xml.parsers.FactoryConfigurationError:
Provider org.apache.xerces.jaxp.SAXParserFactoryImpl not found
というエラーが返った。調べてみると xercesimpl.jar がいるらしいとのこと。
→ xerces2からxercesimpl.jarを組み込み、改めてWARファイルを作成してデプロイ。

http://localhost:8080/mule-examples/

にアクセスすると、何かしら動くもんが返って来た。