狠狠撸

狠狠撸Share a Scribd company logo
【A-2】ノーツスタンダードクライアントで、 XPagesを使ってみよう 
株式会社ソルクシーズ 
吉田武司
自己紹介 
株式会社ソルクシーズ 
吉田武司 
–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/
齿笔补驳别蝉の活跃できるケース
齿笔补驳别蝉の活跃できるケース 
?ノーツのWeb化 
–旧来の技術だけでは基本的に古いデザインとなる。 
–今どきの新しいUI、インターフェースで開発できる。 
?モバイル対応 
–画面サイズの関係から旧来のデザインでは使いにくい。 
–モバイル用のコントロールなどを活用することで開発効率が上がる。
まだまだ知名度、普及率は低い?(1) 
技術的な問題 
?昔より情報は増えてきた がまだまだ少ない 
?技術者が少ない 
コミュニティーの活用 
?テクてく技術者夜会 
?qA9 for ICS(Lotus) Developers 
?XPagesDayなどのイベ ント
まだまだ知名度、普及率は低い?(2) 
モバイル利用環境や 
ポリシーの問題 
ポリシーや費用の問題が あり、なかなか進まない 
?セキュリティーポリシーの 改定 
?インフラ整備
齿笔补驳别蝉の活跃できるケース 
他にはないの?
あります! 
XPagesはブラウザだけではなく、 
ノーツスタンダードクライアントでも動きます 
OK 
OK 
ブラウザ 
ノーツスタンダードクライアント
スタンダードクライアントのおさらい 
?基本的な機能は、ベーシック版と同じ。それにプラスαされています 
?利点 
–メールやカレンダーのUI、機能の違い 
–サイドバーやコンポジットアプリケーションが使える 
?欠点 
–最近のPCであれば問題はないですが、要求スペック(特にメモリ)が高め 
–重い 
?スタンダードクライアントを利用しているユーザー様も多いと思います
XPagesが活躍できるケース 
?ノーツクライアント上で、XPages標準の様々なコントロールに 加えて、Dojo やjQuery、その他のライブラリも利用可能! 
?既存のノーツクライアントでは実現できなかった機能が開発で きる。拡張的な意味あいで利用してみては? 
?この技術(XPinC:XPagesin Notes Client)のおかげで XPagesがスタンダードクライアントで使えるようになりました。 (Notes 8.5.1 以降) 
※読み方はエックスピンク????、???????????
齿笔颈苍颁の利用イメージ
XPinCを利用する利点(1) 
?従来のノーツアプリケーションでは 実装が難しかった表現が可能 
–グラフ 
–地図の表示などの社内/社外のWeb サービスの利用 
–タイムライン 
–スライドバーやツリー構造などのUI 
–動きのあるデザイン 
–タブレット対応(タッチ)? 
Dojo Chart の例
XPinCを利用する利点(2) 
?これらを組み合わせれば、 Welcome ページよりもリッチな ポータルも作成可能 
Dojo ウィジェットの例
クライアントでのイメージ 
グラフ 
ポータル 
タイムライン風 
お知らせ
Demo
例:ポータル
グラフ
DataGrid
表示する期间を动的に変更できるグラフ
一定周期でグラフを描画
? スモールスタート 
– 単体のアプリケーションから始められる 
– すべてのアプリケーションをWeb 化するところからはじめなくてもよいので 
XPages を小さく始めるには最適 
XPinC を利用する利点(2) 
XPages 
最初は1DBからでもOK! 
こんなに 
たくさんは大変だ! 
助けて? 
1DBなら 
なんとかなりそう
XPinCを利用する際の注意点 
?UI がWeb ベース。ノーツクライアントとは違うのでユーザー が混乱しないようなUI を意識する必要があり。 
?開発対象とするアプリケーションの選定も重要 
–ボタンのデザインや配置がノーツクライアントと違い過ぎないように 注意 
–編集した文書を保存せずに閉じようとした時に警告が通知されない 
–右ダブルクリックで閉じられない
齿笔颈苍颁の技术的な话
Web ブラウザからアクセスする場合 
ブラウザ 
Web Container 
Xpages Runtime 
NSF 
設計要素 
DominoServer
G 
XPagesin the Notes Client の場合 
ブラウザ 
Web Container 
Xpages Runtime 
NSF 
設計要素 
DominoServer 
Notes Client 
ローカル 
NSF 
設計要素 
オフラインでも 
ローカルで 
利用可能 
内部的にはローカルで動作
XPagesin the Notes Client の場合(補足) 
?Domino 9 ではデータベースプロパティの「起動」タブにサーバー上で動かすオプ ションがつきました。 
「サーバーベースのXpages アプリケーションをサーバー上で直接…」
XPinCで動かすために必要なことは? 
?面倒な設定が必要なの? 
簡単です!ノーツDBのアプリケーションプロパティの「起動」タブで「指 定された齿笔补驳别蝉を开く(标準クライアント)」を设定するだけ!!
開発の注意点 
?内部で動いているブラウザの違いを意識する必要あり 
?Firefox 系のXURunnerで動いている 
?ブラウザでプレビューしている時とは、違うブラウザで動いて いる 
?私はFirefox を基本に動作確認して、最終的にXPinCでの 動作を確認する手順で開発しています
認証の違い 
?認証/セキュリティ 
–Web ブラウザからアクセスする場合 
?通常のDomino Web アプリケーションと同様に認証画面が表示される 
–XPinCでアクセスする場合 
?ノーツクライアントにログインしているユーザーIDでXpages にアクセスする 
?操作制御リスト(ECL)も働く 
?セッションタイムアウトなどを特に意識する必要がないので楽?
齿笔颈苍颁の小ネタ
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>
編集した文書を保存せずに閉じようとした時に ダイアログで通知する 
?XPagesのすべてのプロパティ 
–enableModifiedFlag 
?True をセットしておくと、ページを閉じたり、遷 移する時に入力値が変更されていれば、ダイア ログで通知してくれる 
–modifiedControl 
?保存する時に実行されるように関連付けるコン トロールを指定(例:保存ボタン) 
–modifiedMessage 
?ダイアログに表示するメッセージ 
?但し、ノーツクライアントではデフォルトのメッ セージが表示される?ようだ
編集した文書を保存せずに閉じようとした時に ダイアログで通知する 
?enableModifiedFlagプロパティを有効にしておくと画面を閉じたり、遷 移しようとするとダイアログで通知される 
?編集したフィールドから一度”移動しないと”働かないので注意 
?シンプルアクションのページを開くでは働かない
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); 
} 
}); 
});
ノーツアプリケーションを開きたい場合 
?Notes:// で始まるURL を利用 
例: 
Notes://domino1/49257D150019584C/BorderFrame?OpenFrameset&view=B8639AE93C74170B482572DD002BD737 
[アドレス] ツールバーを表示 
リンクしたいノーツアプリケーションを 開いて、表示されるアドレスをコピー
まとめ
?ノーツクライアントの表現方法を広げる技術です。アイデア次第 でいろいろできます。面白いアイデアがあったら教えてくださ い!! 
?スタンダードクライアントを利用している方はもし機会があれば 利用の検討をしてみてはどうでしょうか? 
?ベーシッククライアントのユーザー様はスタンダートクライアント にする利点の一つとしてみてください。XPages以外にもサイド バーなど便利な機能が増えます。個人的にはカレンダーの オーバーレイが便利です。私はノーツのスケジュールとgoogle のカレンダーを同時に表示して使っています。
参考文献 
?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
Q&A
ご清聴ありがとうございました!

More Related Content

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