Skip to main content link. Accesskey S
  • Help
  • HCL Logo
  • HCL Notes and Domino Application Development wiki
  • THIS WIKI IS READ-ONLY. Individual names altered for privacy purposes.
  • HCL Forums and Blogs
  • Home
  • Product Documentation
  • Community Articles
  • Learning Center
  • API Documentation
Search
Community Articles > 日本語 - Japanese > XPages Extension Library treeNodesプロパティの解説
  • Share Show Menu▼
  • Subscribe Show Menu▼

Recent articles by this author

9.0.1のディスカッションテンプレートをタブレットから表示する

9.0.1のディスカッションテンプレートをタブレットから表示する IBM Domino 9.0.1のディスカッションテンプレートは、タブレットから表示すると本文の箇所が非常に狭い見た目になってしまいます。 これを改善する方法に

JMeterを使ってXPagesアプリケーションのパフォーマンステストを行う際の考慮点

JMeterを使ってXPagesアプリケーションのパフォーマンスを計測する手法について解説します

XPages Extension Library treeNodesプロパティの解説

この記事ではXPages Extension Libraryで良く使われるtreeNodesプロパティについて解説します

タイプアヘッド(先行入力)プロパティを紹介します。

タイプアヘッド(先行入力)プロパティについて説明します。

XPages コントロールの紹介: 「ボタン」 コントロール

ボタンコントロールを紹介します。
Community articleXPages Extension Library treeNodesプロパティの解説
Added by ~Dexter Zekjumisterynds | Edited by ~Dexter Zekjumisterynds on January 5, 2013 | Version 23
  • Actions Show Menu▼
expanded Abstract
collapsed Abstract
この記事ではXPages Extension Libraryで良く使われるtreeNodesプロパティについて解説します
Tags: Extension Library, Extension Library controls, XPages Extension Library Japan Project
ShowTable of Contents
HideTable of Contents
  • 1 treeNodesプロパティの解説
  • 2 treeNodeの一覧
  • 3 basicLeafNode
  • 4 basicContainerNode
  • 5 separatorTreeNode
  • 6 loginTreeNode
    • 6.1 Tips.ラベルを日本語化する
    • 6.2 Tips.リダイレクト先を指定する
  • 7 userTreeNode
  • 8 pageTreeNode
  • 9 repeatTreeNode
  • 10 beanTreeNode
  • 11 dominoViewListNode
  • 12 dominoViewEntriesTreeNode

treeNodesプロパティの解説


XPages Extension Libraryでは、リンクやボタンを設定する場合などに、treeNodesプロパティを使用する場合が多くあります。
当記事ではこのtreeNodesプロパティについて解説します。
たとえば、以下のコントロールのプロパティでtreeNodeが使用されています。
・Application Layoutコントロール
・Bread Crumbsコントロール
・pop-upコントロール
・toolbarsコントロール
・list of linksコントロール
・Outlineコントロール

treeNodeの一覧


以下にtreeNodesプロパティの一覧を示します。
「すべてのプロパティ」で表示される名称
プロパティで表示される名称
basicLeafNode
BasicNode
basicContainerNode
ContainerNode
separatorTreeNode
SeparatorNode
loginTreeNode
Login or Logout Node
userTreeNode
User Node
pageTreeNode
Page Link Node
repeatTreeNode
Repeat Node
beanTreeNode
Managed Bean Node
dominoViewListTreeNode
View or Folder List
dominoViewEntriesTreeNode
View or Folder Entries

basicLeafNode


標準のノード。1つのリンクまたは1つのボタンを設定します(リンクとなるかボタンとなるかはコントロールに依存します)。
separatorTreeNodeを除き、他のTreeNodeはこのbasicLeafNodeと同じプロパティを持ちます。
プロパティ
説明
enabled
Nodeが有効かどうかを指定する。Nodeがリンクの場合、テキストのみ表示される。Nodeがボタンの場合、
無効なボタン(グレーで表示されクリックできない)が表示される。デフォルトは有効。(未確認)
href
リンクするURL。絶対または相対URL。※1※2
image
Nodeに表示する画像。labelプロパティと同時に指定した場合、labelの左側に表示される。※3
imageAlt
画像の代替テキスト
imageHeight
画像の高さ
imageWidth
画像の幅
label
Nodeに表示するテキスト
loaded
Nodeをロードするかどうかを指定
onClick
Nodeをクリックしたときのイベント。クライアントサイドのJavaScriptとして記述。
hrefプロパティがブランクのときのみ有効。
rendered
HTMLにNodeをレンダリングするかどうかを指定。
role
Nodeのrole属性を指定
selected
Nodeが選択されているかどうかのプロパティ。有効の場合、表示イメージが変更される。(未確認)
submitValue
サーバーに送信される値。送信された値は、サーバーサイドJavaScriptで、context.getSubmittedValue()メソッドを
呼び出すことで取得可能。
title
Nodeのtitle属性を指定
※1 絶対URLを記述する場合、"http://"~から記述。
※2 プロパティにはtarget属性がない。リンクを別ウィンドウで開く場合、onClickイベントで下記のように記述する。
var w=window.open();
w.location.href='http://www-10.lotus.com/ldd/ddwiki.nsf/';

※3labelの下に画像を表示したい場合、styleプロパティの"背景"を指定する

basicContainerNode


他のリンクの"コンテナ(入れ物)"となるNodeです。


以下にbasicContainerNodeのプロパティを示す。下記以外のプロパティは"basicLeafNode"と同一です。
プロパティ
説明
children
子Nodeを設定。
expanded
初期状態で展開するかどうかを指定。
transparent
trueにすると、コンテナは表示されず、子Nodeだけが表示される。デフォルトはfalse。複数の子ノードの表示を
いっせいに切り替えたいとき、子ノードの loaded プロパティ(またはrenderedプロパティ)をそれぞれ設定するの
ではなく、当プロパティを有効にし、当Nodeのloaded プロパティまたはrenderedプロパティで切り替える。

separatorTreeNode


ノードのツリーに"区切り"を表示するノードです。
以下は"List of Links"コントロールで、basicContainerNodeの子Node(basicLeafNode)の2つ目と3つ目の間にseparatorTreeNode
を挿入した場合の表示イメージ。


プロパティ
説明
loaded
Nodeをロードするかどうかを指定
rendered
HTMLにNodeをレンダリングするかどうかを指定。

loginTreeNode

デフォルトでログイン/ログアウトを表示するノード。プロパティはbasicLeafNodeと同一。

ユーザ認証されていない場合、以下のリンクを表示する。

ラベルは"Login"、リンク先は"(データベースパス)?openDatabase&login"。

ユーザ認証済みで、サーバーでセッション認証が設定されている場合、以下のリンクを表示する。

ラベルは"Loguout"、リンク先は"(データベースパス)?logut"。

※サーバーでベーシック認証(セッション認証に"なし"を設定)が設定されている場合、何も表示されない。

Tips.ラベルを日本語化する

labelプロパティを設定すると、上書きされる。ラベルを日本語で表示する場合のサンプルコードは下記。


if(context.getUser().isAnonymous()){
	return "ログイン";
}
else
{
	return "ログアウト";
	}

Tips.リダイレクト先を指定する

ログアウト後に任意のリダイレクト先を指定したい場合などは、Redirecttoパラメータを指定する必要がある。

その場合には、ログアウト、ログインのロジックを自作する。以下参考。


XPages Tutorial Part 7: バナーのログイン/ログアウトボタン
http://notesdominoliaison.blogspot.jp/2009/12/xpages-tutorial-part-7.html

認証を要求する URL コマンド
http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.designer.domino.main.doc/H_ABOUT_URL_COMMANDS_FOR_REQUIRING_AUTHENTICATION.html


userTreeNode

ユーザー名を表示するノード。通常、loginTreeNodeと同時に使用する。

デフォルトでは共通名を表示する。認証されていない場合、"Anonymous"と表示される。

プロパティ
説明
userField
ユーザ名の表示形式を指定する。省略形の場合は"abbreviatedName"、階層名の場合は
"canonicalName"を指定する。


pageTreeNode

pageTreeNodeを使用すると、アプリケーション内の別ページに簡単にリンクできます。

basicLeafNodeに加えて3つのプロパティを持っています。



プロパティ
説明
page
リンクするXPageの名前を指定します。ドロップダウンリストから選択できる(下図)。pageTreeNodeには
hrefプロパティはなく、このpageプロパティでリンク先を指定する。
queryString
pageプロパティで指定したリンクにQueryStringを追加する。たとえば、既存の文書を編集モードで開く場合、
下記のように指定する。XPagesで使えるQueryStringについては、 XPages データソース解説 - URL パラメータexternal link
参照。
例.documentId=855FA9D93EC7F70749257AC20019B5A0&action=editDocument
selection
Application Layout コントロールのプロパティにpageTreeNodeを指定したときに使用する。正規表現で指定。
Application Layout コントロールのnavigationPathプロパティの値がselectionプロパティの正規表現に一致
する場合、CSSの lotusSelected クラスがこのNodeに自動的に追加される。
※Application Layout コントロールのプロパティにpageTreeNodeを指定した場合、selection プロパティを指定
していなくても、現在のページが page プロパティに一致する場合、 lotusSelected クラスがNodeに追加される。

repeatTreeNode

repeatTreeNodeは、繰り返しコントロールと同じように、valueプロパティに複数値を持たせることで、子のtreeNodeを繰り返し

表示することができます。



プロパティ
説明
value
繰り返しに使用される値を指定
var
valueプロパティの個々の値にアクセスするための変数名
indexVar
valueプロパティのインデックス番号にアクセスするための変数名
children
繰り返し表示するtreeNode

以下に、List of Linksコントロールで、添付ファイルへのリンクを作成する例を示します。

①各プロパティの指定


②basicLeafNodeのhrefプロパティに指定するJavaScript
var xspUrl = context.getUrl();
xspUrl.getScheme() + "://" + xspUrl.getHost() +"/"+ database.getFilePath() + "/0/"+ currentDocument.getDocument().getUniversalID() + "/$FILE/"+val;


beanTreeNode


dominoViewListNode

アプリケーション内のビューまたはフォルダのリストを表示します。


リンク先を指定するためには、onClickイベントやhrefプロパティにロジックを記述する必要があります。

プロパティ
説明
databaseName
ビューまたはフォルダの一覧を表示するデータベースパスを指定する。ブランクの場合には現在のデータベース
var
個々のエントリにアクセスする変数名を指定する
viewsビューの一覧を表示するか否かを指定する。デフォルト true
foldersフォルダの一覧を表示するか否かを指定する。デフォルト true


dominoViewEntriesTreeNode

dominoViewEntriesTreeNodeはビューを使用して、繰り返しノードを表示します(repeatTreeNodeで、データソースにビューを指定した

場合とほぼ同様のことができます)。



プロパティ
説明
databaseName
使用するビューがあるデータベースパスを指定する。ブランクの場合には現在のデータベース
viewName
使用するビュー名を指定する
var個々のエントリにアクセスする変数名を指定する
labelColumnラベルとして指定する列のプログラム名を指定する(下図)
keys指定したキーにマッチするエントリのみ使用する。getAllDocumentsByKeyメソッドの1つ目のパラメータと同様。
keyExactMatchkeysプロパティとあわせて使用する。完全にkeysと一致するエントリのみを返す。getAllDocumentsByKeyメソッドの
2つ目のパラメータと同様。

以下に、List of Linksコントロールでビューを使用して下記のようなリンクを生成する例を示す。

1.1列目にソート順、2列目にラベル(プログラム名label)、3列目にURLを表示するビュー(ビュー名links)を作成する。

2.下記のように指定

※④では下記のロジックを指定
viewEntry.getColumnValues()[2];

  • Actions Show Menu▼


expanded Attachments (0)
collapsed Attachments (0)
Edit the article to add or modify attachments.
expanded Versions (23)
collapsed Versions (23)
Version Comparison     
VersionDateChanged by              Summary of changes
This version (23)Jan 5, 2013, 6:05:36 AM~Dexter Zekjumisterynds  
22Jan 5, 2013, 6:00:55 AM~Judy Desluskiader  
21Dec 6, 2012, 5:03:48 AM~Judy Desluskiader  
20Dec 6, 2012, 5:01:57 AM~Judy Desluskiader  
19Dec 6, 2012, 4:53:34 AM~Judy Desluskiader  
18Nov 30, 2012, 9:16:17 AM~Judy Desluskiader  
17Nov 29, 2012, 3:39:04 AM~Judy Desluskiader  
16Nov 29, 2012, 3:09:58 AM~Judy Desluskiader  
14Nov 29, 2012, 3:07:10 AM~Judy Desluskiader  
13Nov 29, 2012, 3:05:45 AM~Judy Desluskiader  
12Nov 29, 2012, 3:05:34 AM~Judy Desluskiader  
11Nov 29, 2012, 3:02:54 AM~Judy Desluskiader  
10Nov 29, 2012, 3:02:11 AM~Judy Desluskiader  
9Nov 29, 2012, 2:58:46 AM~Judy Desluskiader  
8Nov 29, 2012, 2:53:22 AM~Judy Desluskiader  
7Nov 29, 2012, 2:46:24 AM~Judy Desluskiader  
6Nov 29, 2012, 1:40:38 AM~Judy Desluskiader  
5Nov 29, 2012, 1:39:12 AM~Judy Desluskiader  
4Nov 29, 2012, 1:38:07 AM~Judy Desluskiader  
3Nov 26, 2012, 4:00:25 PM~Judy Desluskiader  
3Nov 26, 2012, 4:00:58 PM~Judy Desluskiader  
2Nov 26, 2012, 3:58:29 PM~Judy Desluskiader  
1Nov 26, 2012, 3:57:45 PM~Judy Desluskiader  
expanded Comments (0)
collapsed Comments (0)
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedAbout
  • HCL Software
  • HCL Digital Solutions community
  • HCL Software support
  • BlogsDigital Solutions blog
  • Community LinkHCL Software forums and blogs
  • About HCL
  • Privacy
  • Accessibility