InboundMultiPartハンドラーは、MIMEマルチパート・コンテンツの送受信に使用されます。

詳細については、「5.2.6 Webブラウザー・コンテンツ」を参照してください。

コマンド

キーワード

開発者用メモ

RECEIVE










HANDLER

InboundMultiPart


FILE

条件付。INPUTタグの名前

FIELD

条件付。INPUTタグの名前

FILENAME

条件付。INPUTタグの名前 #JSMMSGフィールドはアップロードされたファイル名に設定されます。

INDEX

条件付。保存するマルチパートのインデックス数。 インデックスは 0 から始まります。

ENCODING


任意。詳細は、「ENCODING」を参照してください。 フィールド値の変換に使用されます。

NUMBERFORMAT


任意。詳細は、「NUMBERFORMAT」を参照してください。

TO

条件付。コンテンツを受信するファイル・パス

APPEND


*YES

任意。既存のファイルにコンテンツを追加します。

*NO

デフォルト。

Webブラウザーはmultipart/form-data形式を使用してコンテンツを送信できます。
 

<FORM METHOD="POST" ACTION="http://server1/cgi-bin/jsmdirect?upload" ENCTYPE="multipart/form-data">
<INPUT NAME="COMPANY" TYPE="TEXT" SIZE ="30"/>
<INPUT NAME="FILE1" TYPE="FILE" SIZE ="60"/>
<INPUT NAME="FILE2" TYPE="FILE" SIZE ="60"/>
<INPUT NAME="FILE3" TYPE="FILE" SIZE ="60"/>
<INPUT TYPE="SUBMIT" VALUE="Send order"/>
</FORM>

 
指定のFILE、FIELD、FILENAME、やINDEXが存在しない場合、コマンド・ステータスNOT_EXISTが返されます。

また、FILEコンポーネントが存在していても使用されていない場合は、NOT_EXISTが返されます。

Webブラウザーのポストからコンテンツを受信します。

RECEIVE HANDLER(InboundMultiPart) FIELD(COMPANY)

RECEIVE HANDLER(InboundMultiPart) FIELD(COMPANY) ENCODING(MS932)


以下の例では、FILE2として選択されたファイルが場所にアップロードされ、新しい名前がTOパラメータで指定されます。

RECEIVE HANDLER(InboundMultiPart) FILE(FILE2) TO(/folder/file.jpeg)

 
以下の例の場合、ブラウザーで選択されたFILE2の名前(C:\images\holiday.jpegなど)を示し、その名前がLANSAファンクション(holiday.jpegなど)に渡されます。

RECEIVE HANDLER(InboundMultiPart) FILENAME(FILE2)


このコンテンツ・ハンドラーのSENDコマンドが実行されると、以下のステップが行われます。

  1. 作業リストの引数を使って、MIME MultiPart応答を作成します。
  2. 名前の値ペア・データとファイル・データはリスト引数を使用して渡されます。

  3. オプションの4番目のフィールドは、ファイル・コンテンツがどのようにMIMEエンコードされるかを制御します。
    可能な値は8bitまたはbase64です。デフォルトのMIMEエンコーディングは8bitです。
    MIME本文のコンテンツタイプは、Java Activation Frameworkを使用するファイル拡張子で決まります。


フィールド値エンコーディングはENCODINGキーワードで決まります。

DEFINE FIELD(#TYPE) TYPE(*CHAR) LENGTH(10)
DEFINE FIELD(#NAME) TYPE(*CHAR) LENGTH(20)
DEFINE FIELD(#VALUE) TYPE(*CHAR) LENGTH(100)
DEF_LIST NAME(#WRKLST) FIELDS(#TYPE #NAME #VALUE) TYPE(*WORKING)

CHANGE FIELD(#TYPE) TO(FIELD)
CHANGE FIELD(#NAME) TO(COMPANY)
CHANGE FIELD(#VALUE) TO(ACME)
ADD_ENTRY TO_LIST(#WRKLST)
 
CHANGE FIELD(#TYPE) TO(FILE)
CHANGE FIELD(#NAME) TO(ORDER_FILE)
CHANGE FIELD(#VALUE) TO('''/order/month-order.xml''')
ADD_ENTRY TO_LIST(#WRKLST)
 
CHANGE FIELD(#JSMCMD) TO('SEND HANDLER(InboundMultiPart) SERVICE_LIST(TYPE,NAME,VALUE)')

構文:

コマンド

キーワード

開発者用メモ

SEND












HANDLER

InboundMultiPart


STATUS

オプションHTTPステータス番号
デフォルト: 200

MESSAGE

オプションHTTPステータス・メッセージ。
デフォルト: OK 正常な HTTP 要求に対する標準的な応答

UAPATH

任意。ユーザー・エージェント保存応答パス

UAFILE

任意。ユーザー・エージェント保存応答ファイル名

UACACHE

任意。キャッシュ制御最大期間
デフォルト値は0です。

UADISPOSITION

任意。コンテンツ処理のファイル名

ENCODING


任意。詳細は、「ENCODING」を参照してください。
フィールド値のエンコードに使用されます。

NUMBERFORMAT


任意。詳細は、「NUMBERFORMAT」を参照してください。

CHARSET



*YES

任意。charset属性を含めます。

*NO

charset属性を含めません。

*TEXT

デフォルト。コンテンツがテキストの場合、charset属性を含めます。

SEND HANDLER(InboundMultiPart) #WRKLST(TYPE,NAME,VALUE)