|
||||||||||||
| 前のページ 1 2 3 4 | ||||||||||||
| 製品一覧:グリッド表示 | ||||||||||||
|
Ext JSで用意されているグリッド「Ext.grid.Grid」は、表示するデータをデータソース「Ext.data.Store」として提供します。今回はデータソースに対して、上で作成したshow_list.xqlを設定します。「Ext.data.HttpProxy」はXML Http Request(XHR)を行うためのライブラリです。
//データストアの設定です
|
||||||||||||
| 構成部品表示:ツリー表示 | ||||||||||||
|
Ext JSで用意されているツリー「Ext.tree.TreePanel」では、XML形式のデータを基に、個々のノードを作成する必要があります。グリッド表示の場合と同様に、HttpProxyに対して上で作成したparts_tree.xqlを指定します。
var p = new Ext.data.HttpProxy({url:url}); ← URLを指定します
treeNodeFromXml関数は受け取ったXMLの階層構造に基づき、再帰呼び出しを行い個々のノードを作成します。 |
||||||||||||
| アプリケーションを動かそう | ||||||||||||
|
では早速サンプルアプリケーションを動かしてみましょう。 サンプルアプリケーションのZipファイルを展開した後で、eXistのサーバを起動させます。サーバが起動したら、Webブラウザから以下のULRにアクセスします。 画面が表示されたでしょうか。 ロードボタンをクリックすると、製品一覧が表示されます。一覧から製品を選択してダブルクリックすると、右側のツリー部分に選択した製品を構成している部品が階層構造で表示されます。 |
||||||||||||
| 最後に | ||||||||||||
|
これまで4回に渡って、XMLDBの現状、eXistのインストールとXQuery、eXistを使ったWebアプリケーション開発についての説明を行ってきました。 サンプルアプリケーションの作成では、XMLの複雑なデータを扱うことができる特性やXQueryの記述性の高さ、Ajaxライブラリを使った効率的な開発をうまく組み合わせることができたと思います。一般的なRDB+Javaアプリケーション開発とは異なるスピード感をお伝えできたでしょうか。 今回の連載では触れることができませんでしたが、AdobeのFlexなどに代表されるRIA(Rich Internet Applications)とXMLDBの相性は高いといえます。Flex2.0では、言語レベル/コントロールレベルでXMLデータに対応しているため、XMLのURLをプロパティに指定するだけで、データのツリー表示、テーブル表示を実現することができます。 XMLDBは実験段階の技術ではありません。更新系など標準化途上の分野もありますが、XMLの利用シーンが増えている今日、十分に利用可能なソリューションの1つです。Ajax、RIAや他の技術と組み合わせることで、さらに面白い使い方ができると思います。本連載をここまで読んでいただいた読者の皆さん、ぜひともXMLDBに挑戦してみてください。
参考文献
XQuery 1.0: An XML Query Language http://www.w3.org/TR/xquery/ XML Query Use Cases http://www.w3.org/TR/xquery-use-cases/ Ext JS http://extjs.com/ XQuery by Priscilla Walmsley, March 2007 http://www.oreilly.com/catalog/9780596006341/ Declarative XML processing with XQuery: Re-evaluating the big picture by Daniela Florescu http://www.webservicessummit.com/Trends/DeclarativeXMLwithXQuery.PDF |
||||||||||||
|
前のページ 1 2 3 4 |
||||||||||||
|
|
||||||||||||
|
|
||||||||||||
|
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
||||||||||||

