2004-11-16から1日間の記事一覧

-打合せ

ぐるぐるマーク社より帰る。提案プロトコルのシーケンスがポリシーにあわないということでシーケンスを書き直しの宿題。今日は予定がいっぱい(からさわぎの資料を書くのですが。。。)なので明日中ということで調整。

-JSPのTAGファイルとフラグメント

JSP2.0の新機能のJSPのTAGファイルおよびフラグメントといった一連はテンプレートのコンポーネント化仕様のところで、取捨したいと思います。アプローチが違うといえばちがうのですが、目を細めてみるとおんなじに見えるんじゃないかなと思います。。。乱暴…

-非インジェクションメタ

<img src="#{model.src}" alt="photo image" width="100" height="60"> このように、コンポーネントがインジェクションされてないタグも、属性に式言語を使えるようにする都合、パースしてメタモデルにします。 <element name="img"> <binding name="src" value="#{model.src}" type="java.lang.String" eval="true"/> </binding></element>

-Ignorable Whitespace

SAX的なignorableWhitespaceはちょっと考えてしまう内容です。メタXMLでの視認性を考えると、以下のように空白を検知した際に可視モデルに変換しちゃおうかなと。ただ、ちょっと怪しげなので要再考。 <whitespace>%20%20%20%20%20%20%20%20%10%13</whitespace> ダサいかな?

-コメント

コメントはメタでは単純な置換えで持っていきたいと思います。が、一点工夫。 とあるのを、 <comment> <text>ページ作成日%20</text> <expression value="#{new java.lang.Date()}"/> <text>%20by%20Maya</text> </comment> ここでURLエンコーディングしていいかは要検討。JSPコメントならず、Mayaコメントはとりあえずなし。もしコメントを書くけど、出…

-マジックコンポーネント

過去のBLOGを総ざらいするに、以下のマジックコンポーネントを定義検討中です。 基本 #taglib #remove 拡張(テンプレートコンポーネント化) #export #parameter #contents #body 簡易Beanジェネレータ #model 式言語に併せて、#をプリフィックスするように…

-id属性

コメントでひがさんからご指摘いただきましたが、Mayaではインジェクションするための属性をひとつ用意しないといけません。それがはじめはjwcidとしたのを、tagid -> idとしましたがまたtagidに戻すかも。 マジックコンポーネントは全部、プリプロセスで無…

-基本マジックコンポーネントメタ

基本マジックコンポーネントのたたき台。id属性は仮に続行でつかってます。 taglib <meta id="#taglib" prefix="h" url="http://java.sun.com/jsf/html"> <taglib element="meta" prefix="h" url="http://java.sun.com/jsf/html"/> 設定XMLでもいっしょ remove <span id="#remove"> <tr> <td>テストデータ</td> </tr> </span> <remove element="span"> <element name="tr"> <…</element></remove></taglib></meta>

-最重要属性inject

さて、ひがさんのコメントで霧が晴れたので仕様変更。たしかにMayaでこれまでid属性に割り当てた機能は、識別子ではなく、インジェクションの機能です。これまではこういう書き方でした。 1)これまでのやりかた: <span id="firstName@c:out">出力</span> <span id="#remove">削除</span> このidには、識別子(firstName)…

-ファイル配置

さて、ファイル配置です。WEBアプリケーション内の配置を考える前に、ページ単位での可能性有るファイルはなにか。例として、sample_maya.htmlをURLから閲覧することとします。 sample_maya.html テンプレート1 sample_maya_ja.html テンプレート2 sample_…

-拡張マジックコンポーネントメタ

#export テンプレート表記: <meta inject="#export" name="border" url="http://www.foo.co.jp/taglib"> メタ: <export element="meta" name="border" url="http://www.foo.co.jp/taglib" output="false"/> #parameter テンプレート表記: <meta inject="#parameter" name="year" type="int" required="true"> メタ: </meta></export></meta>

-#group

マジックコンポーネント中、#groupを忘れていました。 #export テンプレート表記: <span inject="#group"> <input inject="h:inputText" type="text" value"#{model.value}"> <span inject="f:validateLength" maximum="64" minimum="1"></span> </span> メタ: <component element="input" prefix="h" component="inputText" grouping="true"> </component>

-#model保留

#modelはもうすこし考えます。はじめはjsp:useBeanのような機能を作ろうと思いましたが、何度考えてもしっくりこない。The Seasar Projectでもありますから、S2Containerからコンポーネントがとれればいいのです。他の使い方はわざわざしません!ですから、B…

-メール通知

トラックバックをメール通知するように設定しました。これまでそういう設定をしていなかった(しらなかった)のですが、ふと、コメントにメール送信があるから、きっとそういう機能が必ずあるはずだと風呂で気がついたので、「設定」をしらべたらやはりあり…

-meta2java

メタXMLの話が出て、とまどわせたかもしれません。このメタXMLはMayaがそういうファイルを作るということではないのですよ。念のため。SAXのイベントを表記しているだけです。まずこのメタXMLはプラグインサポート時のモデルとなります。このモデルを利用し…

-Mayaドキュメント

さて、BLOGですすめている作業ですが、WordにBLOGをざくっとコピーしたものを再編集して読み物に仕立てる予定です。今日の時点で、Wordに時系列順にコピーして文字のポイントを9ptにしたら、A4サイズで32ページになりました。途中たわごとや迷いがあるのを削…