SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

japan.internet.com翻訳記事

JWLフレームワークでのAJAXコンポーネントの実装

3つの演習で実装、AJAXコンポーネント

ダウンロード サンプルソース (12.0 KB)

AJAXタグの定義(3) ―外部コンテンツの取得―

外部コンテンツの取得: <hx:ajaxExternalRequest>

 <hx:ajaxExternalRequest>では、親タグのコンテンツを別のページのコンテンツで置き換える方法を定義します。置き換えるためのコンテンツはHTTPGETメソッドで取得します。このタグは1つのJSPを他のJSPのコンテンツに組み込みたいときに役に立ちます。

 このタグの使い方を、順を追って見ていきましょう。

  1. [File]→[New]→[Other]→[Web]→[Web Page]をクリックし、新規JSFページ「ajaxExternalRequestExample.jsp」を作成します。
  2. 図17 ajaxExternalRequestExample.jspページの新規作成
    図17 ajaxExternalRequestExample.jspページの新規作成
  3. [File]→[New]→[Other]→[Web]→[Web Page]をクリックし、新規JSFページ「externalPage.jsp」を作成します。ページ内に「External Page is Loaded!」と入力します。
  4. Sourceモードで「ajaxExternalRequestExample.jsp」を開きます。
  5. [Palette]ペインで、[Enhanced Faces Components]をクリックします(Webパースペクティブにいることを確認してください)。
  6. 図18 [Palette]ペインの画面
    図18 [Palette]ペインの画面
  7. Panel Groupコンポーネントをパレットからページにドラッグ&ドロップします。
  8. Text Outputコンポーネントをパレットから手順5で追加したパネルにドラッグ&ドロップします。コンポーネントの値を「External Page will be loaded here.」に設定します。
  9. Panel Groupを選択し、[Properties]→[AJAX]をクリックします。[Allow Ajax Updates]をクリックして、Ajaxリクエストを[External]に設定します。
  10. 図19 AJAXプロパティの画面
    図19 AJAXプロパティの画面
  11. 手順7で追加した<hx:ajaxExternalRequest>タグをクリックし、さらに[Properties]をクリックしてください。URLフィールドに「externalPage.faces」と入力します。
  12. 図20 AjaxExternalRequestのプロパティ
    図20 AjaxExternalRequestのプロパティ
  13. サーバー上でこのページを実行してみましょう(Websphere 6.1以上で実行していることを確認してください)。
  14. コードが正しく動作するかどうかをテストしてください。
  15. 図21 AjaxExternalRequestサンプルの出力結果
    図21 AjaxExternalRequestサンプルの出力結果

 リスト8は、ここまで作成してきたサンプルの全ソースコードです。全体のソースコードはこの記事のダウンロードサンプルにも収録されています。

リスト8 AjaxExternalRequestの全ソースコード
<f:view>
   <body>
   <hx:scriptCollector id="scriptCollector1">
      <h:form id="form1" styleClass="form">

      <hx:commandExButton type="submit"
                          value="Submit"
                          id="button1"
                          styleClass="commandExButton">
         <hx:behavior event="onclick"
                      behaviorAction="get;stop"
                      targetAction="group1">
         </hx:behavior>
      </hx:commandExButton>
      <h:panelGroup id="group1" styleClass="panelGroup">
         <h:outputText id="text2"
                       styleClass="outputText"
                       value="External Page will be loaded here!">
         </h:outputText>
      </h:panelGroup>
         <hx:ajaxExternalRequest id="ajaxExternalRequest1"
                                 target="group1"
                                 href="externalPage.faces"
                                 source="group1">
         </hx:ajaxExternalRequest>
      </h:form>
   </hx:scriptCollector>
   </body>
</f:view>

参考

 AJAXのコンポーネント(WebSphere Information Center)

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
japan.internet.com翻訳記事連載記事一覧

もっと読む

この記事の著者

japan.internet.com(ジャパンインターネットコム)

japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.comEarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

Aleksey Shevchenko(Aleksey Shevchenko)

オブジェクト指向言語に関わる仕事に8年間従事。過去4年間は、技術リーダー、プロジェクトマネージャを務める。金融、メーカー、出版の各業界にエンタープライズITソリューションを提供。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/2523 2008/06/04 12:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー