投稿

6月, 2013の投稿を表示しています

Notes/Domino でREST APIを使ってみよう-後半-

イメージ
今日は、REST APIの後半の話です。
前半では、Domino データサービスの設定方法や、ブラウザからREST APIを利用した場合の結果についてみてみました。
後半は、Notesアプリケーションにそれを応用してみます。


では、記事に入る前にこちらをクリックしましょう。



Dominoデータサービスを設定したことにより、Notesアプリケーションは、JavaやJavaScriptを使ったアプリケーションから利用することができます。
また、Notes/DominoはJavaやJavaScriptを利用することができます。
ということは、NotesアプリケーションでREST APIを使うことができるということになります。

利用するデータは前半でも紹介した「郵便番号辞書アプリ」です。
これは、すでにDominoデータサービスが利用できるようにしてあります。

このアプリからデータを検索するというサンプルアプリケーションを作成してみましょう。
サンプルアプリケーションの内容は、
「7桁の郵便番号を入力して、[検索]ボタンをクリックすると、郵便番号辞書アプリから該当する住所データを取得して、都道府県名、市区町村名、町域名を画面上のフィールドにセットする」
というものです。
サンプルアプリケーションはXPagesで作成します。

1.フォームを作成する
 下図のようなフォームを作成します。
 フォーム名は「AddressForm」としておきます。
 フィールド名は下図を参照してください。

2.XPageを作成する
 XPagesアプリケーションにしたので、画面を作成します。
 「home」(任意です)という名前で作成します。
 データソースを作成して、1.で作成したフォームを割り当てます。
データソースをXPage画面にバインドします。

 ちなみに、このような設定でバインドしてあります。


3.検索用のコードを記述する(SSJS)
 さて、画面が出来上がったので、次に検索用のコードを記述します。
 比較のために、REST APIを使わない場合のものを載せます。
 サーバサイドJavaScript(SSJS)のNotesクラスを使った場合ですね。
var zip7 = getComponent( "zip71" ).getValue();
 で画面上に入力され…

Notes/Domino でREST APIを使ってみよう-前半-

イメージ
こんばんは。Notes/Domino 9.0 SEが出荷されて、早2カ月が過ぎましたね(ダウンロード版の提供開始から含めると、3カ月かな?)。
クライアントガイドも発売されているので、もう多くの方が触れているのではないかと思います。

私も自宅でばっちりとつかっていますよ(職場の環境は事情により、まだ8.5.3なんですね・・・)。
ちなみに、自宅では、XPages Extension Library Japanの活動だったり、本ブログへの記事投稿のためのテストだったり、という形で利用しています(もちろん、全部仕事です)。

そんな中で、私が注目しているのは、REST APIです。
これも8.5.3 up1から利用できるようになったのですが、折角だからNotes/Domino 9.0 SEで動かしてみたいじゃないですか。
ということで、今日はREST APIについての話です。


本ブログの読者では知らない人はいないと思いますが、本題に入る前に、こちらのボタンをクリックしましょうね。



では、始めましょう。
まず、「Domino データサービス」とは何でしょうか?
Dominoサーバ上のNotesアプリケーションへHTTPプロトコルを利用してアクセスするためのサービスサーバ単位、アプリケーション単位、ビュー単位でアクセス制御を可能(文書はアクセスする/しないの二択)データの作成/読み込み/更新/削除(いわゆるCRUD)をサポートしているデータフォーマットはJSONである (参考:テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは

・・・Notes/Domino漬けの皆さんには、よくわからないですよね。
ここは、実際に使ってみましょう。

残念ながら、これはDominoサーバが必要になりますので、クライアントしかないという方は、本ブログの画面ショットのみで雰囲気を味わってください。

1.DominoサーバでDominoデータサービスが利用できるように設定する
 ドミノディレクトリのサーバ文書を編集モードで開きます 
「インターネットプロトコル」タブを開きます
「Domino Web Engine」タブを開きます
最下層にある「Domino アクセスサービス」まで移動する
 そのセクションにある「有効なサービス」欄に&q…