Page History
...
このHTTP 例では、JSMDIRECT 構成、および、サンプル HTML ファイルのホストとなる HTTP サーバーが必要です。
Function Options(*DIRECT)*Define Field(#NAME) Type(*CHAR) Length(50)Define Field(#VALUE) Type(*CHAR) Length(100)Def_List Name(#LST) Fields(#NAME #VALUE) Type(*WORKING)*
*JSMX_BEGIN*Use Builtin(JSMX_BEGIN)*
*JSMX_OPEN*Use Builtin(JSMX_OPEN) With_Args('LOCALHOST:7560') To_Get(#JSMXSTS #JSMXMSG #JSMXHDLE1)Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)*
*SERVICE_LOAD*#JSMXCMD := 'SERVICE_LOAD SERVICE(HTTPService) SERVICE_CONTENT(*HTTP) BIND(*LIST) TRACE(*YES)'Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 #JSMXCMD) To_Get(#JSMXSTS #JSMXMSG #LST)Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)*
*RECEIVE HANDLER*#JSMXCMD := 'RECEIVE HANDLER(InboundMultiPart) FIELD(SONUMBER)'Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 #JSMXCMD) To_Get(#JSMXSTS #JSMXMSG)Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)*
*RECEIVE HANDLER*#JSMXCMD := 'RECEIVE HANDLER(InboundMultiPart) FILE(FILE1) TO(demo.txt)'Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 #JSMXCMD) To_Get(#JSMXSTS #JSMXMSG)Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)*
*SEND HANDLER*#JSMXCMD := 'SEND HANDLER(InboundFile) FILE(receipt.pdf) CONTENT(*PDF) UACACHE(5)'Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 #JSMXCMD) To_Get(#JSMXSTS #JSMXMSG)Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)*
*JSMX_CLOSE*Use Builtin(JSMX_CLOSE) With_Args(#JSMXHDLE1) To_Get(#JSMXSTS #JSMXMSG)Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)*
*JSMX_END*Use Builtin(JSMX_END)*
*サブルーチン*Subroutine Name(CHECK) Parms((#JSMXSTS *RECEIVED) (#JSMXMSG *RECEIVED))*If Cond('#JSMXSTS *NE OK')*
...
*サービスを終了し、HTTP 応答を送信します*Use Builtin(JSMX_CLOSE) With_Args(#JSMXHDLE1) To_Get(#JSMXSTS #JSMXMSG)*Endif*Endroutine
...
HTML ブラウザ クライアント
<!DOCTYPE html><html> <form method="POST" action="http://lansa01:1099/cgi-bin/jsmdirect?service=demohttp&mode=order" enctype="multipart/form-data"> <table> <tr><td>Order#</td><td><input name="SONUMBER" type="text" value="12345"/></td></tr> <tr><td>Customer</td><td><input name="CUSTNAME" type="text" value="ABC Industries"/></td></tr> <tr><td>Street</td><td><input name="STREET" type="text" value="123 Main St"/></td></tr> <tr><td>City</td><td><input name="CITY" type="text" value="Chicago"/></td></tr> <tr><td>PostCode</td><td><input name="POSTCODE" type="text" value="60609"/></td></tr> </table> <br/> <input name="FILE1" type="file"/> <br/> <br/> <input type="SUBMIT" value="Send order"/> </form> </html>