Mayaa

Struts2 + Mayaa

今、Struts2とMayaaを組み合わせてみてるんですが、 それぞれのバージョンは以下となります。 Struts2.1.6 Mayaa1.1.24 Strutsのtaglib.tldがうまく読めないみたいです。 taglibのversion指定のところでエラーになります。 まぁ、Strtusのtaglib使わないので…

MayaaでJavascript

Mayaaを触ってみた。最近Flex三昧だったので、久しぶり。 というのも、知り合いから以下のような質問をもらいました。 テンプレートに書いている、javascriptの中身を書き換える事って出来るの?Flashを呼び出す時に使うJavascriptのFlashVarsの変数を動的に…

テンプレートの拡張子を変える

テンプレートファイル名を「.template」にしたら正常に動かなくなった。 sugaさんにWEBコンテナにMIMEタイプの設定をしたらいいとアドバイスをもらい解決。 そういえば、MayaaのソースでContentTypeが「text/html」かどうか見てたのを思い出した。

テンプレートファイルへの直アクセス

MLでsugaさんからアドバイスを得たけど、forwardした時でないと有効ではないため無理でした。 結局、テンプレートの拡張子を変えることで対応することにしました。

メソッドが呼ばれない

以下のような場合に .java private String aHogeId; public void getAHogeId(){ return aHogeId; }以下のように呼ばないといけないのは仕様? .mayaa × ${bean.aHogeId} ○ ${bean.getAHogeId()}sugaさんのコメントに従って試してみました。 以下の記述で取得…

OutOfMemoryError

ERROR org.seasar.mayaa.impl.engine.error.TemplateErrorHandler 2007-06-09 14:35:35,182 [TP-Processor3] handled exception, PermGen space重たいページを開こうとしたらエラーが出た。 今までの経験だと「OutOfMemoryError」が出ると、APサーバー自体反…

おーっと

G社にコミッタが・・・

Dojo

素のHTMLだと表示されるけど、Mayaaを通すと出ない。 WEB-INF配下に置いているのが問題なのかな・・・ *.jsはMayaaServletで処理するようにしてるんだけど他に何か設定が必要? それと一つはまったこと。 下記のように書いたら表示されなかった。 × <script type="text/javascript" src="./js/dojo.js"/> ○ <scri</script>…

レイアウト共有

レイアウト共有時に、親ファイルに対する属性の書き換えを行いたいのですが、 現状では相当する機能はありませんよね? どういった場合に必要かというと、 レイアウト共有時は多分、bodyタグを親で持っていると思います。 bodyに対する onLoad 属性をあるペ…

attributeプロセッサ

要望 attributeプロセッサにもescapeXML属性を追加して欲しい。 <m:element name="span"> <m:attribute name="onClick" value="open('windowname')"/> </m:element>などとした場合に「'」がエスケープされてしまう。 でも、動いてるんですよね。 何か気持ち悪いのでescapeXML属性欲しいです。

ParameterAware

Mayaa Webwork2でParameterAwareが上手く動きません。訂正 Mayaa Webwork2で動かないのではなく、webwork2のParameterAwareとValidationInterceptorが上手く動いていないだけでした。これに関しては、Interceptorを使わずに内部で処理することで回避できます…

scriptタグ

target.html <script type="text/javascript"> <span id="script">dummy</script> </script> target.mayaa <m:write id="script" value="hogehoge"/>と書くと、置換されないようです。 elementを使ってscriptタグを書けるので何の問題もないのですが、一応気になったので。</m:write>

non webwork taglib

Mayaa標準タグで、各部品をコンポーネントとして作っておけば再利用できる。 いやぁ、Mayaaってよくできてるなぁ。 下記のように書いた場合、当然エラーとなります。 コンポーネントに渡したリストにアクセスするキーを渡してるのですが、 どうやってアクセ…

id

レンダリング後のid属性って消せましたっけ?

% と $ その3

ブレークポイントを付けて追っかけてみました。 「%」の場合は、タグ内でOGNL評価されます。 「$」の場合は、WebworkValueStackScopeでOGNL評価されたものが、更にタグ内でOGNL評価されています。 そのためStringの「1」をもう一度ONGL評価するとIntegerの「…

% と $ その2

昨日「プロパティkeyとvalueを持つオブジェクト」と書いて省略してましたが、 public class Dto{ private String key; private String value; /* getter/setter 略 */ }これだと、selected が key と同値である場合はきちんと「selected」となりました。※%の…

% と $

webworkのタグライブラリでは式言語を使うときに「%」を付けます。 MayaaResultを使うと、「$」を付けます。 基本的にこれらで取れる値は同じはずですよね? でも、違うみたいなんです。 試しに出力してみたんですけど、見た目は同じようなんですけど、 タグ…

MayaaResult ファイル欠損

http://mayaa.seasar.org/subprojects/index.html 公式サイトの上記ページからダウンロードできるjarですが、 META-INF内にあるべき下記2ファイルが含まれていません。 org.seasar.mayaa.cycle.CycleFactory org.seasar.mayaa.provider.ServiceProvider その…

MayaaResult

mayaa1.1.2ではhotodeploy中にMayaaResultが使えていたけど、 mayaa1.1.3から使えなくなった。 CycleUtil#getFactoryでIllegalStateExceptionが出る。

レイアウト共有

ちょっと画像が小さいですけど、右の図のような関係です。 一番上のがコンポーネントで、真ん中に対してアクセスします。 で、baseを共有します。 追記 doRenderでレンダリング範囲を決めて、それをinsertで入れる。 という理解であってますよね? doRender…

レイアウト共有

ドキュメントを見てると、 hello.html component.html layout.html の三つがありますが、コンポーネントはlayout.htmlに対して埋め込まれてます。 でもhello.htmlにコンポーネントを埋め込んで、その結果をlayout.htmlへ持っていけない。今、 hello.htmlにあ…

コミッタ増員

id:matobatさんがMayaaコミッタになられました。 よろしくお願いします。最近めっきり貢献できてないので、 サンプルやドキュメント作成のお手伝いをしたいなぁ。

Mayaa + Webwork2

id:matobatさんからどうなってますか? というツッコミが来たので、言い訳を・・・ 自分が作ってたときとAPIが変わっていて、今のAPIでは何もしてません。 matobatさんが作られたものを利用しています。 とりあえずMayaaのMLに、こういったフレームワークへ…

静的ファイル生成

今のMayaaってVelocityみたいに、HTMLファイル生成とかできないですよね? ResponseとServiceCycleを作ればできる?

Ifプロセッサ

・html <td id="class"><span id="data">データ</span></td> ・mayaa <m:echo id="class"> <m:if test="true"> <m:attribute name="class" value="hoge"/> </m:if> </m:echo>と書くと、中のspanが表示されない。 echo内のifを外すと表示される。 Ifプロセッサが悪さをしてるみたい。 ソース見たけど分かりませんでした。

rhino

Mayaaのタグのvalueに値を渡したときは、rhinoのスクリプトとして判断されるのか? それともscope別の処理が終わってからrhinoのスクリプトとして処理されるのか分からない。 下記のように書くとエラーになってしまうということは、先にrhinoスクリプトとし…

Scope

id:matobatさんのWebworkValueStackScopeをそのまま使ってみた。 おぉ、動く。 iterateAttributeNamesはこのScopeからアクセスできる名前リストを返せばいいのかな? となると、この場合はActionのプロパティとDtoのプロパティとなるのか? 何に使うんだろう…

変わってる

2.1.7 と 2.2.2 のProertyTagのソースを見たけど、変ってた。 継承しているクラスも変ってる。 2.2.2は最後にBodyの中身を吐いているっぽい。

default.mayaa

デフォルト設定にtaglibの定義をしたんだけど、引継がれない。 個別に設定すると動くのは確認した。 あれ? webworkのpropertyタグを使うと <span id="message">ダミー</span>と書いても、ダミーが消えない。

読む

久しぶりにソースを読んでみました。 今他人のソースを読む機会が増えたせいか、以前より追いかけるのが早くなっている自分を実感できました。 まだほんの触り程度くらいしか見てないですけど・・・