Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

XpagesDay 2014 [A-2] スタンダードクライアントで xpages を使ってみよう

2,388 views

Published on

XPagesDay 2014
【A-2】ノーツスタンダードクライアントで、XPagesを使ってみよう

Published in: Software
  • Be the first to comment

XpagesDay 2014 [A-2] スタンダードクライアントで xpages を使ってみよう

  1. 1. 【A-2】ノーツスタンダードクライアントで、 XPagesを使ってみよう 株式会社ソルクシーズ 吉田武司
  2. 2. 自己紹介 株式会社ソルクシーズ 吉田武司 –developerWorks: 一週間で学ぶXPages開発入門(初級編) http://www.ibm.com/developerworks/jp/lotus/education/xpages-1week/ –その他 •簡易ワークフロー http://goo.gl/EPqih5 •その他サンプルプログラム(掲示板など) https://www.ibm.com/developerworks/community/files/app? lang=ja#/person/270002CF31 –弊社情報サイト「菜緒さんの企画ノート」でグルー プウェアについて執筆 http://naosan.info/
  3. 3. XPagesの活躍できるケース
  4. 4. XPagesの活躍できるケース •ノーツのWeb化 –旧来の技術だけでは基本的に古いデザインとなる。 –今どきの新しいUI、インターフェースで開発できる。 •モバイル対応 –画面サイズの関係から旧来のデザインでは使いにくい。 –モバイル用のコントロールなどを活用することで開発効率が上がる。
  5. 5. まだまだ知名度、普及率は低い?(1) 技術的な問題 ・昔より情報は増えてきた がまだまだ少ない ・技術者が少ない コミュニティーの活用 ・テクてく技術者夜会 ・qA9 for ICS(Lotus) Developers ・XPagesDayなどのイベ ント
  6. 6. まだまだ知名度、普及率は低い?(2) モバイル利用環境や ポリシーの問題 ポリシーや費用の問題が あり、なかなか進まない ・セキュリティーポリシーの 改定 ・インフラ整備
  7. 7. XPagesの活躍できるケース 他にはないの?
  8. 8. あります! XPagesはブラウザだけではなく、 ノーツスタンダードクライアントでも動きます OK OK ブラウザ ノーツスタンダードクライアント
  9. 9. スタンダードクライアントのおさらい •基本的な機能は、ベーシック版と同じ。それにプラスαされています •利点 –メールやカレンダーのUI、機能の違い –サイドバーやコンポジットアプリケーションが使える •欠点 –最近のPCであれば問題はないですが、要求スペック(特にメモリ)が高め –重い •スタンダードクライアントを利用しているユーザー様も多いと思います
  10. 10. XPagesが活躍できるケース •ノーツクライアント上で、XPages標準の様々なコントロールに 加えて、Dojo やjQuery、その他のライブラリも利用可能! •既存のノーツクライアントでは実現できなかった機能が開発で きる。拡張的な意味あいで利用してみては? •この技術(XPinC:XPagesin Notes Client)のおかげで XPagesがスタンダードクライアントで使えるようになりました。 (Notes 8.5.1 以降) ※読み方はエックスピンク?ナンカ、イイヒビキデスヨネ
  11. 11. XPinCの利用イメージ
  12. 12. XPinCを利用する利点(1) •従来のノーツアプリケーションでは 実装が難しかった表現が可能 –グラフ –地図の表示などの社内/社外のWeb サービスの利用 –タイムライン –スライドバーやツリー構造などのUI –動きのあるデザイン –タブレット対応(タッチ)? Dojo Chart の例
  13. 13. XPinCを利用する利点(2) •これらを組み合わせれば、 Welcome ページよりもリッチな ポータルも作成可能 Dojo ウィジェットの例
  14. 14. クライアントでのイメージ グラフ ポータル タイムライン風 お知らせ
  15. 15. Demo
  16. 16. 例:ポータル
  17. 17. グラフ
  18. 18. DataGrid
  19. 19. 表示する期間を動的に変更できるグラフ
  20. 20. 一定周期でグラフを描画
  21. 21. • スモールスタート – 単体のアプリケーションから始められる – すべてのアプリケーションをWeb 化するところからはじめなくてもよいので XPages を小さく始めるには最適 XPinC を利用する利点(2) XPages 最初は1DBからでもOK! こんなに たくさんは大変だ! 助けて〜 1DBなら なんとかなりそう
  22. 22. XPinCを利用する際の注意点 •UI がWeb ベース。ノーツクライアントとは違うのでユーザー が混乱しないようなUI を意識する必要があり。 •開発対象とするアプリケーションの選定も重要 –ボタンのデザインや配置がノーツクライアントと違い過ぎないように 注意 –編集した文書を保存せずに閉じようとした時に警告が通知されない –右ダブルクリックで閉じられない
  23. 23. XPinCの技術的な話
  24. 24. Web ブラウザからアクセスする場合 ブラウザ Web Container Xpages Runtime NSF 設計要素 DominoServer
  25. 25. G XPagesin the Notes Client の場合 ブラウザ Web Container Xpages Runtime NSF 設計要素 DominoServer Notes Client ローカル NSF 設計要素 オフラインでも ローカルで 利用可能 内部的にはローカルで動作
  26. 26. XPagesin the Notes Client の場合(補足) •Domino 9 ではデータベースプロパティの「起動」タブにサーバー上で動かすオプ ションがつきました。 「サーバーベースのXpages アプリケーションをサーバー上で直接…」
  27. 27. XPinCで動かすために必要なことは? •面倒な設定が必要なの? 簡単です!ノーツDBのアプリケーションプロパティの「起動」タブで「指 定されたXPagesを開く(標準クライアント)」を設定するだけ!!
  28. 28. 開発の注意点 •内部で動いているブラウザの違いを意識する必要あり •Firefox 系のXURunnerで動いている •ブラウザでプレビューしている時とは、違うブラウザで動いて いる •私はFirefox を基本に動作確認して、最終的にXPinCでの 動作を確認する手順で開発しています
  29. 29. 認証の違い •認証/セキュリティ –Web ブラウザからアクセスする場合 •通常のDomino Web アプリケーションと同様に認証画面が表示される –XPinCでアクセスする場合 •ノーツクライアントにログインしているユーザーIDでXpages にアクセスする •操作制御リスト(ECL)も働く •セッションタイムアウトなどを特に意識する必要がないので楽?
  30. 30. XPinCの小ネタ
  31. 31. Web とXPinCの違いを判定したい場合 •@ClientTypeを使う方法 •<xp:XXXXX.rcp> タグを使う方法 if (@ClientType() == “Notes”) { // Notes クライアントの場合の処理 } else if ( @ClientType() == “Web”) { // Web クライアントの場合の処理 } <xp:labelvalue="Web ブラウザ" id="label1" rendered="true"> <xp:label.rcpvalue="Notes クライアント" rendered="true"></xp:label.rcp> </xp:label>
  32. 32. 編集した文書を保存せずに閉じようとした時に ダイアログで通知する •XPagesのすべてのプロパティ –enableModifiedFlag •True をセットしておくと、ページを閉じたり、遷 移する時に入力値が変更されていれば、ダイア ログで通知してくれる –modifiedControl •保存する時に実行されるように関連付けるコン トロールを指定(例:保存ボタン) –modifiedMessage •ダイアログに表示するメッセージ •但し、ノーツクライアントではデフォルトのメッ セージが表示される?ようだ
  33. 33. 編集した文書を保存せずに閉じようとした時に ダイアログで通知する •enableModifiedFlagプロパティを有効にしておくと画面を閉じたり、遷 移しようとするとダイアログで通知される •編集したフィールドから一度”移動しないと”働かないので注意 •シンプルアクションのページを開くでは働かない
  34. 34. Esc キーで閉じるのを防ぎたい •onClientLoadイベントでEsc キーを検知してブロックする –DontPanic-a blog about Lotus Notes / Domino http://goo.gl/Rikd2Z dojo.addOnLoad( function(){ dojo.connect( document, 'keydown', function(e){ // 27 -> Key code for ESC -> stop event if(e.keyCode=== 27){ alert("ESC キーは無効です。"); dojo.stopEvent(e); } }); });
  35. 35. ノーツアプリケーションを開きたい場合 •Notes:// で始まるURL を利用 例: Notes://domino1/49257D150019584C/BorderFrame?OpenFrameset&view=B8639AE93C74170B482572DD002BD737 [アドレス] ツールバーを表示 リンクしたいノーツアプリケーションを 開いて、表示されるアドレスをコピー
  36. 36. まとめ
  37. 37. •ノーツクライアントの表現方法を広げる技術です。アイデア次第 でいろいろできます。面白いアイデアがあったら教えてくださ い!! •スタンダードクライアントを利用している方はもし機会があれば 利用の検討をしてみてはどうでしょうか? •ベーシッククライアントのユーザー様はスタンダートクライアント にする利点の一つとしてみてください。XPages以外にもサイド バーなど便利な機能が増えます。個人的にはカレンダーの オーバーレイが便利です。私はノーツのスケジュールとgoogle のカレンダーを同時に表示して使っています。
  38. 38. 参考文献 •developerWorks –IBM Lotus Notes/Domino 8.5.1 におけるXPages新機能 http://www.ibm.com/developerworks/jp/ysl/library/lotus/y-lot-xpages851newfunction/ •IBM Notes and Domino Application Development wiki –XPagesin the Notes Client -Securityhttp://www-10.lotus.com/ldd/ddwiki.nsf/dx/XPages_in_the_Notes_Client-Security •CodeZine –「Dojo道場」~実用アプリ構築のためのベストプラクティス http://codezine.jp/article/corner/397
  39. 39. Q&A
  40. 40. ご清聴ありがとうございました!

×