Rhino(java)を使ったServer-side JavaScript(MaachangComet)を開発しています。
・JSONP-RPC機能の改良。
前回まででは、サーバ側のエラーハンドリングに対して、なにも
していませんでした。
これでは使い勝手がわるいことから、エラーハンドリングを行う
ための、構成に変更しています。
たとえばこんな感じ。
-client-------------------------------------------------------
// jsonpRPC.
var jsonp = new JsonpRPC( "127.0.0.1:3333" ) ;
var testFunc = jsonp.createFunction( "jsonp.Test",
function( param ) {
if( $jsonpRPC.isError( param ) ) {
alert( "error==>" + $jsonpRPC.getResult( param ) ) ;
}
alert( "success==>" + $jsonpRPC.getResult( param ) ) ;
}) ;
var ret = testFunc( "もえもえでっさ〜","ほんまにもう" ) ;
-------------------------------------------------------------
上記の
$jsonpRPC.isError( param )
がそれにあたります。
今回はこのように変更したことで、サーバからの実データを取得する
場合、このように、
$jsonpRPC.getResult( param )
を利用して、取得する必要があります。
・masterHeader機能の追加。
これは、
mtable master
で、マスターCSVを登録する場合に、CSVの1行目には、カラムヘッダを
設定する必要があったのですが、たとえば、他の何かから、CSVを
ダウンロードしてきて、それをマスターに取り込む場合など、このような
場合において、ヘッダカラム名を追加するのに、いちいちCSVを
編集するのは面倒です。
今回は、カラムヘッダを定義するファイルとして、カラム名を[.header]
として作成した場合、プログラムがCSVを取り込むときに、マージして
取り込むようにしています。
今回、サンプルとして[./etc/zip_address]いわゆる「郵便番号検索」
機能を同封しており、ここで、上記カラムヘッダファイルを用いています。
これを参考にしてください。
・「郵便番号検索」サンプルは、日本郵便の郵便番号ダウンロード
情報を利用して、JSONP-RPCを用いた内容です。
昨今では、このような機能は多く使われるので、作成しました。
・JSONP-RPC機能の改良。
・masterHeader機能の追加。
・「郵便番号検索」サンプルを追加。