You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

InboundMultiPart

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      名前の値ペア・データとファイル・データはリスト引数を使用して渡されます。

  • リストの最初のフィールドには、コンポーネントのコンテンツ・タイプであるFIELDまたはFILEが含まれます。
  • 2番目のフィールドには、コンポーネントの名前が含まれます。
  • 3番目のフィールドには、コンポーネントの値またはコンポーネントのファイル・パスが含まれます。

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)
 

  • No labels