エラー・メッセージを表示する方法には、いくつかの方法がある。
RPGエンジンによって提供されている SNDERRMSG
プロシージャーを使用すると別のエラー画面
を表示することができる。
これはWebで普及している手法であるが、Windows系に慣れているユーザーにはエラー・ダイアログ
が表示されるほうがわかりやすい。
エラー・ダイアログを表示する機能として EnterpriseServer では JavaScript5250 で
という Javaスクリプトが用意されている。
これは常にJavaスクリプトによる Alertメッセージが表示されるように仕組んでおいてメッセージ値が
書き込まれているときに限って Alertメッセージを表示するという手法である。
従ってエラーがないときにでも、alertmsg.js は、つねにダウンロードされることになる。
次にもっと手軽に alertメッセージを出力する方法をここで紹介する。
これは「クロスサイト・スクリプティング」という手法である。
今、ある商品レコードの検索が要求されたものとする。
CGI は商品レコードを検索してレコードが見つかれば、商品名や単価などを表示する。
<tr> <td>商品名 </td> <td>:</td> <td><FLD NAME=SHNAME>60インチ・プラズマ・ディスプレイ</FLD></td> </tr>
しかし、商品レコードが見つからなかったときには、商品名の欄に商品名の代わりに次のような
スクリプトを埋め込むものとする。
<tr> <td>商品名 </td> <td>:</td> <td><FLD NAME=SHNAME><SCRIPT>alert("商品コードの誤りです。")</SCRIPT></FLD></td> </tr>
このHTMLを実行してみると、「商品コードの誤りです。」というメッセージ・ダイアログが表示されて
商品名の欄は空白となる。
この手法は「クロスサイト・スクリプティングの脆弱性」として問題視される場合があるので
一般ユーザーには教えないようにして頂きたいが、CGI によって非常に簡単にエラー・メッセージを
表示する方法として有効である。