A-1

チームスタジオジャパン㈱
加藤 満
@katoman
Agenda

XPages概要

Domino
Designer

XPagesの
コントロール

実践
XPages概要

開発言語

Dojo ToolKit

CKEditor
XPages概要

開発言語

Dojo ToolKit

CKEditor
• テクノロジー概要
– JSFをベースのテクノロジー
– Web2.0ライクなアプリケーション
• Web、XPiNC(Standard版クライアント)

– オープンな技術の実装
– Social/Mobile 開発プラットフォーム
http://ja.wikipedia.org/wiki/XPages
– ノーツアプリケーションでは実現できないこ
とも
• 複数データベースの情報をひとつのページに集約
• ページの一部を部分更新(Ajaxがビルトイン)
XPages概要

開発言語

Dojo ToolKit

CKEditor
• XML
• HTML
• JavaScript
– サーバーサイドJavaScript
• @Functions

– クライアントサイドJavaScript

• CSS
この辺の技術はこのセッションで詳しく網羅するはず。
【B-3】XPages開発を始めるNotes技術者のためのWeb技術概論
LotusScript

SSJS

• クラス

• Domino ライブラ
リー
• XSP ライブラリー
• Notesの@関数をエミュレート
– 関数名の大文字小文字を区別
– パラメーターはセミコロンではなくカンマ
@DbName の例

var database = @Subset(@DbName(), -1);
var server = @Name("[CN]", @Subset(@DbName(),
1));
return database + " on " + server
@Abs
@Abstract
@Adjust
@AttachmentLengths
@AttachmentModifiedTimes
@AttachmentNames
@Attachments
@Author
@Begins
@Char
@ClientType
@Contains
@Count
@Created
@Date
@Day
@DbColumn
@DbLookup
@DbName
@DbTitle
@Do
@Element
@Elements
@Ends
@Error
@Explode
@Failure
@False
@GetField
@Hour
@If
@Implode
@Integer
@IsAvailable
@IsDocBeingLoaded
@IsDocBeingSaved

@IsError
@IsMember
@IsNewDoc
@IsNotMember
@IsNull
@IsNumber
@IsResponseDoc
@IsText
@IsTime
@IsUnavailable
@Left
@LeftBack
@Length
@List
@LowerCase
@Max
@Member
@Middle
@MiddleBack
@Min
@Minute
@Modulo
@Month
@Name
@NewLine
@No
@Now
@Null
@ProperCase
@Random
@Repeat
@Replace
@ReplaceSubstring
@ReplicaID
@Return

@Right
@RightBack
@Round
@Second
@Select
@SetField
@Subset
@Success
@Sum
@Text
@TextToNumber
@TextToTime
@Time
@Today
@Tomorrow
@Trim
@True
@Unique
@UpperCase
@UserName
@Weekday
@Word
@Year
@Yes
@Yesterday

サポートしない@関数はこちら
http://www10.lotus.com/ldd/ddwiki.nsf/dx/List_of_Formula_Not
_Supported_In_XPages
XPages概要

開発言語

Dojo ToolKit

CKEditor
• 標準コントロール
• Dojo ウィジェット実装
• Dojo のバージョン
http://dojotoolkit.org/
– 8.5.0 == 1.1.1
– 8.5.1 == 1.3.2
– 8.5.2 == 1.4.3
– 8.5.3 == 1.6.1
– 9.0 == 1.8
詳しく知りたい方は
【B-4】Dojo 徹底解剖! ~ XPages で Dojo を有効活用するには? ~
XPages概要

開発言語

Dojo ToolKit

CKEditor
http://ckeditor.com/
• 8.5.2 == 3.2.1.6
• 8.5.3 == 3.5.3
• 9.0 == 3.6.4
Domino Designer

設計要素

各種パネル
Domino Designer

設計要素

各種パネル
• XPage
• カスタムコントロール
• スクリプトライブラリー
– SSJS
– JavaScript

• リソース
–
–
–
–

ファイル
スタイルシート
イメージ
テーマ
Domino Designer

設計要素

各種パネル
① アプリケーション
② アウトライン
③ エディター
– 設計
– ソース

④
⑤
⑥
⑦
⑧

コントロール
データ
プロパティタブ
イベントタブ
パッケージ・エクスプローラー
XPagesのコントロール

コア

コンテナ

コントロール

コントロール

カスタム

Extension Library
コントロール

コントロール
• コアコントロール
• コンテナコントロール
• カスタムコントロール
• Extension Library コントロール
XPagesのコントロール

コア

コンテナ

コントロール

コントロール

カスタム

Extension Library
コントロール

コントロール
• ノーツフィールドLikeなコントロール
–
–
–
–
–
–
–
–

編集ボックス
リッチテキスト
複数行編集ボックス
リストボックス
コンボボックス
チェックボタン(グループ)
ラジオボタン(グループ)
日付ピッカー

– 計算結果フィールド
• ノーツフィールド以外
– ラベル
– ボタン
– リンク
– イメージ
– ファイルのアップロード/ダウンロード
– エラー表示
– 複数エラー表示
– ページャ
• 特殊
– 改行
– 出力スクリプト
– 非表示の入力
– 編集可能領域 (カスタムコントロールのみ)
XPagesのコントロール

コア

コンテナ

コントロール

コントロール

カスタム

Extension Library
コントロール

コントロール
• ノーツビューを表示させるコンテナコン
トロール
– ビュー
– 繰り返し
– データ表
• パネルコントロール使い方
– 通常HTMLの <div>
– データソースにバインディング
XPagesのコントロール

コア

コンテナ

コントロール

コントロール

カスタム

Extension Library
コントロール

コントロール
• 開発者が自身で作るコントロール

「カスタムコントロール」≒「サブフォーム」
例
– ページ表示領域の一部
– レイアウト
– コードのみ
– ファンクション(ログイン)
XPagesのコントロール

コア

コンテナ

コントロール

コントロール

カスタム

Extension Library
コントロール

コントロール
• おすすめ拡張ライブラリ
– アプリケーションレイアウト
– 動的ビュー
– 名前ピッカー
– モバイル全般
実践

Demonstration Application
for XPages

XPagesでCRUDデモ
実践

Demonstration Application
for XPages

XPagesでCRUDデモ
http://www.ibm.com/developerworks/downloads/ls/dominod
esigner/index.html
実践

Demonstration Application
for XPages

XPagesでCRUDデモ
• XPages コントロールや XPages で実現する様々
な機能を試すことができるデモアプリ
(XPages.nsf)
• OpenNTF に公開されている
– 本家(英語)
http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=Demonstration%20Application%20for%20XPages

– 日本語 by XPages Extension Library Japan プロジェ
クト
http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name
=XPages%20Extension%20Library%20Japan

• ダウンロード
• 動作を確認
• ソースを確認
実践

Demonstration Application
for XPages

XPagesでCRUDデモ
• XPages 入門 (IBM developerWorks)
– http://www.ibm.com/developerworks/jp/lotus/education/xpages/

• XPages による Web アプリケーション開発 (IBM
develoerWorks)
– http://www.ibm.com/developerworks/jp/ysl/library/lotus/y-lot-xpages1/

• IBM Notes and Domino Application Development wiki 日
本語カテゴリ
– http://www10.lotus.com/ldd/ddwiki.nsf/xpViewCategories.xsp?lookupName=%E6%97%A5%
E6%9C%AC%E8%AA%9E%20-%20Japanese

• XPages 開発 Tips 百連発
– http://www.slideshare.net/notesdominoliaison/xpages-tips
XPagesジャンプスタート

XPagesジャンプスタート