[mayaa-user:633] Re: [mayaa]複数のmayaaファイルをデフォルトにしたい
[E-MAIL ADDRESS DELETED]
[E-MAIL ADDRESS DELETED]
2008年 2月 20日 (水) 12:46:42 JST
片岡です。
sugaさん、小黒さんありがとうございます。
>ファイルは同じ階層に置く必要があり、ファイル名はサフィックスのみ
>異なるようして作り分ける形になります。
結論からいうと、この「同じ階層」というのが最大のネックです。
ユーザ要件の部分を詳しく書きますと、イメージはASPサービスのイメージ
です。なので、Aアクション/aaa/bbb/の部分は、{顧客ID}/{テンプレートID}
になります。
Aアクション/{顧客ID}/{テンプレートID}ディレクトリに対して、ページ製作者が
自由にファイルをアップし、お客さん毎に動的に画面のデザインを切り替えると
いうのがやりたいことです。
〜テンプレートは顧客毎に複数用意できるので、2階層のディレクトリになって
います。
AアクションやBアクションは、たとえば、会員登録のアクションだったり、
購買申し込みのアクションだったりします。
HTML制作は、顧客、テンプレート毎に別々なので、決めているディレクトリに
そった形でHTMLおよび、コンテンツのGIF/JPGなどをおいておいてもらうと、
自動的に、お客さんオリジナルの画面が表示されるというようなことが実装
したいことです(というか今はCGIを利用してやっていることです)。
〜HTML納品手間および画像ファイルなどの一元化のため、運用上、
「顧客ID」/「テンプレートID]ディレクトリに、index.hmltや●●.gifを
おいてもらうという形にしたいです。
なので、sugaさん、小黒さんのアドバイスでは要件が実現できなそう
でした。
>> どうしても別のディレクトリのもので同じ Mayaa を使いたいという
>> 場合、独自の実装を作ってエンジン設定で実装クラスを入れ替える
>> しかありません。
すみません。これをやろうとすると、どのあたりをいじることになりますか。
既存のソースをいじることなく、「エンジン設定で実装クラスを入れ替える」
ことは可能なものですか。
上記方法があまりに難しそうであれば、最悪、sugaさんのアドバイスにあ
った全部 default.mayaa に記載するか、あんまりやりたくないけど、ディレ
クトリ作成を検地して、.mayaaファイルをバッチ生成するか、など考えたい
と思います。
〜ウーン、でもやりたくないなー。
>-----Original Message-----
>From: [E-MAIL ADDRESS DELETED]
>[mailto:[E-MAIL ADDRESS DELETED]] On Behalf Of Yasuhiro Oguro
>Sent: Wednesday, February 20, 2008 10:29 AM
>To: [E-MAIL ADDRESS DELETED]
>Subject: [mayaa-user:632] Re: [mayaa]複数のmayaaファイルをデフォルトにし
>たい
>
>
>お疲れ様です。小黒です。
>
>書いている途中でレスが来てたので、
>もう解決したかもしれませんね。
>
>色々設定が必要だった気がしますが、仮に
>http://eclipse.sakura.ne.jp/patternA.do?directory=/aaa/
>というURLにPOSTするとして、
>/WEB-INF/html/aaa.html
>/WEB-INF/html/aaa.mayaa
>を作ってaaa.mayaaのタグ宣言で<m:mayaa
>extends="/WEB-INF/html/A.html"> ...
>にして、
>/WEB-INF/html/A.html
>/WEB-INF/html/A.mayaa
>に定義を書くとかいう感じでどうでしょうか?
>あとはリクエストが
>http://eclipse.sakura.ne.jp/aaa/
>できたらindex.htmlのmetaタグで↓にフォワードするとか・・・
>http://eclipse.sakura.ne.jp/patternA.do?directory=/aaa/
>
>bbb.html以下の場合は列挙します
><m:mayaa extends="/WEB-INF/html/A.html">で構成するカテゴリ
>http://eclipse.sakura.ne.jp/patternA.do?directory=/aaa/bbb/
>/WEB-INF/html/bbb.html
>/WEB-INF/html/bbb.mayaa
>http://eclipse.sakura.ne.jp/patternA.do?directory=/ccc/ddd/
>/WEB-INF/html/ddd.html
>/WEB-INF/html/ddd.mayaa
>
><m:mayaa extends="/WEB-INF/html/B.html">で構成するカテゴリ
>/WEB-INF/html/B.html
>/WEB-INF/html/B.mayaa
>http://eclipse.sakura.ne.jp/patternB.do?directory=/ddd/eee/
>/WEB-INF/html/eee.html
>/WEB-INF/html/eee.mayaa
>http://eclipse.sakura.ne.jp/patternB.do?directory=/fff/
>/WEB-INF/html/fff.html
>/WEB-INF/html/fff.mayaa
>http://eclipse.sakura.ne.jp/patternB.do?directory=/ggg/hhh/
>/WEB-INF/html/hhh.html
>/WEB-INF/html/hhh.mayaa
>
>以上 宜しくお願いします。
>---
>NEEC System Technology Co.,Ltd.
>Y.Oguro <[E-MAIL ADDRESS DELETED]> ☆.。.:*・°
>
>On Wed, 20 Feb 2008 08:22:37 +0900
>suga <[E-MAIL ADDRESS DELETED]> wrote:
>> > ・あるACTIONには複数のHTMLファイルが必要。
>> > 〜動的な取得項目に関しては一律だが、デザインは自由に変えたい。
>> > 〜ユーザに自由にアップ(一定のネーミングルールでUPさせる前提
>> > ですが)させる運用にしたいため、mayaaファイルを1つのものと
>> > したい。
>>
>> 一番近いのはテンプレート切り換え機能を使うことですね。
>> http://mayaa.seasar.org/documentation/template_suffix.html
>>
>> ファイルは同じ階層に置く必要があり、ファイル名はサフィックスのみ
>> 異なるようして作り分ける形になります。
>>
>>
>> > 【イメージは以下です】
>> > リクエルト 読込HTML 適用mayaaファイル
>> > ------------------------------------------------------------
>> > Aアクション/aaa/bbb/ aaa/bbb.html A.mayaa
>> > Aアクション/aaa/ aaa.html A.mayaa
>> > Aアクション/ccc/ddd/ ccc/ddd.html A.mayaa
>> > Bアクション/ddd/eee/ ddd/eee.html B.mayaa
>> > Bアクション/fff/ fff.html B.mayaa
>> > Bアクション/ggg/hhh/ ggg/hhh.html B.mayaa
>>
>> Aアクション/* がすべて同じ Action クラスを使うということで
>> あれば、forward する先も同じ HTML ファイル名にし、何らかの
>> 条件で m:templateSuffix の値を変えるようにすれば、期待する
>> 動作になるのではないでしょうか。
>>
>> たとえばこんな感じになるでしょう。
>> aaa.mayaa
>> aaa.html
>> aaa$bbb.html
>> aaa$cccddd.html
>>
>> bbb.mayaa
>> bbb.html
>> bbb$dddeee.html
>> bbb$fff.html
>> bbb$ggghhh.html
>>
>> どうしても別のディレクトリのもので同じ Mayaa を使いたいという
>> 場合、独自の実装を作ってエンジン設定で実装クラスを入れ替える
>> しかありません。
>>
>>
>> おすすめはしませんが、プロセッサ (カスタムタグ) の数が少なければ
>> m:id がぶつからないようにして全部 default.mayaa に書くという手もありま
>す。
>>
>> --
>_______________________________________________
>mayaa-user mailing list
>[E-MAIL ADDRESS DELETED]
>https://ml.seasar.org/mailman/listinfo/mayaa-user
>
mayaa-user メーリングリストの案内