Jakarta Commmonsとは?
Jakarta Commonsとは、Jakartaプロジェクト内で作成されているJava コンポーネント郡です。
Javaプログラムの作成時に便利な各種のコンポーネントが提供されており
Webtribe/VisualFrameでのビジネスルール作成にも用いることが出来ます。
このTipsではJakarta-CommonsのHttpClient、FileUploadを用いてファイルの送受信を行うビジネスルール、
サーブレットの作成サンプルを提供しています。
HttpClientは クライアントよりHTTP通信を行うためのクラスが提供されており、URLConnectionでは
対応出来なかったHTTP通信の機能を使用することが出来ます。
FileUploadは、RFC1867("Form-based File Upload in HTML")で規定されている方式に従い、
クライアントから送信されてきたMultipart形式の ファイル情報を操作できるクラスが提供されています。
なお、このTipsの内容に関しましてはサポート対象外となりますので ご了承下さい。
環境のセットアップ
モジュールの取得
http://jakarta.apache.org/commons/より、処理に必要なJARファイルを
ダウンロードして下さい。
今回使用するモジュールはHttpClient FileUploadですが、HttpClientは実行にJakartaCommons Loggingを
使用してますので、Loggingもダウンロードして頂く必要があります。
また、サンプルとして提供をしている
FileTransfer.zipをダウンロードしてください。
FileTransfer.zip
|
|
+-------- lib
| |
| |
| +--FileTransferServlet.jar
| |
| +--FileTransferRule.jar
|
|
+-------- src
|
+-------- JavaDoc
|
+-------- web.xml.sample.txt
|
+-------- RunClientConstatns.wdg.sample.txt
各種ファイル、フォルダの説明
- FileTransferServlet.jar ・・・ ファイルアップロード/ダウンロード用のサーブレット用jarアーカイブです。
- FileTransferRule.jar ・・・ ファイルアップロード/ダウンロード用のビジネスルールです。
- src ・・・ 上記二つのjarファイルのソースが含まれています。
- JavaDoc ・・・ 上記二つのjarファイルのJavaDocが含まれています。
- web.xml.sample.txt ・・・ web.xmlのサンプルです。
- RunClientConstants.wdg.sample.txt ・・・ RunclientConstants.wdgのサンプルです。
サーブレットのセットアップ
以下 Jarakta-Tomcat4.1を用いたサーブレットのセットアップ手順を記述しています。
[TOMCAT ROOT]\webapps\[プロジェクト名]\lib フォルダ内に、
解凍したzipに含まれるFileTransferServlet.jarと、
Jakarta-Commons FileUploadに含まれるcommons-fileupload-xxxxx.jarを
コピーして下さい。
その後 [TOMCAT ROOT]\webapps\[プロジェクト名]\WEB-INF\web.xml 内に、下記記述を追加します。
<servlet>
<servlet-name>FileUploadServlet</servlet-name>
<servlet-class>jp.ne.mki.unofficial.filetransfer.server.FileUploadServlet</servlet-class>
<init-param>
<param-name>UploadDirectory</param-name>
<param-value>[アップロードファイルを格納するディレクトリ]</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>FileDownloadServlet</servlet-name>
<servlet-class>jp.ne.mki.unofficial.filetransfer.server.FileDownloadServlet</servlet-class>
<init-param>
<param-name>DownloadDirectory</param-name>
<param-value>[ダウンロードファイルを格納するディレクトリ]</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>FileUploadServlet</servlet-name>
<url-pattern>/servlet/jp.ne.mki.unofficial.filetransfer.server.FileUploadServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>FileDownloadServlet</servlet-name>
<url-pattern>/servlet/jp.ne.mki.unofficial.filetransfer.server.FileDownloadServlet</url-pattern>
</servlet-mapping>
|
クライアントのセットアップ
[WEDGE CLIENT]\lib\フォルダ内に、
解凍したzipに含まれるFileTransferRule.jarと、
Jakarta-Commons HttpClientに含まれるcommons-httpclient-xxxxx.jar、
及び Jakarta-Commons Loggingに含まれるcommons-logging.jarを
コピーして下さい。
その後 [WEDGE CLIENT]\RunClient.bat のクラスパスにこれらのjarファイルを追加します。
各種クラスの説明
ビジネスルールの説明
- jp.ne.mki.unofficial.filetransfer.client.FileUploadRule
ファイル送信をするためのビジネスルールです。
入力アイテム(1)にはクライアントのファイル名を指定して下さい。
また、パラメータかRunClientConstants.wdgに接続先URLを設定して下さい。
サーバのアップロードディレクトリに置かれたファイルのファイル名を
出力アイテム(1)に返します。
- jp.ne.mki.unofficial.filetransfer.client.FileDownloadRule
ファイル受信をするためのビジネスルールです。
入力アイテム(1)にはクライアントのファイル名を指定して下さい。
入力アイテム(2)にはサーバのファイル名を指定して下さい。
また、パラメータかRunClientConstants.wdgに接続先URLを設定して下さい。
サーブレットの説明
- jp.ne.mki.unofficial.filetransfer.server.FileUploadServlet
FileUploadRuleより送信されてきたファイルを、受信するサーブレットです。
受信したファイルは、UploadFile_[タイムスタンプ]_[セッションID]で作成されます。
- jp.ne.mki.unofficial.filetransfer.server.FileDownLoadServlet
FileDownloadRuleよりリクエストがあったファイルを、返信するサーブレットです。
なお、各クラスの詳細に関しましては JavaDocを参照下さい。