Oracle® Mobile Application Framework Oracle Mobile Application Frameworkでのモバイル・アプリケーションの開発 2.3.3 E82940-01 |
|
前 |
次 |
この章の内容は次のとおりです。
MAFではCascading Style Sheet (CSS)言語ベースのスキンを使用するので、MAFアプリケーション内の(その要素のアプリケーション機能で使用されるものを含む)すべてのアプリケーション・コンポーネントが一貫したルック・アンド・フィールを確実に共有するようになっています。MAF AMXまたはHTMLコンポーネントを再構成してMAFアプリケーションの外観を変更するかわりに、コンポーネントの表示方法を変更するスキンを作成または拡張できます。
MAFアプリケーションのルック・アンド・フィールを変更するためのスキンの作成または編集は、反復的プロセスです。スキンを作成し、それをデバイスにデプロイして結果を表示できます。このプロセスを、スキンのレンダリング結果が希望どおりになるまで続行できます。ユーザー・インタフェース・コード(CSS、HTML、JavaScriptなど)をインスペクトおよびデバッグするためにAndroidおよびiOSプラットフォームが提供する開発者ツールは、このタスクでの重要なリソースです。これらのツールをMAFアプリケーションで使用する方法の詳細は、「AndroidプラットフォームでのUIコードのデバッグ方法」および「iOSプラットフォームでのUIコードのデバッグ方法」を参照してください、Visual Studioを使用して、ユニバーサルWindowsプラットフォームにデプロイするMAFアプリケーションでユーザー・インタフェース・コードをデバッグします。詳細は、「ユニバーサルWindowsプラットフォームでUIコードをデバッグする方法」を参照してください。
MAF AMXページの外観を決定するセレクタを定義するためにMAFで使用されるサポート済のスキンのファミリとバージョンは、次のとおりです。
amx mobileAlta-1.0 mobileAlta-1.1 mobileAlta-1.2 mobileAlta-1.3 mobileAlta-1.4 mobileAlta-1.5 mobileAlta-1.6
デフォルトで、新規作成したMAFアプリケーションでは最新バージョンのmobileAlta
スキン・ファミリが使用されます。アプリケーションを以前のリリースから最新リリースに移行すると、そのアプリケーションでは移行前に使用するよう構成されていたスキンが引き続き使用されます。移行後のアプリケーションで別のスキン(たとえば最新バージョンのmobileAlta
)を使用する場合は、「アプリケーションが使用するスキンの指定」の説明に従って、maf-config.xml
ファイルを編集する必要があります。
図9-1は、異なるスキンを使用して同じアプリケーション画面のレンダリングを示すことによって、mobileAlta
スキン・ファミリと別のスキン・ファミリのルック・アンド・フィールの違いを示しています。mobileAlta
スキン・ファミリは左側でレンダリングされます。
図9-1 mobileAltaと別のスキンのルック・アンド・フィールの比較
MAFアプリケーションをデバイス、エミュレータまたはシミュレータにデプロイすることにより、MAFアプリケーションの使用するスキンのすべてのリソース(CSSファイルおよびイメージ)を表示できます。デプロイメントでは、これらのリソースは、デプロイメント処理で生成されるプラットフォーム固有のアーティファクト内で作成されるwww\css
ディレクトリに移動されます。iOSデプロイメントの場合、www\css
ディレクトリはtemporary_xcode_project
ディレクトリ内にあります。iOSデプロイメントでは、これらのリソースは、作成された.IPA
ファイルに追加されるOracle_ADFmc_Container_Template.zip
ファイルにパッケージされます。Androidデプロイメントの場合、ディレクトリ・パスは%app%\deploy\Android1\framework\build\java_res\assets\www\css
となり、Android1
はデプロイメント・プロファイルの名前です。Androidデプロイメントでは、これらのリソースは、作成された.APK
ファイルに追加されるassets.zip
ファイルにパッケージされます。JDeveloperの「ビルド」→「すべてクリーン」コマンドにより、deploy
ディレクトリ、およびwww\css
ディレクトリを含むそのサブディレクトリが削除されることに注意してください。
警告:
MAF DOM構造に依存するスタイルを記述しないでください。また、これらのファイル内で定義されている一部のセレクタは、サポートされていない場合があります。
maf-config.xml
ファイル(「maf-config.xmlファイルについて」を参照)およびmaf-skins.xml
ファイル(「maf-skins.xmlファイルについて」を参照)を使用して、MAFアプリケーションのスキニングを制御します。maf-config.xml
ファイルでは、アプリケーション・コンポーネントのレンダリングに使用するデフォルトのスキン・ファミリを指定し、maf-skins.xml
ファイルでは、デフォルトのスキン・ファミリをカスタマイズしたり、新しいスキン・ファミリを定義することができます。
MAFアプリケーションを作成すると、JDeveloperによって、maf-config.xml
ファイルがMAFアプリケーションのMETA-INFノードに移入されます。このファイル自体には、ベースMAFスキン・ファミリであるmobileAlta
が移入されます(次の例を参照)。
<?xml version="1.0" encoding="UTF-8" ?> <adfmf-config xmlns="http://xmlns.oracle.com/adf/mf/config"> <skin-family>mobileAlta</skin-family> <skin-version>v1.5</skin-version> .... </adfmf-config>
注意:
EL式を使用して実行時にスキンの値を決定できます。詳細は、「エンド・ユーザーによる実行時のアプリケーション・スキンの変更の有効化」を参照してください。
<skin-family>
または<skin-version>
タグの値を指定しない場合は、MAFアプリケーションで自動的に最新のスキン・ファミリまたはスキン・バージョンが使用されます。
MAFでは階層としてスキンが適用されます。最上位にはデバイス固有のスキン、その後にプラットフォーム固有のスキン、ベース・スキンmobileAlta
と続きます。MAFのmobileAlta
スキン・ファミリの場合、この階層は次のように表されます。
mobileAlta.
<DeviceModel>
(たとえば、mobileAlta.iPhone5,3
)
mobileAlta.iOS
またはmobileAlta.Android
mobileAlta
ヒント:
デバイス固有またはプラットフォーム固有のスキンを作成する予定の場合は、その値を取得する必要があるデバイスまたはプラットフォームにDeviceDemoサンプル・アプリケーションをデプロイします。DeviceDemoサンプル・アプリケーションの「プロパティ」アプリケーション機能には、デバイス・モデルおよびアプリケーションが実行されているプラットフォームの値が表示されます。詳細は、「サンプルのMAFアプリケーション」を参照してください。図9-2は、実行時にMAFでスキンのこの階層が適用される様子をイラストレーションで示しています。SkinningDemo
サンプル・アプリケーション(「サンプルのMAFアプリケーション」を参照)でも、この実装を示しています。
MAFでは、この階層のデバイス固有のレベルで定義されたセレクタを優先します。つまり、MAFでは、mobileAlta.iOS
で定義されたセレクタを、同じセレクタに対するmobileAlta.iPhone5,3
の定義で上書きします。「maf-skins.xmlファイルについて」で定義されている<extends>
要素によって、この階層がMAFランタイム用に定義されます。様々なレベルでのスキンの適用方法の詳細は、「スキニングに関する必知事項」を参照してください。
図9-2 実行時のMAFのスキン階層の適用
アプリケーション・コントローラ・プロジェクトのMETA-INFノードにあるmaf-skins.xml
ファイルによって、既存のスキンを拡張して新しいスキンを定義したり、既存のスキンに新しいスタイル・シートを追加することができます。
デフォルトでは、このファイルは空ですが、表9-1に示されている要素によって子要素を記述します。これらの子要素をこのファイルに移入することで、mobileAlta
を拡張したり、アプリケーションで使用できるCSSファイルを定義できます。新しいスキンを作成したり、既存のスキンを拡張するには、<skin>
要素を使用します。
表9-1 <skin>要素の子要素
要素 | 説明 |
---|---|
|
たとえば、Apple iPadまたはiPhoneへのデプロイ時に、ユーザーのアプリケーションの外観を定義するスキンをユーザーのアプリケーションに登録するには、 |
|
スキン・ファミリを識別する必須要素。 |
|
この要素を使用して、拡張するスキンのスキンIDを指定することによって既存のスキンを拡張します。 <skin> <id>mySkin-v1</id> <family>mySkin</family> <extends>mobileAlta-v1.6</extends> <style-sheet-name>styles/myskin.css</style-sheet-name> <version> <name>v1</name> </version> </skin> |
|
MAFアプリケーションのプロジェクト内のCSSファイルの場所を指定するには、相対URLを使用します。たとえば、SkinningDemoサンプル・アプリケーションの
|
|
スキンの異なるバージョンを指定します。詳細は、「MAFスキンのバージョニング」を参照してください。 |
表9-2に、スタイルシートを既存のスキンに統合する場合に、MAF CSS内で<skin-addition>
要素を定義するために使用できる要素を示しています。
表9-2 <skin-addition>の子要素
要素 | 説明 |
---|---|
|
スタイルシートをさらに追加する必要があるスキンのIDを指定します。指定可能な値には、MAFによって提供されるスキン(たとえば、 |
|
MAFアプリケーションのプロジェクト内のCSSファイルの場所を指定するには、相対URLを使用します。たとえば、SkinningDemoサンプル・アプリケーションの
|
次の例では、<style-sheet-name>
要素でCSSファイルの場所を、<skin-id>
でターゲット・スキン・ファミリを指定しています。
<?xml version="1.0" encoding="UTF-8" ?> <adfmf-skins xmlns="http://xmlns.oracle.com/adf/mf/config"> <skin-addition> <skin-id>mobileAlta-v1.6.iOS</skin-id> <style-sheet-name>skins/mystyles.iphone.addition1.css</style-sheet-name> </skin-addition> </adfmf-skins>
<skin-id>
および<style-sheet-name>
要素を使用して特定のiOSまたはAndroidデバイスにレンダリングしたり、これらの要素を定義してすべてのデバイスのプラットフォームに対するスタイルを処理することもできます。表9-3に、iOSプラットフォームに属するすべてのデバイス、および特定のiOSデバイス・タイプ(タブレット、電話、シミュレータ)をターゲットにするこれらの要素の使用例を示します。
ヒント:
デバイス・モデルに関する情報を取得するには、「サンプルのMAFアプリケーション」に記載されているDeviceDemoサンプル・アプリケーションの使用を検討してください。
表9-3 プラットフォームおよびデバイス固有のスタイル
デバイス | 例 |
---|---|
iPhone |
<skin-addition> <skin-id>mobileAlta-v1.6.iPhone5,1</skin-id> <style-sheet-name>iPhoneStylesheet.css</style-sheet-name> </skin-addition> |
iPad |
<skin-addition> <skin-id>mobileAlta-v1.6.iPad4,2</skin-id> <style-sheet-name>iPadStylesheet.css</style-sheet-name> </skin-addition> |
iPhoneシミュレータ |
<skin-addition> <skin-id>mobileAlta-v1.6.iPhone Simulator x86_64</skin-id> <style-sheet-name>iPhoneSimStylesheet.css</style-sheet-name> </skin-addition> |
すべてのiOSデバイス |
<skin-addition> <skin-id>mobileAlta-v1.6.iOS</skin-id> <style-sheet-name>iOSSimStylesheet.css</style-sheet-name> </skin-addition> |
アプリケーションにカスタム・スキンを追加するには、JDeveloper内にCSSファイルを作成します。CSSはアプリケーションとともにデプロイするために、JDeveloperによりプロジェクトのソース・ファイルに配置されます。
カスタム・スキンをアプリケーションに追加する手順:
これで、CSSエディタにCSSを開いて、アプリケーションのスタイルを定義できます。
maf-config.xml
ファイルで値を構成して、アプリケーションで使用するスキンを決定します。
使用するアプリケーションのスキンを指定するには:
例9-1 アプリケーションのスキンを指定する構成
<adfmf-config xmlns="http://xmlns.oracle.com/adf/mf/config"> <skin-family>mobileAlta</skin-family> <skin-version>v1.6</skin-version> </adfmf-config>
注意:
アプリケーションが実行時に使用するスキンを動的に選択する場合、EL式を<skin-family>
要素の値として設定します。詳細は、「エンド・ユーザーによる実行時のアプリケーション・スキンの変更の有効化」を参照してください。
maf-skins.xml
ファイルにカスタム・スキンを識別するプロパティ値を追加することで、ユーザーのアプリケーションにカスタム・スキンを登録します。
カスタム・スキンを登録する手順:
<version>
要素を使用して、maf-skins.xml
ファイルでスキンのバージョン番号を指定できます。maf-skins.xml
ファイル内の<family>
要素の値が同じスキンを区別する場合はこのオプション機能を使用します。この機能は、いくつかの既存の動作を変更するために既存のスキンの新規バージョンを作成する場合に役立ちます。特定のスキンを使用するようにアプリケーションを構成する場合は、「アプリケーションが使用するスキンの指定」の説明に従って、maf-config.xml
ファイルで値を指定してください。
maf-skins.xml
ファイル内の<version>
要素に値を入力して、スキンのバージョンを指定します。
ベスト・プラクティス
アプリケーションのmaf-skins.xml
ファイルに登録する各スキンのバージョン情報を指定します。
MAFスキンをバージョニングするには:
maf-skins.xml
ファイルをダブルクリックします。デフォルトでは、これは、アプリケーション・コントローラ・プロジェクトのMETA-INFノードにあります。maf-config.xml
ファイルの<skin-version>
要素に値が指定されていない場合に、このバージョンのスキンがアプリケーションで使用されるようにするには、「アプリケーションが使用するスキンの指定」の説明に従って、「バージョンの挿入」ダイアログで、デフォルト・リストから「true」を選択します。v1
と入力します。スキン用に構成するバージョン情報は、実行時にアプリケーションでスキンが適用されるときに、プラットフォーム値およびデバイス値より優先されます。実行時に、MAFアプリケーションでは、プラットフォーム固有のスキンが適用される前にデバイス固有のスキンが適用されます。スキンのバージョン情報が指定されている場合、アプリケーションでは最初に、指定したスキンのバージョン値と一致するスキンを検索します。スキン・バージョン値およびデバイス値と一致するスキンが見つかると、アプリケーションではこのスキンが適用されます。指定したスキン・バージョンのスキンがデバイス固有のスキン内で見つからなかった場合、アプリケーションでは指定したバージョンのスキンをプラットフォーム固有のスキン内で検索します。使用可能なプラットフォーム固有のスキン内で、指定したバージョンと一致するスキンが見つからない場合、アプリケーションではベース・スキンを検索します。
例9-2は、3つのスキン(customFamily-v1.iphone5,3
、customFamily-v2.iPhone5,3
およびcustomFamily-v3.iPhone5,3
)を参照するmaf-skins.xml
の例を示しています。これらの各スキンの<family>
要素は同じ値(customFamily
)になっています。<version>
要素の子要素の値によって、これらのスキンがそれぞれ区別されます。
実行時に、アプリケーションのmaf-config.xml
ファイルにおける<skin-family>
要素の値としてcustomFamily
が指定されたアプリケーションでは、customFamily-v1.iphone5,3
を使用します。これは、このスキンがmaf-skins.xml
ファイルでデフォルト・スキンとして構成されているためです。この動作は、「アプリケーションが使用するスキンの指定」で説明されているように、maf-config.xml
ファイル内の<skin-version>
要素に値を指定してオーバーライドできます。たとえば、maf-config.xml
ファイルの<skin-version>
要素の値としてv2
を指定すると、アプリケーションでは、maf-skins.xml
ファイルでデフォルト値として定義されているcustomFamily-v1.iphone5,3
のかわりにcustomFamily-v2.iPhone5,3
が使用されます。
(maf-config.xml
ファイル内の<skin-version>
要素を使用して)取得するスキンのバージョンを指定しない場合、アプリケーションはmaf-skins.xml
ファイル内の<default>true</default>
要素を使用してデフォルトとして定義されているスキンを使用します。デフォルトのスキンを指定しない場合、アプリケーションはmaf-skins.xml
ファイル内で定義される最後のスキンを使用します。例9-2において、定義される最後のスキンはcustomFamily-v3.iPhone5,3
です。
例9-2 バージョニングされたスキン・ファイルが含まれたmaf-skins.xmlファイル
<?xml version="1.0" encoding="UTF-8" ?> <adfmf-skins xmlns="http://xmlns.oracle.com/adf/mf/skin"> <skin id="s1"> <family>customFamily</family> <id>customFamily-v1.iphone5,3</id> <extends>customFamily-v1.iOS</extends> <style-sheet-name>iphone.css</style-sheet-name> <version> <default>true</default> <name>v1</name> </version> </skin> <skin id="s2"> <family>customFamily</family> <id>customFamily-v2.iPhone5,3</id> <extends>customFamily-v1.iOS</extends> <style-sheet-name>iphone-v2.css</style-sheet-name> <version> <name>v2</name> </version> </skin> <skin id="s3"> <family>customFamily</family> <id>customFamily-v3.iPhone5,3</id> <extends>customFamily-v1.iOS</extends> <style-sheet-name>iphone-v3.css</style-sheet-name> <version> <name>v3</name> </version> </skin> </adfmf-skins>
MAF AMXアプリケーションでは、MAF AMXとして実装されたアプリケーション機能に対して特定のスタイルを指定し、それによって、maf-config.xml
およびmaf-skins.xml
ファイル内のアプリケーション・レベルで設定されているデフォルトのスキン・スタイルをオーバーライドできます。アプリケーション機能に個別のスタイルを追加するには、CSSファイルを包含ファイルとして使用します。
maf-feature.xml
ファイルの概要エディタの「包含」表では、MAF AMXアプリケーション機能にCSSを追加できます。
図9-3 「包含」表
始める前に:
「タスク・フローの作成」の説明に従ってMAFタスク・フローを作成します。このスキンのCSSファイルを作成または追加します。ビュー・コントローラ・プロジェクトを選択し、「新規」→「CSSファイル」を選択してCSSファイルを作成できます。または、次のようにCSSファイルをJARファイルにパッケージ化することもできます。
メイン・メニューから「アプリケーション」→「プロジェクト・プロパティ」を選択します。
「プロジェクト・プロパティ」ダイアログで、「ライブラリとクラスパス」ページを選択し、「JAR/ディレクトリの追加」をクリックします。
「アーカイブまたはディレクトリの追加」ダイアログで、インポートするスキンが含まれているJARファイルに移動し、「選択」をクリックします。
JARファイルが「クラスパス・エントリ」リストに表示されます。
「OK」をクリックします。
アプリケーション機能にスタイル・シートを追加する方法:
「追加」をクリックして、「包含」表に新しい行を作成します。
「インクルードの挿入」ダイアログで、次のフィールドに値を入力します。
ファイル: 追加するCSSスタイル・シートを参照して選択します。
タイプ: ドロップダウン・リストから「スタイルシート」を選択します。
「OK」をクリックします。
注意:
選択したスタイル・シートの.CSS
ファイルがビュー・コントローラ・プロジェクト内に存在する必要があります。
maf-skins.xml
ファイルで定義されるCSSファイル(例9-3を参照)は、Apple iPhoneとiPadの異なる表示要件に適応するようにスキンを拡張する方法を示します。これらのスタイルは降順に適用されます。SkinningDemoサンプル・アプリケーションでは、アプリケーションを異なるデバイスにデプロイするときに、カスタマイズされたスタイルを適用できるようにする方法のデモが提供されています。このサンプル・アプリケーションは、開発用コンピュータのJDeveloperインストール・ディレクトリ内にある次の場所のPublicSamples.zip
ファイルに含まれています。
jdev_install/jdeveloper/jdev/extensions/oracle.maf/Samples
たとえば、iOSレベルでは、スタイルシート(例9-3
のmobileAlta)がiPhoneまたはiPadのどちらにも適用されます。デバイス固有のスタイル用には、iPhoneおよびiPadのスキンに対して<skin-id>
要素を定義します。スキニングのデモ・アプリケーションでは、この要素によって定義されたカスタム・スキンの使用方法が示されています。
例9-3 maf-skins.xmlファイルで定義されるスキニング・レベル
<?xml version="1.0" encoding="UTF-8" ?> <adfmf-skins xmlns="http://xmlns.oracle.com/adf/mf/skins"> <skin> <id>mobileAlta-v1.6.iPhone5,3</id> <family>mobileAlta</family> <extends>mobileAlta-v1.6.iOS</extends> <style-sheet-name>skins/mobileAlta-v1.6.iphone.css</style-sheet-name> </skin> <skin> <id>mobileAlta-v1.6.iPad iPad4,1</id> <family>mobileAlta</family> <extends>mobileAlta-v1.6.iOS</extends> <style-sheet-name>skins/mobileAlta-v1.6.ipad.css</style-sheet-name> </skin> <!-- Skin Additions --> <skin-addition> <skin-id>mobileAlta-v1.6.iPhone5,3</skin-id> <style-sheet-name>skins/mystyles.iphone.addition1.css</style-sheet-name> </skin-addition> <skin-addition> <skin-id>mobileAlta-v1.6.iPhone5,3</skin-id> <style-sheet-name>skins/mystyles.iphone.addition2.css</style-sheet-name> </skin-addition> <skin-addition> <skin-id>mobileAlta-v1.6.iOS</skin-id> <style-sheet-name>skins/mystyles.ios.addition2.css</style-sheet-name> </skin-addition> </adfmf-skins>
スキンを拡張するかわりに、CSSファイルを既存のスキンに追加できます。
新しいスタイルシートをスキンに追加するには:
警告:
DOM変更構造を使用するカスタム・スタイルを作成すると、MAFアプリケーションがハングする可能性があります。特に、display
プロパティでは、MAF AMXから変換されたHTMLでレンダリングに問題が発生します。このプロパティは、table
、table-row
、table-cell
などの値を使用してコンポーネントを表に変換しており、適切な親の表オブジェクト内に含まれていない表関連の構造が作成される可能性があります。この問題はアプリケーションのユーザー・インタフェース自体には表示されないことがありますが、ロギング・コンソールではSignal 10の例外によってレポートされます。
エンド・ユーザーが実行時に他のスキンを選択できるように、アプリケーションを構成できます。エンド・ユーザーが必要により適したスキンを使用して、アプリケーションをレンダリングできるようにする場合に、この機能を構成します。
図9-5では、ボタンを表示して、エンド・ユーザーが実行時にアプリケーションで使用されるスキンを変更できるようにすることで、この機能をどのように実装するかを示しています。ページ上のボタンを構成して、後からアプリケーションのmaf-config.xml
ファイルのskin-family
プロパティにより評価されるscope値を設定します。
図9-5 実行時におけるアプリケーションのスキンの変更(iOSの場合)
アプリケーションのmaf-config.xml
ファイルのskin-family
プロパティの値の更新を可能にするコンポーネントを公開することにより、エンド・ユーザーがアプリケーションのスキンを変更できるようにします。
エンド・ユーザーが実行時にアプリケーションのスキンを変更できるようにするには:
例9-4 アプリケーションのスキンを変更するためのマネージドBean
package application; import javax.el.ValueExpression; import oracle.adfmf.amx.event.ActionEvent; import oracle.adfmf.framework.FeatureInformation; import oracle.adfmf.framework.api.AdfmfContainerUtilities; import oracle.adfmf.framework.api.AdfmfJavaUtilities; import oracle.adfmf.java.beans.PropertyChangeListener; import oracle.adfmf.java.beans.PropertyChangeSupport; public class SkinBean { private String skinFamily = "mobileAlta"; private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this); public void setSkinFamily(String skinFamily) { String oldSkinFamily = this.skinFamily; this.skinFamily = skinFamily; propertyChangeSupport.firePropertyChange("skinFamily", oldSkinFamily, skinFamily); } public String getSkinFamily() { return skinFamily; } public void addPropertyChangeListener(PropertyChangeListener l) { propertyChangeSupport.addPropertyChangeListener(l); } public void removePropertyChangeListener(PropertyChangeListener l) { propertyChangeSupport.removePropertyChangeListener(l); } public void switchToMobileAlta(ActionEvent ev){ this.switchSkinFamily("mobileAlta"); } public void switchToMobileFusionFx(ActionEvent ev) { this.switchSkinFamily("mobileFusionFx"); } public void switchSkinFamily(String family) { this.setSkinFamily(family); // reset all the features individually as follows to load the new skin FeatureInformation[] features = AdfmfContainerUtilities.getFeatures(); for (int i = 0; i < features.length; i++) { AdfmfContainerUtilities.resetFeature(features[i].getId()); } } }
実行時に、エンド・ユーザーは公開されたコンポーネントを使用して、別のスキンを選択します。このコンポーネントは、エンド・ユーザーが選択した値をマネージドBeanに発行し、次にこれがマネージドBeanのプロパティ(skinFamily
)の値を設定します。実行時に、maf-config.xml
ファイルの<skin-family>
プロパティでは、EL式を使用してマネージドBeanから値を読み取ります。また、例9-4のマネージドBeanは、新しく指定したスキンを使用するアプリケーションに機能を再ロードします。
ヒント:
<skin-family>
プロパティと同様に、EL式を使用して、実行時にmaf-config.xml
ファイルの<skin-version>
プロパティの値を設定できます。