5.3.1 スニペットを使用したJSPファイルの編集

スニペットは,汎用的なソースコードベースの部品です。MyEclipseでは,JSPに配置できるスニペットを提供します。スニペットを使用すると効率良く,JSPファイルを編集できます。

ここでは,スニペットを使用したJSPファイルの編集を説明します。

スニペットは,[MyEclipse Java エンタープライズ開発]パースペクティブの[スニペット]ビューから[MyEclipseビジュアルJSPデザイナー]にドラッグアンドドロップで追加できます。

[図データ]

[スニペット]ビューは,スニペットを次のカテゴリに分類して表示します。

表5-1 MyEclipseのスニペットカテゴリ

カテゴリ説明
JSPJSPコンポーネント(コメント,ディレクティブ,スクリプトレットなど)のスニペットを提供します。
CSSカスケードスタイルシートのスニペットを提供します。
フォーム・リスト都道府県,年月日などの各種リストのスニペットを提供します。
フォーム・エレメント送信画面フォームを作成するのに便利なスニペットを提供します。
HTMLWeb画面をデザインするのに便利なスニペットを提供します。
JavaScriptJavaScriptのスニペットを提供します。
JSF-FJSFコアタグライブラリのスニペットを提供します。
JSF-HJSF HTMLタグライブラリのスニペットを提供します。
Struts-BeanStruts Beanタグライブラリのスニペットを提供します。
Struts-HTMLStruts HTMLタグライブラリのスニペットを提供します。
Struts-LogicStruts Logicタグライブラリのスニペットを提供します。
Struts-TilesStruts Tilesタグライブラリのスニペットを提供します。

MyEclipseは,カテゴリごとに次のスニペットを提供します。

表5-2 MyEclipseが提供するスニペット

カテゴリスニペット説明
JSP<%--..--%> commentJSPコメントです。
<%..%> scriptletJSPスクリプトレットです。
<%=..%> expressionJSP式です。
<%!..%> declarationJSP宣言です。
include directiveインクルードディレクティブです。
page directiveページディレクティブです。
taglib directivetaglibディレクティブです。
CSSコメントの追加複数行のCSSコメントです。
セルの背景色の変更マウスをあてた時にテーブルのセルの背景色を変更します。
スタイル・クラスの追加スタイルのクラスです。
フォーム・リスト都道府県都道府県のリスト・メニューです。
50 州リスト - フルネームアメリカ50州のリスト・メニューです。州のフルネームを選択すると,郵便コードの略称が値になります。
50 州リスト - 略称アメリカ50州のリスト・メニューです。州名も値も郵便コードの略称です。
カナダの州とアメリカ領のリストカナダの州とアメリカの領土のリスト・メニューです。
国と地域のリスト65の国/地域のリスト・メニューです。
年リスト 1900 - 20074桁の年を返す1900年から2007年までのリスト・メニューです。
年号リスト年号のリスト・メニューです。
年リスト 00 - 992桁の年を返す00年から99年までのリスト・メニューです。
月リスト対応する数値を返す月のリスト・メニューです。
曜日リスト対応する数値を返す曜日のリスト・メニューです。
タイムゾーン・リストグリニッジ標準時タイムゾーンのリスト・メニューです。
時間リスト - AM/PM真夜中から11:45(AM/PM)までの15分毎の時刻のリスト・メニューです。
24 時間制の時刻24時間制の時刻を秒まで設定する三つのリスト・メニューのグループです。
通貨リスト各国の通貨を表示するリスト・メニューです。値はその国の通貨記号です。
フォーム・エレメント1 フィールド・フォーム一つのフィールドがあるフォームです。
2 フィールド・フォームニつのフィールドとボタンを含むフォームです。
自動クリアされるテキスト・フィールドデフォルト・メッセージが表示されるフォーム・テキスト・フィールドです。
キャンセル・ボタン一つ前のページに戻ります。
ファイル参照ボタンビジターが指定したローカル・ファイルのアップロードを許可するファイル名フィールドです。
HTMLメタタグヘッダーと完全なメタタグ・リストです。
コメントの追加複数行のコメントです。
単一表1行1列の表です。
リストのある表リストを持つ2列のテーブル(2列3行)です。
ページ・ヘッダー左にロゴ,右にリンクが表示されるページ・ヘッダーです。
ダイナミック・ページ・ヘッダー日付,時刻などの情報を使用した動的なヘッダーです。次の表示項目を挿入して,カスタマイズできます。
  • 時刻に合わせたあいさつ
  • 特別な日のメッセージ
  • クイック・ジャンプ・ナビゲーション・メニュー
フッター - ページ番号ページ番号ナビゲーションを提供します。
フッター - ナビゲーションと著作権リンクと著作権を持つフッターです。
JavaScriptお気に入りに追加指定されたページをお気に入りに自動追加します。サイトとタイトルを変更して使用してください。
前に戻るキャンセルして,前のページへ戻るボタンと同様です。
次に進む1ページ先へ進みます。
すべてのチェックボックスを選択1クリックでチェックボックス・グループを選択します(同じページ上に複数グループを持てます)。
曜日リダイレクト曜日に応じて異なるページへ送ります。例えば,今日が火曜日の場合,Tuesday.htmlにリダイレクトします。
一定時間後に URL へ移
一定時間後にURLへ移動します。
リダイレクト指定されたURLにリダイレクトします。
Cookie の読み取り指定した名前のCookieの値を読み取る関数です。
Cookie の書き込みCookieに値を書き込む関数です。
現在の日付YYYY/MM/DD形式で現在の日付を表示します。
GMT ライブ日付/時刻秒単位で変化するライブ日付/時刻を表示します。
メッセージ・ウィンドウ指定したメッセージとタイトルを含む新規ウィンドウを表示します。
ポップアップ・ウィンドウ指定したウィンドウの位置 (左および上部),幅,高さ,URLで新規ウィンドウを開きます。
ウィンドウを閉じる現在のウィンドウを閉じるフォーム・ボタンです。
JSF-F<f:actionListener ../> タグJSFのf:actionListenerタグです。
<f:convertDateTime ../> タグJSFのf:convertDateTimeタグです。
<f:convertNumber ../> タグJSFのf:convertNumberタグです。
<f:facet ..> タグJSFのf:facetタグです。
<f:selectItems ../> タグJSFのf:selectItemsタグです。
<f:validateDoubleRange ../> タグJSFのf:validateDoubleRangeタグです。
<f:validateLength ../> タグJSFのf:validateLengthタグです。
<f:validateLongRange ../> タグJSFのf:validateLongRangeタグです。
<f:valueChangeListener ../> タグJSFのf:valueChangeListenerタグです。
<f:verbatim> タグJSFのf:verbatimタグです。
JSF-H<h:commandButton ../> タグJSFのh:commandButtonタグです。
<h:commandLink ..> タグJSFのh:commandLinkタグです。
<h:dataTable ..> タグJSFのh:dataTableタグです。
<h:form> タグJSFのh:formタグです。
<h:graphicImage ../> タグJSFのh:graphicImageタグです。
<h:inputHidden ../> タグJSFのh:inputHiddenタグです。
<h:inputSecret ../> タグJSFのh:inputSecretタグです。
<h:inputText ../> タグJSFのh:inputTextタグです。
<h:inputTextarea ../> タグJSFのh:inputTextareaタグです。
<h:message ../> タグJSFのh:messageタグです。
<h:outputFormat ..> タグJSFのh:outputFormatタグです。
<h:outputLabel ../> タグJSFのh:outputLabelタグです。
<h:outputLink ..> タグJSFのh:outputLinkタグです。
<h:panelGrid ..> タグJSFのh:panelGridタグです。
<h:selectBooleanCheckbox ../> タグJSFのh:selectBooleanCheckboxタグです。
<h:selectManyCheckbox ..> タグJSFのh:selectManyCheckboxタグです。
<h:selectManyListbox ..> タグJSFのh:selectManyListboxタグです。
<h:selectManyMenu ..> タグJSFのh:selectManyMenuタグです。
<h:selectOneListbox ..> タグJSFのh:selectOneListboxタグです。
<h:selectOneMenu ..> タグJSFのh:selectOneMenuタグです。
<h:selectOneRadio ..> タグJSFのh:selectOneRadioタグです。
<h:column> タグJSFのh:columnタグです。
Struts-Bean<bean:write ../> タグStrutsのbean:writeタグです。
<bean:parameter ../> タグStrutsのbean:parameterタグです。
<bean:message ../> タグStrutsのbean:messageタグです。
<bean:define ../> タグStrutsのbean:defineタグです。
Struts-HTML<html:base /> タグStrutsのhtml:baseタグです。
<html:cancel /> タグStrutsのhtml:cancelタグです。
<html:checkbox ../> タグStrutsのhtml:checkboxタグです。
<html:errors ../> タグStrutsのhtml:errorsタグです。
<html:file ../> タグStrutsのhtml:fileタグです。
<html:form ../> タグStrutsのhtml:formタグです。
<html:hidden ../> タグStrutsのhtml:hiddenタグです。
<html:html> タグStrutsのhtml:htmlタグです。
<html:image ../> タグStrutsのhtml:imageタグです。
<html:img ../> タグStrutsのhtml:imgタグです。
<html:link ..> タグStrutsのhtml:linkタグです。
<html:messages ../> タグStrutsのhtml:messagesタグです。
<html:multibox ../> タグStrutsのhtml:multiboxタグです。
<html:option ../> タグStrutsのhtml:optionタグです。
<html:optionsCollection ../> タグStrutsのhtml:optionsCollectionタグです。
<html:password ../> タグStrutsのhtml:passwordタグです。
<html:radio ../> タグStrutsのhtml:radioタグです。
<html:reset /> タグStrutsのhtml:resetタグです。
<html:select ../> タグStrutsのhtml:selectタグです。
<html:submit /> タグStrutsのhtml:submit タグです。
<html:text ../> タグStrutsのhtml:textタグです。
<html:textarea.../> タグStrutsのhtml:textareaタグです。
Struts-Logic<logic:iterate ../> タグStrutsのlogic:iterateタグです。
<logic:redirect ../> タグStrutsのlogic:redirectタグです。
<logic:empty ../> タグStrutsのlogic:emptyタグです。
<logic:notEmpty ../> タグStrutsのlogic:notEmptyタグです。
<logic:present /> タグStrutsのlogic:presentタグ
<logic:notPresent /> タグStrutsのlogic:notPresentタグ
<logic:equal ../> タグStrutsのlogic:equalタグです。
<logic:notEqual ../> タグStrutsのlogic:notEqualタグです。
<logic:lessEqual ../> タグStrutsのlogic:lessEqualタグです。
<logic:lessThan ../> タグStrutsのlogic:lessThanタグです。
<logic:greaterEqual ../> タグStrutsのlogic:greaterEqualタグです。
<logic:greaterThan ../> タグStrutsのlogic:greaterThanタグです。
Struts-Tiles<tiles:insert../>tagStrutsのtiles:insertタグです。
<tiles:put../>tagStrutsのtiles:putタグです。
<tiles:get../>tagStrutsのtiles:getタグです。
<tiles:getAsString../>tagStrutsのtiles:getAsStringタグです。
<tiles:useAttribute../>tagStrutsのtiles:useAttributeタグです。
注意
スニペットは,Eclipseのワークスペースごとに保持されます。スニペットは,ワークスペース作成時に,次のファイルに保存されます。

<Eclipseのワークスペースディレクトリ>/.metadata/.plugins/org.eclipse.wst.common.snippets/user.xml

なお,MyEclipseのバージョンアップでMyEclipseが提供するスニペットに変更があった場合は,既存のワークスペースに反映されません。既存のワークスペースにスニペットの変更を反映する場合は,新しいワークスペースを指定してMyEclipseを起動したあとに新しいワークスペースのスニペットをエクスポートして,既存のワークスペースにインポートする必要があります。
既存のワークスペースでスニペットをカスタマイズしている場合は,インポート時に表示される[既存ドロワー・エントリーの上書き]ダイアログで[キャンセル]ボタンをクリックすると,カスタマイズしたスニペットを残せます。
インポートの手順を次に示します。
  1. 日本語リソースのスニペットが追加されているワークスペースで[スニペット]ビューの項目を選択して,コンテキストメニューから[カスタマイズ]を選択します。
    [パレットのカスタマイズ]ダイアログが表示されます。
  2. [パレットのカスタマイズ]ダイアログでエクスポートしたいスニペットのカテゴリを選択します。

    [図データ]

  3. [パレットのカスタマイズ]ダイアログのツールバーにある[エクスポート]をクリックして,xmlファイルにエクスポートします。
  4. インポート先のワークスペースを開いて,[スニペット]ビューの項目を選択して,コンテキストメニューから[カスタマイズ]を選択します。
    [パレットのカスタマイズ]ダイアログが表示されます。
  5. [パレットのカスタマイズ]ダイアログのツールバーにある[インポート]をクリックして,手順3.でエクスポートしたxmlファイルを指定します。
  6. [既存ドロワー・エントリーの上書き]ダイアログで[OK]ボタンをクリックします。
  7. [パレットのカスタマイズ]ダイアログの[OK]ボタンをクリックします。