 |
 |
 |
 |
 |
 |
企業システムでも使われるウィジェット技術: 第 2 回 OpenAjax Hub 2.0 による安全なマッシュアップ 本連載では、ウィジェット関連の技術動向についてご紹介していきます。第2回となる本稿ではOpenAjax Alliance で仕様が策定されたOpenAjax Hub 2.0の機能と使い方についてご紹介します。特にOpenAjax Hub 2.0では複数のウィジェットを組み合わせたコンポジット・アプリケーションを安全に実現するためのセキュア・マッシュアップ機能が大きな特徴です。マッシュアップによるセキュリティ的な問題と、OpenAjax Hub 2.0の実現するセキュリティの仕組みについて解説します。 |
|
|
|
2009/11/20 |
|
| |
企業システムでも使われるウィジェット技術: 第 1 回 IBM 共通のウィジェット技術 iWidget 本連載では、ウィジェット関連の技術動向についてご紹介していきます。第1回となる本稿ではユーザー・インターフェースにおいてウィジェットの果たす役割と価値を整理した上で、コードを交えてIBMが取り組むiWidget仕様に基づいたアプリケーションの仕組みを解説します。 |
|
|
|
2009/10/30 |
|
| |
動的要素を持つ Web ページを自動的に更新する 皆さんは、標準的な JSF (JavaServer Faces) コンポーネントで JavaScript と CSS (Cascading Style Sheets) を使って、オプションで表示される JSF コンポーネントの表示/非表示を切り替える方法をご存じかと思います。これを行うためには、JSF ページで使われるすべての JSF コンポーネントを最初に特定しておいてから、それらのコンポーネントを JSF ページに書き込む必要があります。しかしこの方法は、実行時にならないとわからない動的要素を含む Web ページを作成する場合には不可能です。この記事では、Web ページ上の古い UI コンポーネントをクリアーする一方で動的要素を自動的に更新する方法と、Java コードを使って Web ページに新しい要素を追加し、適切な場所に配置する方法について学びます。また、Web ページ上のそれぞれの動的要素にさまざまなイベント・ハンドラーをバインドする方法、サーバー・サイドのデータの変更をリッスンしてページを最新の情報に更新するためのリスナーを登録する方法、そして Ajax (Asynchronous JavaScript and XML) の手法を使って Web ページの動的部分のみを最新の情報に更新する方法についても学びます。 |
|
|
|
2009/10/13 |
|
| |
pureXML と JSON に対応したアプリケーションを構築する: 第 1 回 DB2 pureXML による JSON の保管とクエリー Web 2.0 でよく使われているテキスト形式の表記法である JSON (JavaScript Object Notation) は、クライアントとサーバーとの間で情報を交換する際に、オブジェクト (またはデータ構造) をシリアライズしたテキストとして表現するために使用されています。アプリケーションによっては、JSON オブジェクトを保持してセッション間で状態を維持するとメリットがある場合があります。この記事を読んで、単純な JSON と XML とのマッピングを導入することによって DB2 pureXML で JSON の保管、管理、クエリーを可能にする方法を学んでください。 |
|
|
|
2009/10/13 |
|
| |
オンライン・コラボレーションによって、アイデアを生み出し、プロジェクトを共有する 皆さんは、リアルタイム動作が可能な対話型のコラボレーション Web サイトが必要ではありませんか。この記事では、developerWorks のおなじみの寄稿者 Judith Myerson が、オンライン・コラボレーションを必要とする人達のニーズや、さまざまな理由による変更が可能なコラボレーション・モデルへの開発者のニーズに対応する方法について説明します。著者はオンライン・コラボレーションのシナリオとして、サプライ・チェーン管理、プラント・エンジニアリング管理、そして科学研究論文の 3 つを挙げ、またモバイル機器に対する IPv6 の影響について説明します。 |
|
|
|
2009/10/06 |
|
| |
Jersey と Apache Tomcat を使って RESTful な Web サービスを作成する REST (Representational State Transfer) は 2000年の初旬に Roy Fielding の博士論文のなかで初めて紹介されました。しかし Java コミュニティーが REST を標準化したのは、JSR 311(JAX-RS) が確定された 2008年のことです。そのリファレンス実装の初回リリースに至っては、さらに後になってからのことでした。この記事では、JSR 311 のリファレンス実装である Jersey の紹介として、Jersey に不可欠な API とアノテーションについて説明します。また、Jersey を Apache Tomcat に統合することによってサーブレット・スタイルのサービスをスムーズに RESTful なサービスに変換する方法も説明します。 |
|
|
|
2009/09/24 |
|
| |
ソケット・ベースの RIA 技術を使ってリアルタイムのサーバー・プッシュを Ajax アプリケーションに実装する 新しい種類の高度な UI (User Interface) アプリケーションでは、サーバー・サイドで少しでも変更があった場合に、即座にクライアントに通知することができる「サーバー・プッシュ」機能が何らかの形で必要です。残念ながら HTTP の仕様では、サーバー・サイドから開始される通信に関する記述はありません。そのため、サーバー・プッシュは従来、クライアント・サイドによるポーリングによって実装されてきましたが、この手法では不要なトラフィックが大量に発生し、またアプリケーションを最適化できない傾向があります。幸いなことに、いくつかの RIA (Rich Internet Application) 技術を利用すると、専用のソケット・チャネルを開くことができ、バックエンド・サーバーでは Ajax (Asynchronous JavaScript and XML) アプリケーションがその API を利用してサーバー・プッシュを実装できるようになります。この記事では、この手法を読者のみなさんが十分理解して自ら実装を始められるように、さまざまな面からこの手法を掘り下げていきます。 |
|
|
|
2009/09/22 |
|
| |
Web 2.0 技術でのアクセシビリティー 人々の意識の高まりと要件の増大によって、あらゆる潜在的ユーザーのニーズを考慮に入れたアプリケーションが要求されるにつれ、アクセシビリティーはホットなトピックになりつつあります。アクセシビリティーの対象は Web アプリケーションだけではなく、文書、デスクトップ・アプリケーション、ハードウェア等々も含まれます。Web アプリケーションの領域では、静的な Web ページにアクセシビリティーを実現することは比較的容易です。しかし Web 2.0 技術の場合には、コンテンツが動的であることや装飾の多い視覚効果のおかげで、アクセシビリティーのテストが非常に困難になります。この記事では、今後の Ajax (Asynchronous JavaScript and XML) ウィジェットをアクセシブルにするために設計された WAI-ARIA 標準を紹介します。またこの記事では Web 2.0 の設計でのアクセシビリティーの原則と、アクセシビリティーに対応するための手掛かりとなるコード・サンプルについても説明します。 |
|
|
|
2009/09/01 |
|
| |
XUL でのマルチスレッド・プログラミングを探る XUL を使ってクロスプラットフォームのデスクトップ・アプリケーションを作成すると、JavaScript や CSS、さらには HTML のスキルの強化につながります。XUL のクロスプラットフォーム機能は、どのプラットフォームにも共通の最小の機能の集まりではありません。XUL はデスクトップ・アプリケーションのツールキットに期待するような機能も提供します。その 1 つが、ネイティブ・スレッドへのアクセスです。XUL では、JavaScript から直接ネイティブ・スレッドにアクセスして、並列で実行されるコードを作成することさえ可能です。この記事では XUL のマルチスレッド化機能について調べ、複数のスレッドを使用してデータを取得するアプリケーションを作成します。インターネットで複数のリモート・データ・ソースにアクセスする典型的な I/O バウンドのアプリケーションを例に、XUL の複数のスレッドを使用してアプリケーションの実行に要する時間を短縮します。そしてユーザーがこのアプリケーションを使って、Google、Yahoo!、そして Microsoft(R) の Bing という 3 つのよく使われている検索エンジンによる検索結果を表示し、比較できるようにします。 |
|
|
|
2009/09/01 |
|
| |
GWT の魅力: 第 1 回 Google Web Toolkit を利用して各地を訪ね回る GWT (Google Web Toolkit) では、ブラウザーで動作するリッチ・クライアントのユーザー・インターフェースを Java 言語で実装することができます。この 2 回の連載記事では、David Geary が最新バージョンの GWT に関する情報を提供し、デスクトップのような Web アプリケーションを実装する方法を説明します。 |
|
|
|
2009/09/01 |
|
| |
JSF 2.0 の Ajax と GMaps4JSF GMaps4JSF は Google マップと JSF (JavaServer Faces) を統合する JSF マッシュアップ・ライブラリーです。GMaps4JSF を利用すると、ストリート・ビューの複雑なパノラマやマップを数個の JSF タグで作成することができます。また、さまざまなコンポーネントを容易にマップに追加することができます。この記事では JSF 2.0 アプリケーションの中で GMaps4JSF を構成する方法を説明し、また JSF 2.0 の Ajax (Asynchronous JavaScript and XML) を簡単に紹介します。この記事を利用して、JSF 2.0 の Ajax と GMaps4JSF の両方を使用する簡単なマッシュアップ・アプリケーションの作成方法を学びましょう。 |
|
|
|
2009/08/25 |
|
| |
Ajax 技術を使って Web プレゼンテーション・アプリケーションを構築する: 第 1 回 Web UI の開発 Google Docs では、あれほど驚異的な機能を Web アプリケーションに組み込むための手段として Web 2.0 技術を利用しています。Web 2.0 技術では、比較的単純なコードで堅牢な機能を実現することができます。この記事を読んで、Ajax (Asynchronous JavaScript and XML) 技術によってスライドショー・プレゼンテーションを作成する Web アプリケーションの構築方法を学んでください。 |
|
|
|
2009/07/28 |
|
| |
マッシュアップ: 新種の Web アプリケーション マッシュアップは対話型 Web アプリケーションの刺激的な新ジャンルであり、外部データ・ソースから取得した内容を元に描画を行い、まったく新しい、そして革新的なサービスを作成します。またマッシュアップは、非公式に Web 2.0 として知られる第 2 世代の Web アプリケーションの持つ、顕著な特質でもあります。 |
|
|
|
2009/07/24 |
|
| |
セマンティック技術を使用してウィキペディアの問い合わせ用フォームを作成する 公開 SPARQL エンドポイントは、ますます増えている Linked Data へのオープン・アクセスを提供し、皆さんのアプリケーションに役立つ優れたデータを提供することによってセマンティック Web の成長を促します。巷にある多くのデータ駆動型 Web サイトと同じく、これらのエンドポイントにクエリーを送信し、結果を HTML タグにラップすれば、Web ページを作成することができます。しかし、SPARQL エンドポイントならではの大きな違いは、この新しい Linked Data が皆さんのアプリケーションで使えるように公開されていることです。この記事では、簡単な CGI スクリプトによって、2 つの異なる SPARQL エンドポイントからデータを取得してユーザーの質問に答えるアプリケーションを構築します。例として用いるのは、2 人の監督の映画両方に出演した俳優を答えるアプリケーション、そしてどのミュージシャンがどのアルバムをリリースしたかを答えるアプリケーションの 2 つです。 |
|
|
|
2009/07/21 |
|
| |
パターン + GWT + Ajax = ユーザビリティー GWT (Google Web Toolkit) を利用すると複雑な Web サイトを容易に開発することができます。ユーザビリティーを強化する特定のデザイン・パターン、そして Ajax (Asynchronous JavaScript and XML) と GWT とを組み合わせると、これらの技術と手法によって、軽快に動作するアプリケーションを実現することができます。その結果、通常の Web ページよりも従来のデスクトップ・プログラムに近いアプリケーションを作成することができます。 |
|
|
|
2009/07/21 |
|
| |
RSS と Atom を使ってサイトでフィードを取得する 近年広まっている Web 2.0 サイトでは、さまざまなソースからの情報をマッシュアップすることができます。GWT (Google Web Toolkit) を使用すると、RSS や、もっと新しい Atom 配信フォーマットなどの XML ベースのニュース・フィードを取得して処理することができます。この記事では、SOP (Same-Origin Policy: 同一生成元ポリシー) の制約を克服して任意の適切なフィードを利用できるようにし、フィードとして受信される XML データを処理する方法を学びます。 |
|
|
|
2009/07/14 |
|
| |
上級レベルの jQuery jQuery は JavaScript ベースの優れた Web アプリケーションを簡単かつ単純に作成できるようにしますが、その優れた Web アプリケーションを卓越した Web アプリケーションにするには、さらにいくつかのステップを踏まなければなりません。この記事では、Web アプリケーションに最終的な磨きをかけるステップを詳しく説明します。 |
|
|
|
2009/07/14 |
|
| |
JSF 2 の魅力: 第 3 回 イベント処理、JavaScript、そして Ajax JSF (JavaServer Faces) 2 Expert Group のメンバー、David Geary が JSF 2 の新機能を紹介する 3 回の連載は、今回が最終回です。この連載の締めくくりとして、このフレームワークの新しいイベント・モデルと Ajax の組み込みサポートによって、再利用可能なコンポーネントをなお一層のこと強力にする方法を説明します。 |
|
|
|
2009/07/14 |
|
| |
中級レベルの jQuery jQuery は素晴らしい JavaScript ライブラリーですが、そのパフォーマンスについてはどうでしょう。Web ページに余分な負荷がかかったとしても、その使い易さをとるだけの価値はあるのでしょうか。それとも、そのようなパフォーマンス・ヒットはまったくないのでしょうか。この記事ではそんな jQuery のパフォーマンスに関する疑問に答え、読者それぞれのアプリケーションでパフォーマンスを向上させるためのヒントを提供します。 |
|
|
|
2009/06/16 |
|
| |
RESTful な Web サービスを構築するためのマルチティア・アーキテクチャー SOAP ベースのサービスに代わる有望なサービスとして、RESTful な Web サービスが登場しつつあります。これは RESTful な Web サービスが単純で軽量であり、HTTP で直接データを送信できるためです。この記事では REST と RESTful な Web サービスについて、その概念の概要を学び、RESTful な Web サービスを RPC スタイルあるいは SOAP ベースの Web サービスと比較します。また、RESTful な Web サービスを構築するための Java フレームワークについて、さらに RESTful な Web サービスの構築にも動的な Web アプリケーションの構築にも共通で使用できるマルチティア・アーキテクチャーについても学びます。 |
|
|
|
2009/06/09 |
|
| |
JavaScript EE: 第 3 回 JSP で Java Scripting API を使用する この連載の前の 2 回の記事では、JavaScript ファイルをサーバー上で実行し、Ajax でリモート JavaScript 関数を呼び出す方法を説明しました。今回の記事では、サーバー・サイドの JavaScript コードを JSP (JavaServer Pages) 技術で使用する方法、JavaScript が無効にされた Web ブラウザーでも機能する Ajax (Asynchronous JavaScript and XML) ユーザー・インターフェースを作成する方法を紹介します。紹介するサンプル・コードは、皆さん独自のアプリケーションで再利用できる小さな JSP タグ・ライブラリーや、(Web サーバー上または Web ブラウザーで実行可能な) JavaScript コードによって生成される動的 Web フォームで構成されています。 |
|
|
|
2009/06/02 |
|
| |
jQuery を扱う: 第 3 回 中級レベルの jQuery: 独自のプラグインを作成する jQuery では、jQuery の関数を拡張するプラグインを開発者が独自に作成し、作成したプラグインを jQuery コミュニティーに提供できるようになっています。この記事では、独自のプラグインを作成するプロセスを手順に沿って説明し、そのプラグインを jQuery プラグイン・コミュニティーの Web ページのリストに掲載する方法を説明します。 |
|
|
|
2009/05/26 |
|
| |
Comet と Java による開発 Comet を使用した開発方法のさまざまな実装を調べてみましょう。この記事では、Jetty や Tomcat などのよく使われている Java Web サーバーではどのようにして Comet アプリケーションを実現しているかを説明します。さらに、それぞれのサーバーでのプログラミング方法を紹介し、最後に、次期バージョンとなる Servlet 3.0 仕様および JavaEE 6 仕様の一部となっている Java での Comet 標準化の提案について説明します。 |
|
|
|
2009/05/26 |
|
| |
Dojo 1.x を使ってウィジェットを開発する Dojo JavaScript ツールキットを使用して HTML ウィジェットを開発する上での基本を学んでください。この記事では Dojo ツールキットについて紹介し、開発プロセスに役立ついくつかの例を記載します。単純なウィジェットから次第に複雑なウィジェットの例へと進むなかで、開発段階で発生する可能性のある共通の問題を明らかにし、解決します。 |
|
|
|
2009/04/28 |
|
| |
jQuery を扱う: 第 2 回 中級レベルの jQuery: UI プロジェクト jQuery UI パッケージの狙いは、さまざまな Web アプリケーションで再利用できるように明確に定義された信頼性の高いユーザー・インターフェース・ウィジェットを作成することです。そして最終的には、十分にテストされ、HTML Input 要素で使用可能なウィジェットよりも優れたウィジェットを提供し、ユーザー・インターフェース開発者すべての作業を楽にすることを目標としています。 |
|
|
|
2009/04/14 |
|
| |
Ajax 対応の JSP TagLib コントロールを作成する: 第 3 回 更新パネル・コントロールとポップアップ・ダイアログ・ボックス・コントロール ビジネス分野のアプリケーションで使用できる Ajax (Asynchronous JavaScript + XML) コントロールを作成しましょう。この記事で作成する構成可能な JSP (JavaServer Pages) TagLib ベースのコントロールは、JSON (JavaScript Object Notation)、JavaScript スクリプト言語、そして CSS (Cascading Style Sheets) を利用して作成します。このような標準的な JSP TagLib コントロールを簡単にアプリケーションに組み込んで、より直観的で応答性に優れたユーザー・インターフェースを提供する方法を学んでください。 |
|
|
|
2009/04/07 |
|
| |
XML: GWT と PHP とのブリッジ GWT (Google Web Toolkit) アプリケーションでは、昔ながらの Java の流儀でサーブレットに接続することもできますが、PHP による Web サービスを使って XML でデータを送受信することもできます。この記事では XML 文書の生成方法と処理方法を Java 言語の場合と PHP の場合の両方について説明します。 |
|
|
|
2009/04/07 |
|
| |
JavaScript EE: 第 2 回 Ajax でリモート JavaScript 関数を呼び出す この連載の第 1 回では、javax.script API を Ajax (Asynchronous JavaScript and XML) アプリケーションと Java EE (Java Platform, Enterprise Edition) アプリケーションで使用する方法、そしてサーバー・サイドの JavaScript ファイルを実行できる Java サーブレットを作成する方法を学びました。今回の記事では、サーバーとクライアントの両方で JavaScript を使用する Web アプリケーションのために、RPC (Remote Procedure Call) メカニズムを実装する方法を説明します。さらにいくつかの興味深い方法として、Java インターフェースを JavaScript で実装する方法、XMLHttpRequest ラッパーを作成する方法、Ajax のデバッグを容易にする方法、そして JSP タグ・ファイルを使用して JavaScript コードを生成する方法も学びます。 |
|
|
|
2009/03/31 |
|
| |
渋谷テクニカルナイト講師陣が語る新技術動向: 第 6 回: はじめて使うProject Zero ここ数年で、Webアプリケーション開発の分野は大きく様変わりしました。Web2.0というキーワードで代表されるような、高機能で使い勝手のよいWebアプリケーションが当たり前のように求められるようになり、AjaxやREST、マッシュアップをいかに使いこなすかということが重要になってきています。また、従来に比べ開発期間が短縮される傾向にあることも、最近のWebアプリケーション開発の特徴ではないでしょうか。 |
|
|
|
2009/03/23 |
|
| |
Ajax によるチャット 皆さんは Ajax (Asynchronous JavaScript and XML) を使ってチャットをしてみたいと思いませんか。また、例えば保証されたサービス・レベルよりもパフォーマンスが下回った場合などのシステム・イベントに応答して、オープンソースの専用 Web チャットがポップアップ表示され、何が起きているのか通知してくれたら便利だと思いませんか。この記事では developerWorks 常連の寄稿者である Judith Myerson が、2 つのパネルによるシステム管理者用のチャットの考え方を紹介します。このチャットでは、一方のパネルでプライベートなメッセージを交換し、もう一方のパネルで一般ユーザーにメッセージをブロードキャストすることができます。またこの記事では、チャット・サーバーの過負荷に対するソリューション、Ajax Chat をダウンロードする際の問題、構成の変更方法、さらには必要な数だけチャネルを追加する方法についても説明します。 |
|
|
|
2009/03/17 |
|
| |
Web アプリケーションの機能テストを行う クラウドを利用しようとしている人にとって、アプリケーションを信頼できるものにする上でテストが一層重要になります。オープンソースのツールである Selenium、Windmill、twill を使って自動化された機能テストを行う方法をマスターしましょう。この記事で説明する手法は、Google App Engine やブログ・ソフトウェア、あるいは皆さん独自のアプリケーションにも応用することができます。 |
|
|
|
2009/03/10 |
|
| |
JSONP によるクロスドメインの通信: 第 2 回 JSONP、jQuery、Yahoo! Query Language を使ってマッシュアップを作成する このシリーズの前回の記事では、ブラウザーの同一生成元ポリシーによる制約を回避し、サードパーティーのソースからのデータを組み合わせて表示するための方法として JSONP (JSON with Padding) を紹介しました。今回の記事は前回の続きとして、Yahoo! が提供する JSONP サービスである YQL (Yahoo! Query Language) と jQuery を使用して、マッシュアップによる Web ページを作成する方法について説明します。 |
|
|
|
2009/03/03 |
|
| |
Jaxer を利用してサーバー・サイドで E4X を使う E4X (ECMAScript for XML) 標準は JavaScript 開発者にとって XML を扱うための強力な API です。E4X は Internet Explorer ではサポートされていないため、あまり頻繁には使われていないかもしれませんが、Jaxer を利用してサーバー上で JavaScript を使う場合には、Internet Explorer が E4X をサポートしていないことは問題ではありません。この記事では、JavaScript と E4X とを使うことによって、いかに容易にサーバー上で XML を処理することができるのかを説明します。E4X という重要な要素を Jaxer と組み合わせると、JavaScript 以外には何も使用せずに Ajax アプリケーションを作成することができます。 |
|
|
|
2009/03/03 |
|
| |
JSONP によるクロスドメインの通信: 第 1 回 JSONP と jQuery を組み合わせ、強力なマッシュアップを迅速に作成する 現在、Web 上には数多くの Web サービス API が公開されているため、さまざまな Web ソースからコンテンツを取得してマッシュアップを作成することが非常に容易にできるようになっています。しかしそのためには適切な API とツールを利用できなければなりません。この記事では、あまり知られていないクロスドメインの呼び出し手法 (JSONP) と柔軟な JavaScript ライブラリー (jQuery) とを組み合わせ、強力なマッシュアップを驚くほど迅速に作成する方法を学びます。 |
|
|
|
2009/02/24 |
|
| |
jQuery を扱う: 第 1 回 中級レベルの jQuery: プラグインを使用して jQuery 関数を作成および拡張する jQuery がよく使用されている理由は、これがプラグイン・アーキテクチャーを組み込むことにしたところにあります。この決定によって、サード・パーティーのどの開発者でもライブラリーに元々用意された関数の枠を超えて jQuery の関数を作成し、拡張することが可能になります。現在では何百にものぼるプラグインによって、Web アプリケーションで必要なほぼすべてのタイプの関数が提供されています。今回の記事ではこのプラグイン・アーキテクチャーを取り上げ、Web アプリケーションにデスクトップ・アプリケーションと同じような振る舞いをさせる上で、jQuery がどのように役立つかを説明します。 |
|
|
|
2009/02/17 |
|
| |
渋谷テクニカルナイト講師陣が語る新技術動向: 第 2 回: DojoツールキットのDataGridを使いこなす 高機能JavaScriptライブラリとして、操作性、応答性にすぐれたWebアプリケーションのUI構築に威力を発揮する「Dojoツールキット」。その多彩な機能の中でも、特にビジネスアプリケーションに不可欠なコンポーネント(ウィジェット)が、データコレクションの表示、編集機能を提供するDataGridです。本稿では、この多機能で柔軟なカスタマイズが可能なDataGridを利用した、典型的なデータ入出力のUI作成方法を紹介します。 |
|
|
|
2009/02/13 |
|
| |
渋谷テクニカルナイト講師陣が語る新技術動向: 第 1 回: Dojoツールキットで始めるオブジェクト指向 この記事は、IBM developerWorks主催の渋谷テクニカルナイトで2008年10月10日に実施したセミナーの内容を記事に起こしたものです。 |
|
|
|
2009/02/13 |
|
| |
JSF を Dojo ウィジェットと組み合わせて一層優れたユーザー・エクスペリエンスを作り出す JSF (JavaServer Faces) は成熟した Web フレームワークとして、徹底したライフサイクル管理と、完全なイベント処理とデータ・バインディングによる充実したコンポーネント・モデルを実現します。一方の Dojo は、Web2.0 アプリケーションに豊富なウィジェットと巧妙な効果をもたらす人気の高い Ajax (Asynchronous JavaScript + XML) ライブラリーです。この JSF 技術と Dojo 技術を利用し、サーバー・サイドでは JSF の統合機能を、クライアント・サイドでは Dojo のユーザー・インターフェースを使用することによって、一層優れたユーザー・エクスペリエンスを実現することができます。この記事ではこのプロセスについて説明し、ユーザーにより優れたエクスペリエンスを提供する Web アプリケーションを簡単に構築する方法を説明します。 |
|
|
|
2009/02/03 |
|
| |
WebSphere sMash Web 2.0 アプリケーションのスケーリングを行う: 第 1 回 WebSphere sMash トポロジーの概要 IBM WebSphere sMash は、動的 Web 2.0 ベースのアプリケーションを素早く簡単に実現できるようにする開発および実行プラットフォームです。Web は、それ自体がスケーラブルかつ柔軟なシステムの典型です。この記事が第 1 回となるこの連載では、WebSphere sMash アプリケーションのスケーリングを行う上でのストラテジーについて説明します。 |
|
|
|
2009/01/28 |
|
| |
Web ページを高速化する 皆さんは Web ページのロードをもっと高速にしたいと思いませんか。ロード時間を短縮すること (場合によっては 80 パーセントも短縮) で、ダイヤルアップ・ユーザーにとってのブラウジング・エクスペリエンスを改善する方法を学びましょう。 |
|
|
|
2009/01/27 |
|
| |
Apple の iPhone を Google のクラウド・コンピューティングに接続する 携帯機器のためのクラウド・コンピューティングとソフトウェア開発は、非常にホットな 2 つの技術であり、両者を組み合わせてハイブリッド・ソリューションを作成することが多くなっています。この記事では、Google App Engine と Google のクラウド・コンピューティングを Apple のモバイル・プラットフォームである iPhone と接続する方法を学びます。またオープンソースのライブラリーである TouchEngine を使って App Engine クラウドに接続し、iPhone アプリケーションのデータをオフラインでの使用に備えてキャッシュすることで、そのアプリケーションのデータを動的に制御する方法も学びます。 |
|
|
|
2009/01/20 |
|
| |
Ajax を使用して、クライアント・サイドで行われた検証の結果をローカライズされたメッセージで表示する 世界中のユーザーを対象にした Web アプリケーションを作成する際には、2 つの点を考慮する必要があります。1 つはページのコンテンツの国際化とローカライズ、そしてもう 1 つはユーザー入力の検証および検証結果のメッセージの表示です。国際化されたページは、サーバー・サイドでリソース・バンドル (ロケール固有のプロパティー・ファイル) を使えば容易に作成することができますが、クライアント・サイドで検証が行われる場合には、国際化された検証メッセージを表示することは非常に困難です。その際、皆さんの負担を軽減するための 1 つの選択肢として、Ajax (Asynchronous JavaScript + XML) を使う方法があります。この記事では、クライアント・サイドで行われた検証結果のメッセージを、国際化とローカライズを行って表示するというプロセスを少し楽にするために、Ajax とリソース・バンドルを組み合わせる方法について説明します。 |
|
|
|
2009/01/13 |
|
| |
JavaScript EE: 第 1 回 サーバー・サイドで JavaScript ファイルを実行する JavaScript をサーバーの Java コードと組み合わせて、サーバーとクライアントの両方で同じ JavaScript ルーチンを自由自在に使えるようにしてください。それに加え、この連載で紹介する手法を使えば、Ajax クライアントと Ajax 以外のクライアント両方に共通するコード・ベースを利用することができます。サーバー・サイドのコードの大部分は今でも Java 言語で作成されているため、結局は Java EE (Java Platform, Enterprise Edition) の機能を JavaScript に公開しなければならなくなります。そこで、この連載を通して、サーバー・サイドで JavaScript ファイルを実行してリモート JavaScript 関数を Ajax で呼び出し、Java Scripting API を JSP (JavaServer Pages) 技術で使用する方法を学んでください。 |
|
|
|
2008/12/16 |
|
| |
カスタム Dojo アプリケーションを作成する Web 2.0 および Dojo アプリケーションを開発するときのヒント、手法、そして落とし穴を学んでください。Wendi Nusbickel と Melissa Betancourt は、この記事で文書化している Dojo アプリケーションに長年取り組んできました。最近の Web 2.0 Dojo プロトタイプ開発の完了を期に、二人の著者がカスタム Dojo アプリケーションの作成を通して学んだ経験を読者の皆さんと分かち合います。 |
|
|
|
2008/12/09 |
|
| |
Web 系開発のトレンドを牽引する: IBM ソフトウェア・テクノロジー情報(後編) IBMのエバンジェリストや研究者達が運営するWiki「IBM ソフトウェア・テクノロジー情報」。CodeZineでは、このサイトのオーナーであるIBMソフトウェア・エバンジェリスト米持幸寿氏と、Jazz、 Web2.0セキュリティ、Dojoツールキット、 Groovyといった4種の技術のキーマンたちを取材した。この模様を前編・中編・後編の3回に分けてレポートする。 |
|
|
|
2008/12/05 |
|
| |
Web 系開発のトレンドを牽引する: IBM ソフトウェア・テクノロジー情報(中編) IBMのエバンジェリストや研究者達が運営するWiki「IBM ソフトウェア・テクノロジー情報」。CodeZineでは、このサイトのオーナーであるIBMソフトウェア・エバンジェリスト米持幸寿氏と、Jazz、 Web2.0セキュリティ、Dojoツールキット、 Groovyといった4種の技術のキーマンたちを取材した。この模様を前編・中編・後編の3回に分けてレポートする。 |
|
|
|
2008/11/28 |
|
| |
Ajax 対応の JSP TagLib コントロールを作成する: 第 2 回 自動入力コントロールとフィールド・バリデーター・コントロール ビジネス分野のアプリケーションで使用できる Ajax (Asynchronous JavaScript + XML) コントロールを作成しましょう。この記事で作成する構成可能な JSP (JavaServer Pages) TagLib ベースのコントロールは、JSON (JavaScript Serialized Object Notation)、JavaScript スクリプト言語、そして CSS (Cascading Style Sheets) を利用して作成します。このような標準的な JSP TagLib コントロールを簡単にアプリケーションに組み込んで、より直観的で応答性に優れたインターフェースを提供する方法を学んでください。 |
|
|
|
2008/11/25 |
|
| |
Grails をマスターする: JSON と Ajax による非同期 Grails Web 2.0 開発には、JSON (JavaScript Object Notation) と Ajax (Asynchronous JavaScript + XML) が不可欠です。連載「Grails をマスターする」では今回、Scott Davis がこの Web フレームワークに JSON と Ajax ならではの機能を組み込む方法を紹介します。 |
|
|
|
2008/11/18 |
|
| |
Web系開発のトレンドを牽引する: IBM ソフトウェア・テクノロジー情報(前編) IBMのエバンジェリストや研究者達が運営するWiki「IBM ソフトウェア・テクノロジー情報」。CodeZineでは、このサイトのオーナーであるIBMソフトウェア・エバンジェリスト米持幸寿氏と、Jazz、 Web2.0セキュリティ、Dojoツールキット、 Groovyといった4種の技術のキーマンたちを取材した。この模様を前編・中編・後編の3回に分けてレポートする。 |
|
|
|
2008/11/14 |
|
| |
Wicket: 動的 Web ページの作成およびテスト用の単純化されたフレームワーク Wicket は、動的な Web ベースの UI アプリケーション開発にオブジェクト指向の手法を提供します。Wicket では Pure Java および HTML コードのみが使用されるため、Wicket を利用してアプリケーションを作成すれば、Java プログラミングの知識を生かすことができ、開発時間が大幅に短縮されます。この記事では Wicket の概要を説明するとともに、Wicket を使用して煩わしさのない単純な方法で素早く Web ベースのアプリケーションを作成する方法を説明します。 |
|
|
|
2008/11/04 |
|
| |
jQuery を扱う: 第 3 回 jQuery と Ajax による RIA: 一歩進んだ Web アプリケーションを今すぐ作成する jQuery は、動的な RIA (Rich Internet Application) を容易に作成する方法を求める開発者にとって最適な JavaScript ライブラリーとして人気が高まりつつあります。デスクトップ・アプリケーションに取って代わりブラウザー・ベースのアプリケーションが増え続ける中、こうしたライブラリーを使用する機会も増える一方です。jQuery に注目するこのシリーズの記事では、jQuery について知ると同時に、Web アプリケーション・プロジェクトの中で jQuery を実装する方法について学びます。 |
|
|
|
2008/10/28 |
|
| |
Dojo Objective Harness を利用した Web 2.0 アプリケーションのユニット・テスト 質の高いソフトウェア開発にユニット・テストは欠かせませんが、アジャイル開発とエクストリーム・プログラミングによる開発となると、ユニット・テストが極めて重要な部分となります。これまで Web 2.0 クライアント・サイドのユーザー・インターフェースの自動ユニット・テストは困難で、多くの場合は試みられることもありませんでした。ところが今は、Dojo が提供するユニット・テスト・ハーネスで、JavaScript 機能とユーザー・インターフェースの視覚化の両方を評価することが可能です。このように徹底的にテストされたユーザー・インターフェースでは、最終的に含まれるバグの数が大幅に減ることになります。この記事では、DOH (Dojo Objective Harness) の主要な機能について例を用いて説明し、その優れた機能性をその他の Web 2.0 アプリケーション用テスト・ハーネスと比較します。 |
|
|
|
2008/10/21 |
|
| |
Java 開発者にとっての Dojo の概念 Web ベースのアプリケーションで Dojo がますます使われるようになっています。多くの開発者は Java プログラミングの高いスキルを持っていますが、JavaScript に関しては限られた経験しかありません。彼らは、強い型付けのオブジェクト指向のコンパイラー言語から動的で弱い型付けのスクリプト言語に移行する際の概念の飛躍に悪戦苦闘しているかもしれません。こうした概念の混乱があるため、開発者にとって Dojo クラスを正しく宣言するのが困難になる可能性があります。この記事では、この混乱を整理し、なぜコンテキストを設定することが必要なのか、そしてコンテキストをどう使えばよいかを説明します。 |
|
|
|
2008/10/14 |
|
| |
Tomcat Advanced I/O によるハイパフォーマンス Ajax NIO (Non-Blocking I/O) を利用するとシステム・リソース (スレッド) を効率的に使用できるため、サーバーのパフォーマンスを劇的に改善することができます。特に long-poll メカニズムを持つ Ajax (Asynchronous JavaScript + XML) アプリケーションの場合には、パフォーマンスが改善されるのがはっきりとわかります。また NIO を利用すると、負荷の重いサーバーのシステム・リソースそれぞれの使用量を調整することができます。この記事では、Ajax リクエストを処理する場合と通常のリクエストを処理する場合の両方に関して、サーバーのパフォーマンスを最適化するための方法を説明します。 |
|
|
|
2008/09/30 |
|
| |
JavaScript で作成するモジュール式の対話型ユーザー・インターフェース ドラッグ・アンド・ドロップ機能を使って Web ページのセクションを移動させる手法を学んでください。対話性の異なる側面をそれぞれ個別に実装した後、まとめて 1 つに組み立てることによって、Web ユーザーを大いに満足させられる柔軟なカスタマイズを可能にします。 |
|
|
|
2008/09/23 |
|
| |
単純な WYSIWYG Web ページ・エディターを作成する 事前に作成されたウィジェットを追加したり変更したりすることで Web ページを組み立てることができる、単純な Ajax (Asynchronous JavaScript + XML) システムについて学びましょう。こうした機能は多くのサイトで提供されていますが、ここで紹介する使いやすいシステムを利用すると、皆さん自身のサイトでウィジェットの作成や変更を行うことができ、また新しいウィジェットを作成するための単純なライブラリーを提供することもできます。 |
|
|
|
2008/09/16 |
|
| |
Ajax対応の自動補完コントロール、カスケード・ドロップダウン・コントロールを作成する ビジネス分野のアプリケーションで使用できる Ajax (Asynchronous JavaScript + XML) コントロールを作成しましょう。この記事で作成する構成可能な JSP TagLib ベースのコントロールは、JSON (JavaScript Serialized Object Notation)、JavaScript、そして CSS を利用して作成します。このような標準的な JSP TagLib コントロールをアプリケーションに簡単に組み込んで、より直観的で応答性に優れたユーザー・インターフェースを提供する方法を学んでください。 |
|
|
|
2008/09/09 |
|
| |
XSLT、KML、そして Google Maps API を使って地図上にデータをオーバーレイする: 第 2 回 データを変換し、使用する この 2 回シリーズの記事では不動産仲介業者のためのアプリケーションを作成し、入居可能な部屋の賃貸情報のすべてを、クリック可能な Placemark として Google マップ に表示します。第 1 回では、このアプリケーションの前半として、ユーザーから部屋の賃貸情報を収集し、その住所を Google のジオコーダ Web サービスを使って地理座標 (経度と緯度) に変換し、変換したその座標を住所の情報と共にデータベースに保存する部分を作成しました。第 2 回では、このデータを使って KML オーバーレイ文書を作成し、その文書を Google マップと Google Earth に表示します。最初にストアード・プロシージャーを使って MySQL から XML を作成します。次に XSLT と Muenchian グループ化と呼ばれる手法を使って、オーバーレイ情報 (部屋の賃貸物件がある建物ごとに 1 つの Placemark) を含む KML 文書に XML データを変換します。各 Placemark をクリックするとポップアップ表示されるバルーンには、その建物の中で入居可能な部屋の賃貸情報を表示します。最後に Google Maps API を使って、皆さん自身の Web サイトに埋め込まれた Google マップに KML オーバーレイを表示します。 |
|
|
|
2008/09/09 |
|
| |
PHP を使用して Ajax ベースの Web サイトを作成する ネイティブ JavaScript コードと PHP を使って Ajax (Asynchronous JavaScript + XML) アプリケーションを作成するプロセスを学んでください。この記事では、完全な Ajax ベースの Web アプリケーションを完成させるために必要となるコードの作成量を減らすフレームワークおよび API (Application Program Interface) をいくつか紹介します。 |
|
|
|
2008/09/02 |
|
| |
初の本格的 Ajax サーバー、Aptana Jaxer を使用した Ajax アプリケーションの構築 正真正銘の Ajax (Asynchronous JavaScript + XML) サーバーとして初めて登場した Jaxer について学んでください。Jaxer はサーバー・サイドで JavaScript コード、DOM (Document Object Model)、そして HTML を実行できるようにするだけでなく、クライアント・サイドからサーバー・サイドの関数に非同期でアクセスできるようにします。この記事では Jaxer の機能について説明するとともに、まだ初期段階にある Jaxer にすでに備わっている素晴らしい可能性を紹介します。 |
|
|
|
2008/08/26 |
|
| |
プロのように Ajax アプリケーションを開発する: 第 3 回 DWR、Java、そして Dojo Toolkit を使って Java と JavaScript を統合する Java による Web 開発のためのフレームワークやライブラリー、ツールキットでパッと思いつくものの名前を挙げるとしたら、皆さんはいくつ挙げられるでしょう。世の中にはあまりにも多くの種類があるため、どれがどんなことをし、どれが実際に問題解決の役に立つのかを知ろうとしても種類の多さに圧倒されてしまうかもしれません。しかし Ajax 開発を行うのであれば絶対に知っておく必要があるライブラリーがあります。それが DWR (Direct Web Remoting) です。このライブラリーは Java 言語と Java を使った Web 技術を活用して Ajax 開発を大幅に単純化します。DWR は Ajax をシームレスに Java Web アプリケーションに統合するための標準的な方法となっています。実際、DWR は、よく使われるオープンソースの Ajax 技術を広範に集めた Dojo の基礎の上に構築されています。この記事では、DWR を使用することで Ajax がどれほど容易になるかを説明します。 |
|
|
|
2008/08/05 |
|
| |
Ext JS 入門者の最初の壁 Ext.grid.GridPanel は Ext JS を代表する強力な UI 部品の一つですが、Grid にデータを読み込む仕組みが一見簡単ではないため、Ext JS を利用し始めた人が最初につまづいてしまう壁となっているようです。ここでは、Ext.grid.GridPanel の背後で動作する、Store、Reader、Proxy の 3 つのクラスについての説明を行います。 |
|
|
|
2008/08/01 |
|
| |
容易になった Ajax と Java 開発: 第 4 回 JSP タグ・ファイルを使用して JSF 風のコンポーネントを作成する かつての JSP (JavaServer Pages) と JSF (JavaServer Faces) は、それぞれに異なる EL (Expression Language: 式言語) の変形バージョンを使っていましたが、JSP 2.1 では EL が統一されています。この統一によって新しい可能性が広がり、今では遅延評価される値 (deferred-value 属性) と遅延評価されるメソッド (deferred-method 属性) をカスタム JSP タグで使用できるようになりました。そこで、この記事では JSF コンポーネントを作成するより遥かに単純で簡単な手段として、JSP タグ・ファイルをベースとした Java Web コンポーネントを開発する方法を紹介します。 |
|
|
|
2008/07/29 |
|
| |
Ajax による改良: 第 4 回 jQuery および Ajax フォームで既存のサイトを改良する Ajax の手法は大規模な商用 Web アプリケーションの様相を一変させましたが、規模の小さな多くの Web サイトにはユーザー・インターフェース (UI) をまるごと一晩にしてリビルドするだけのリソースはありません。しかし Ajax による新しい機能を利用すると、実際のインターフェースの問題が解決され、ユーザー・エクスペリエンスも改善されることで、新しい機能にかかるコストが妥当なものであることが証明されるはずです。UI をオープンソースによるクライアント・サイドのライブラリーを使って徐々に最新のものにする方法は、この連載ですでに説明しました。今回の記事では、複数のステップからなる購入プロセスを、Ajax の手法を使って複数の連続したフォームから 1 画面で構成されるインターフェースに変える方法を学んでください。この変換では、Progressive Enhancement (漸進的な機能拡張) の原則を利用して、あらゆる類のユーザー・エージェントが引き続きサイトにアクセスできることを保証します。 |
|
|
|
2008/07/29 |
|
| |
OpenLaszlo: RIA/Ajax にも Write Once Run Anywhere の波 コードネーム Legal, OpenLaszlo v4.1 が 2 年の歳月を経てリリースされました。このバージョンから、OpenLaszlo は DHTML(Ajax) をサポートしました。これまでは、RIA(Flex 等の Flash)や、Ajax を開発するには別々のテクノロジーをマスターしなければならず、プログラマーに多大な負担がかかっていましたが、OpenLaszlo を採用することで、RIA も Ajax もこれひとつで開発できるようになりました。 |
|
|
|
2008/07/25 |
|
| |
容易になった Ajax と Java 開発: 第 3 回 DOM、JavaScript、JSP タグ・ファイルを使って UI 機能を作成する この連載の第 1 回では、Ajax リクエストを送信して Ajax レスポンスを処理する JavaScript コードを生成する方法を説明しました。第 2 回では、セットアップと構成を最小限にするための規則、そして JSP タグ・ファイルを使用して HTML フォームを作成する方法を紹介しました。連載第 3 回となるこの記事で学ぶのは、JavaScript をベースにクライアント・サイド、サーバー・サイドのバリデーターを開発し、それぞれに対応する JavaScript コードをバックアップする JSP タグ・ファイルとして実装する方法です。さらに、アプリケーションを再起動しなくても変更時に自動的にリロードされるリソース・バンドルを使用する方法も説明します。 |
|
|
|
2008/07/22 |
|
| |
Ajax アプリケーションに Flex を統合する 従来型の Ajax 開発は、相変わらず RIA (Rich Internet Application) を作成するための中心的な方法です。しかし Adobe Flex の人気を無視することはできません。この記事では Ajax コンテンツと Flex コンテンツを一貫した方法で容易に統合できるコード・ライブラリーである、Adobe の FABridge (Flex Ajax Bridge) を紹介します。この記事を読み終わると、Flash の資産によって実現されるリッチな機能を利用できるようになります。 |
|
|
|
2008/07/15 |
|
| |
Ajax による改良: 第 3 回 jQuery、Ajax タブ、そしてフォト・カルーセルで既存のサイトを改良する Ajax の手法は大規模な商用 Web アプリケーションの様相を一変させましたが、規模の小さな多くの Web サイトにはユーザー・インターフェース (UI) をまるごと一晩にしてリビルドするだけのリソースはありません。しかし Ajax による新しい機能を利用すると、実際のインターフェースの問題が解決され、ユーザー・エクスペリエンスも改善されることで、新しい機能にかかるコストが妥当なものであることが証明されるはずです。この連載では、オープンソースによるクライアント・サイドのライブラリーを使ってユーザー・インターフェースを徐々に最新のものにする方法を説明しています。今回の記事で説明するのは、表示に時間のかかる煩雑で厄介な製品詳細ページを、DHTML と Ajax によって高速で洗練されたページに変身させる方法です。しかも、Progressive Enhancement (漸進的な機能拡張) の原則に従うことで、あらゆるユーザー・エージェントがサイトにアクセスしたままで変身できることを確実にします。 |
|
|
|
2008/07/08 |
|
| |
Ext JS で作る AJAX アプリケーション Ext JS は数ある JavaScript ライブラリの一つですが、その再利用性の高いオブジェクトおよびUI部品は AJAX アプリケーションの開発を容易にしてくれます。この記事では、Ext JS についての簡単な紹介と、Ext JS の基盤となっている JavaScript によるオブジェクト指向的な設計方法の概要、そして RIA 開発におけるUI 部分への Ext JS フレームワークの適用方法について説明します。 |
|
|
|
2008/07/01 |
|
| |
Active Content Filtering で強化する Project Zero および WebSphere sMash アプリケーションのセキュリティー ACF (Active Content Filtering) を使用して、クロスサイト・スクリプティングをはじめとする一般的な Web 2.0 ベースのアプリケーションに対する攻撃をかわし、Project Zero アプリケーションのセキュリティーを劇的に向上させてください。ACF は Project Zero に含まれる分解可能なコンポーネントで、このコンポーネントが提供するライブラリーでは要求データ (要求パラメーターなど) とクライアントに送信される応答出力からアクティブ・コンテンツを取り除くことができます。この記事を読んで、アクティブ・コンテンツが存在する可能性のある Project Zero の環境に ACF を適用するという強力な手段を身につけてください。 |
|
|
|
2008/06/23 |
|
| |
Ajax のセキュリティー・ツール 悪意のあるハッカーは、Ajax アプリケーションに潜むいくつかの脆弱性をついて、アプリケーションを台無しにしてしまう恐れがあります。個人情報の盗難、保護されていない機密情報へのアクセス、ブラウザーのクラッシュ、Web アプリケーションの改変、DoS (Denial of Service: サービス拒否) の攻撃などは、Ajax アプリケーションに起こり得る惨事のほんの数例です。開発者は、Ajax 機能をアプリケーションに組み込むときに、このような事態を防ぐ対策を立てなければなりません。この記事では developerWorks でお馴染みの著者、Judith Myerson が Firefox のツールやアドオンをはじめとするアプリケーションのセキュリティー強化ツールを提案します。これらのツールを使って、Ajax アプリケーションのセキュリティー問題を軽減、あるいは解決してください。 |
|
|
|
2008/05/27 |
|
| |
容易になった Ajax と Java 開発: 第 2 回 セットアップと構成を最小限にするための規則に従う たいていの Web フレームワークで目標とされるのは、さまざまなアプリケーションのニーズと開発スタイルに対応するために、できる限り柔軟かつ拡張可能にすることです。残念ながら、このような試みが結果的にフレームワークを複雑にし、処理のオーバーヘッド、そして大規模な構成ファイルをもたらす場合がよくあります。この記事では開発と保守を容易に行えるように、JSTL (JSP Standard Tag Library) と JSP タグ・ファイルを使ってデータ・バインディング、ページ・ナビゲーション、スタイル規則を実装する方法を紹介します。また、動的な属性を使ったカスタム JSP タグを作成し、アプリケーションを簡単に素早く変更できるようにする方法も学んでください。さらに記事の最後のセクションには、Ajax を使用して Web フォームをサブミットするサンプルも記載しています。 |
|
|
|
2008/05/20 |
|
| |
Web 2.0 に変身した Plants by WebSphere Plants by WebSphere は、製品管理、ショッピング・カート、購入処理などの商取引機能を実演する IBM WebSphere Application Server の典型的なサンプル Web アプリケーションです。WebSphere Application Server Feature Pack for Web 2.0 がリリースされたことにより、今やユーザーとの対話性のレベルを引き上げ、Web アプリケーションの堅牢性を一層強化し、さらにはデスクトップ・アプリケーションに匹敵する応答性まで実現することが可能になっています。この記事では、Feature Pack for Web 2.0 の技術と手法を用いた UI の設計変更、RESTful な対話動作、さらにコミュニティーとユーザーの参加によって、Plants by WebSphere アプリケーションを Web 2.0 対応に「変身」させる方法を説明します。 |
|
|
|
2008/05/14 |
|
| |
Ajax のパフォーマンス・ツール サーバー・リソースの無駄使いは Ajax アプリケーションに影響を及ぼし、その結果、アプリケーションを機能させるために、過剰な HTTP リクエストが送信されるようになり、メモリー使用量が増加し、さらに異常な量のポーリングが行われることになります。この記事では developerWorks でお馴染みの著者、Judith Myerson が Ajax アプリケーションの改善、あるいは問題の解決に利用できるオープンソースのツールと Firefox のアドオンを紹介します。 |
|
|
|
2008/05/13 |
|
| |
Firebug を使ってオンザフライでアプリケーションをデバッグ、調整する Web ページのロードに、どうしてそんなに時間がかかっているのかわかりますか?今まで HTML をブラウズしながら調査し、編集しようと思ったことはありませんか?CSS をその場で調整しようと思ったことは?この記事では、Firefox ブラウザーを対象とした無料のオープンソース拡張機能、Firebug の使い方を紹介します。便利な開発者向けの機能とツールを豊富に提供する Firebug を使えば、HTML、CSS、JavaScript コード、そしてネットワーク・トラフィックを含め、ライブ・ページをモニター、編集、デバッグすることができます。この記事を読んで、Firebug を使って Web アプリケーションや Ajax アプリケーションのデバッグおよび調整といった作業にかかる時間を短縮する方法を学んでください。 |
|
|
|
2008/05/06 |
|
| |
Ajax による改良: 第 2 回 jQuery と Ajax、そしてツールチップとライトボックスで既存のサイトを改良する Ajax (Asynchronous JavaScript + XML) の手法は大規模な商用 Web アプリケーションの様相を一変させましたが、規模の小さな多くの Web サイトにはユーザー・インターフェース (UI) をまるごと一晩にしてリビルドするだけのリソースはありません。しかし Ajax による新しい機能を利用すると、実際のインターフェースの問題が解決され、ユーザー・エクスペリエンスも改善されることで、新しい機能にかかるコストが妥当なものであることが証明されるはずです。この連載を読んで、皆さんの UI をオープンソースによるクライアント・サイドのライブラリーを使って徐々に最新のものにする方法を学んでください。今回の記事では、単純なライトボックスとツールチップの手法を使うことで、ポップアップ・ウィンドウを使わないようにし、さらにナビゲーションが脇道にそれて先に進まなくならないようにする方法を紹介します。またそれを実現するために、Progressive Enhancement (漸進的な機能拡張) の原則を利用し、高度な UI 機能でもサイトのアクセシビリティーや Web 標準遵守の妨げにならないことを保証します。 |
|
|
|
2008/05/06 |
|
| |
Ajax パフォーマンスの分析 Ajax (Asynchronous JavaScript + XML) が対話性とパフォーマンスに対するユーザーの期待を膨らませ続けているなか、開発者たちはますます Ajax を Web アプリケーションの必須コンポーネントとして扱うようになっています。多くのコードがクライアント・サイドに移されてネットワーク・モデルが変わるにつれ、コミュニティーは Ajax ならではのパフォーマンス問題に対処するためのツールをさらに作成することで対応しています。この記事では、Ajax で強化されたアプリケーションに潜むパフォーマンス問題を見つけ出し、修正するツール・セットについて検討します。 |
|
|
|
2008/04/24 |
|
| |
Project Zero を導入して日本語 PHP アプリケーションを作る この記事では Project Zero を実際に導入して、簡単な日本語 PHP アプリケーションを作って動作確認するまでの手順を紹介します。 |
|
|
|
2008/04/15 |
|
| |
Grails をマスターする: Ajax をほんの少し加えた多対多の関係 Web アプリケーションで多対多 (m:m) の関係を扱うには、さまざまな注意が必要になります。連載「Grails をマスターする」の今回の記事では、Scott Davis が Grails で m:m の関係をうまく実装する方法を説明します。GORM (Grails Object Relational Mapping) API とバックエンド・データベースではこの関係をどのように扱うか、そして Ajax (Asynchronous JavaScript + XML) を少し使うことでユーザー・インターフェースをいかに効率的なインターフェースにできるかを学んでください。 |
|
|
|
2008/04/15 |
|
| |
Google Chart、Ajax、Project Zero、そして WebSphere sMash を使って賢いマッシュアップを作成する Google Chart は、開発者が単純な HTTP GET リクエストを使って図やグラフを生成できるという素晴らしいサービスです。このサービスではすべての機能が HTTP で使用できるようになっているため、Project Zero で作成された Web アプリケーションに簡単に統合することができます。この記事では、厄介な HTTP URL を構成しなくても Google Chart を使用できる Groovy スクリプトを例に、ユーザーが視覚的な方法で図やグラフを作成できる便利な Web インターフェースを作成する方法を実演します。Zero プラットフォームを使うといとも簡単にマッシュアップ・アプリケーションを作成できることを、このサンプル・プロジェクトを試すことで体験してください。 |
|
|
|
2008/03/25 |
|
| |
IBM Web 2.0 Feature Pack を使って Ajax スタイルのアーキテクチャーを作成する この記事では、IBM(R) WebSphere(R) Application Server Feature Pack for Web 2.0 を利用することによって、J2EE (Java(TM) 2 Platform, Enterprise Edition) アプリケーションを Ajax スタイルのアーキテクチャーでどのように強化できるのかを説明します。そして Web アプリケーション全体を再作成することなく、既存のアプリケーションに Ajax スタイルのアーキテクチャーを組み合わせる方法を学びましょう。またこの記事では IBM WebSphere Application Server 用の皆さん自身の J2EE アプリケーションに Web 2.0 Feature Pack を適用する方法についての考え方の一端も学びます。 |
|
|
|
2008/03/18 |
|
| |
Ajax での XML 処理: 第 3 回 JSON を使用し、プロキシーを回避する Ajax スタイルのサーバー呼び出しには、必ずしも XMLHttp リクエストが必要になるとは限りません。この連載の最終回で紹介する天気バッジ・プロジェクトに対する最後の手法では、公開 Web サービス、JSON (JavaScript Object Notation)、そして動的 script タグを使用します。 |
|
|
|
2008/03/18 |
|
| |
HTML、JavaScript、そして Ajax の開発とデバッグに必須のツール 最高のオープンソース・ツールを使って Web ページやスクリプト、スタイルに関する作業を行い、新しいサイトやページの開発を容易にしましょう。また、HTML マークアップや CSS、そして JavaScript の調査や変更を即座に行い、DOM や、クライアント/サーバー間の通信を調べ、ブックマークレットによって開発がどれほど安全で容易になるかを学びましょう。 |
|
|
|
2008/03/11 |
|
| |
Ajax での XML 処理: 第 2 回 Ajax と XSLT を組み合わせた 2 つの手法 この連載の第 2 回では、Mark Pruett が Ajax (Asynchronous JavaScript + XML) による天気バッチの手法をさらに 2 つ紹介します。両方とも XSLT (Extensible Stylesheet Language Transformation) を使用してフォーマットを変換する手法ですが、一方ではサーバー・サイド、もう一方ではブラウザーで XSLT を使用します。 |
|
|
|
2008/03/11 |
|
| |
Ajax と XML: Ajax を使った表 Ajax (Asynchronous JavaScript + XML) の 1 つの強みは、サーバーからのデータをユーザーに対して動的に表示することです。この記事では、表、タブ、グライダー (横方向のスライド) を使用した、Ajax による動的なデータ表示の手法をいくつか説明します。 |
|
|
|
2008/03/11 |
|
| |
Ajax での XML 処理: 第 1 回 4 つの手法 プログラミングの問題を解決する正しい方法は 1 つだけではありません。この連載では、Ajax (Asynchronous JavaScript + XML) による天気バッジを作成する 4 つの手法を取り上げます。このバッジは、どんな Web ページにでも簡単に組み込める再利用可能な小さなウィジェットです。第 1 回目となる今回の記事では、まず基本的な背景を紹介した後、1 番目の手法である DOM ツリーの探索について詳しく検討していきます。 |
|
|
|
2008/03/04 |
|
| |
Ajax による改良: 第 1 回 Ajax と jQuery で既存のサイトを改良する Ajax (Asynchronous JavaScript + XML) で既存のサイトを改良する連載の第 1 回目では、単純なモーダル・ウィンドウを使うことで、ポップアップ・ウィンドウを使わないようにし、さらにナビゲーションが脇道にそれて先に進まなくならないようにする方法を紹介します。 |
|
|
|
2008/03/04 |
|
| |
コメント行: Roland Barcia: Dojo アプリケーションの初期ダウンロード時間を短縮するには Ajax アプリケーションはいったんロードされると、それ以降はページ全体を再レンダリングするというオーバーヘッドを避け、データとコンテンツの小フラグメントを取得することで、パフォーマンスを向上させます。しかし大抵はそうすることによって、アプリケーションの初期ダウンロード時間が長くなってしまいます。この記事では、Dojo アプリケーションの初期ダウンロード時間を短縮すると同時に、素晴らしいパフォーマンスを実現するための方法を検討します。 |
|
|
|
2008/02/27 |
|
| |
Project Zero および WebSphere sMash アプリケーションのセキュリティーを守る: 第 3 回 OpenID を使って Project Zero および WebSphere sMash アプリケーションを保護する アプリケーション・リソースのアクセス制御ベースのセキュリティーは、Project Zero のコア機能のうちの 1 つです。OpenID はインターネット上で分散認証を行うための、オープンソースの新しいセキュリティー技術で、Web コミュニティーではこの技術への関心が次第に高まってきています。Project Zero ではこの新技術を導入し、セキュリティーの一部として提供しています。連載最終回となるこの第 3 回目の記事で、Project Zero Security の詳細、そして OpenID 認証を利用してアプリケーションに対してセキュリティー・ルールを定義し、ユーザー・レジストリーを拡張する方法を学んでください。 |
|
|
|
2008/02/19 |
|
| |
Ajax による読心術アプリケーションを E4X と Prototype を使って作成する: 第 2 回 読心術をレベルアップする この 2 回シリーズの記事では、E4X (ECMAScript for XML) と Prototype JavaScript ライブラリーの両方を使って Ajax による単純な読心術アプリケーション (20 の質問ゲーム) を作成する方法を学び、またその過程で新しいオブジェクトについて学びます。第 1 回ではこのアプリケーションのシステムを作成する方法を学びました。このシステムは既存のナレッジ・ベースを分析し、ユーザーが何を考えているかを判断します。この第 2 回では、ナレッジ・ベースに新しい情報を追加する方法と、Prototype JavaScript ライブラリーを使って Twenty Questions アプリケーションを外部のデータベースと統合する方法を学びます。こうすることで、1 人のユーザーがトレーニングした結果を、このゲームで遊ぶ他のユーザーが利用できるようにします。 |
|
|
|
2008/02/19 |
|
| |
JSF と CSS、JavaScript を使用して作成する Ajax アプリケーション: 第 2 回 動的な JSF フォーム この 2 回連載の第 1 回目の記事では、Java 開発者である著者、Andrei Cioroianu が JSF (JavaServer Faces) コンポーネントのスタイル属性を使用し、これらの属性にデフォルト値を設定する方法を紹介しました。2 回目となるこの記事では、標準 JSF コンポーネントが持つ JavaScript 関連の属性を使用する方法を取り上げます。DOM (Document Object Model) API、JavaScript、そして CSS (Cascading Style Sheets) をベースとしたいくつかの Web テクニックを学んでださい。また、Web ページを更新しないで、オプションの JSF コンポーネントを非表示にしたり表示したりする方法、Web ブラウザーで実行されるクライアント・サイドの検証を実装する方法、さらに Web フォームの入力要素に関するヘルプ・メッセージを表示するカスタム・コンポーネントを開発する方法を紹介します。 |
|
|
|
2008/02/12 |
|
| |
Ajax による読心術アプリケーションを E4X と Prototype を使って作成する: 第 1 回 20 の質問 のインフラを作成する XML は Ajax データを渡すための自然なフォーマットのように思えます。しかし、DOM (Document Object Model) を使って JavaScript で XML を扱う方法は、Ajax データなどを扱う上では必ずしも最善の方法ではありません。そのため、開発者がもっとオブジェクトらしい感覚で扱える、JSON など他の選択肢が出てきます。一方、E4X (ECMAScript for XML) は、非常に容易なデータ・バインディングと DOM が持つ最高の機能の多くとを併せ持っているため、ブラウザーで XML を簡単に処理することができます。この 2 回シリーズの記事では、E4X と Prototype JavaScript ライブラリーの両方を使って Ajax による単純な読心術アプリケーション (20 の質問ゲーム) を作成する方法を学び、またその過程で新しいオブジェクトについて学びます。第 1 回では、ユーザーが考えているものを判断するシステムの作成方法について説明します。このシステムでは、既存のナレッジ・ベースを分析し、考えているものを判断します。 |
|
|
|
2008/02/12 |
|
| |
Project Zero および WebSphere sMash アプリケーションのセキュリティーを守る: 第 2 回 LDAP を使用した認証と許可 アプリケーション・リソースのアクセス制御ベースのセキュリティーは、Project Zero のコア機能のうちの 1 つです。Project Zero Security の開発者たちは徹底的に単純化することを念頭に、セキュリティーを素早く簡単に実現できるように努めました。3 回連載の第 2 回目となるこの記事では、Project Zero Security の詳細を掘り下げ、ユーザー・レジストリーを作成する方法、アプリケーションにセキュリティー・ルールを定義する方法、そして LDAP ユーザー・レジストリーを利用する方法を説明します。 |
|
|
|
2008/02/05 |
|
| |
JSF と CSS、JavaScript を使用して作成する Ajax アプリケーション: 第 1 回 JSF ページの外観を整える 一般的な Web アプリケーションには、カスケーディング・スタイル・シート (CSS) と JavaScript を JSF (JavaServer Faces) などのサーバー・サイド・フレームワークと一緒に使用する必要があります。CSS によって Ajax やその他のアプリケーション内での Web コンポーネントの視覚的特徴を変更し、見た目のよい独特の外観にすることができるからです。この 2 回連載記事の第 1 回目では、標準 JSF コンポーネントが持つ CSS 関連の属性を利用する方法を説明します。さらに、ネストされたコンポーネントのデフォルト・スタイルを設定するカスタム JSF コンポーネントを作成する方法も学びます。この方法を使えば、Web アプリケーションのすべてのページを統一された外観にするのが非常に簡単になるだけでなく、他のコンポーネントの属性をプログラムによって設定することも可能になります。続く第 2 回目の記事では、JavaScript を使って JSF フォームを一層動的にする方法を紹介します。 |
|
|
|
2008/01/29 |
|
| |
PHP で作成するカスタマイズ可能な RSS フィード・アグリゲーター RSS (Rich Site Summary、RDF Site Summary、あるいは Really Simple Syndication) が登場したのは 1990年代中頃です。それ以来、RSS 形式にはいくつかの変形が生まれ、その所有権をめぐる論争も起きました。しかし形はどうであれ、1 つの Web サイトから多数の Web サイトに Web コンテンツを配信する際に RSS が役立つことには変わりありません。RSS の人気はフィード・リーダー、あるいはフィード・アグリゲーターとも呼ばれる新しい種類の Web ソフトウェアの成長を可能にしました。市販のフィード・アグリゲーターはいくつかあるものの、自分なりのフィード・アグリゲーターを作成して自分の Web アプリケーションに統合するのも簡単です。フィード・アグリゲーターを独自に作成する際には、この記事で紹介する十分機能的な PHP コード・スニペットが役に立つはずです。このコードは、PHP をベースとしたサーバー・サイドの関数を使ってカスタマイズ可能な RSS フィード・アグリゲーターを開発する実例となります。さらに、記事に付属の RSS フィード・アグリゲーター・コードの完全版をダウンロードして、そのまま利用することもできます。 |
|
|
|
2008/01/22 |
|
| |
Ajax と XML: フォームのための Ajax HTML フォームをサーバーへの Ajax コールバックで拡張するという方法は、アプリケーションに Web 2.0 機能を追加するための実用的な方法です。この記事では、Ajax コードを追加して PHP アプリケーションのユーザー・エクスペリエンスを向上させる数々の手法を紹介します。 |
|
|
|
2008/01/22 |
|
| |
jpa2web を使って Ajax J2EE Web アプリケーションを生成する 新しいオープンソース・ツール、jpa2web を学び、試し、そしてこのツールに貢献しましょう。jpa2web は JPA アノテーション付きの Bean から J2EE Ajax ベースの Web アプリケーションを生成します。ZK フレームワークを利用してこのツールで生成されたアプリケーションでは、使いやすい Ajax ベースの Web ユーザー・インターフェースをとおして、データベースに同期されたオブジェクトのインスタンスの追加、削除、検索、修正、さらにはそのインスタンス間の相互接続をすることができます。 |
|
|
|
2008/01/15 |
|
| |
堅実な Ajax アプリケーション: 第 2 回 Ajax のバックエンドを作成する バックエンドの処理、つまりサーバー・サイドのスクリプトとプログラムは、必ずしも Ajax アプリケーションの中に組み込んでおけば適切に動作するとは限りません。むしろ、適切かつ効率的な形式でデータが送信されるように注意深く計画することで、アプリケーション全体を必要以上に複雑なものにせず、1 つにまとまったものにすることができるようになります。今回は Brett McLaughlin が、適切なサーバー・サイド・スクリプトによって Ajax の動作を補完できることを説明します。 |
|
|
|
2008/01/15 |
|
| |
Project Zero のデータ・アクセス API 使って作成する単純なウィキ Project Zero は、サービス指向アーキテクチャー (SOA) に準拠した Web 2.0 アプリケーションのアジャイル開発を焦点として単純化された開発プラットフォームです。そんな Project Zero が武器とするライブラリーのなかに、SQL クエリーを実行するための簡易 API があります。この記事では、これらの API を利用して単純なウィキを作成する方法を説明します。 |
|
|
|
2008/01/08 |
|
| |
Web アプリケーションのクロスブラウザー・テストを容易に行う 「複数のブラウザーでのテスト」は、テスト対象となるブラウザーが複数になって以来、お題目のように唱えられてきました。すべてのブラウザーに対してテストすることは、(特に最近では) 不可能です。しかし、皆さんが考えるよりももっとその状態に近づけることができるのです。この記事では、クロスブラウザーのテストを行うためのさまざまな手法を、非常に完璧なものから間に合わせのものまで含めて学びます。どの手法を選ぶかはお持ちのリソース次第で変わってきますが、無視することのできない重要な問題です。 |
|
|
|
2007/12/18 |
|
| |