Gusuku

ガリガリと

優先度(Priority)に似た機能の状況(Status)・状態対応(Resolution)・タイプ(Type)をコピペで作る。こんな作り方だとリファクタリングの対象だなとも思いつつ・・・ はぅ・・・ 仕事場からUSBメモリにソースをコピーしたのにコピーされてなかった。orz 今週末…

ファイルアップロード

昨日のサンプルではファイルがアップロードされません。 原因はすでに消えているテンポラリファイルを移動しようとしてました。

階層

webwork2のアクションは名前さえ合ってればどの階層からも呼べるのですが、 (上の例だと/Gusuku/PriorityList.actionでも呼べる) 違う階層で呼ぶとcssとかイメージが上手く読めなくなるみたい。 原因を調べないと。

サンプルUP

Wikiの方にサンプルをUPしました。 ファイル名は「GusukuSample.zip」です。 jarはs2-xworkだけ入れてます。 実行する前にWEB-INF/bin/runServer.batを走らせてください。 webwork.propertiesの書き部分を書き換えてください。 webwork.multipart.saveDir=D:…

新記述へ変更

サンプルで作ってたのを新記述へ変更。 が、速攻でつまる。 web.xmlに定義していたTaglibはどうやってmayaファイルに記述すればいいのだろう? 追記 http://〜の形式で書いてないとだめだったみたい。 それと、前はtaglibの定義をdefault.mayaに書いておけば…

pageディレクティブ

JSPでいう下記のような設定はどうやればいいのだろう・・・ <%@ page buffer="16" autoFlush="true" %> カスタムダグをイテレータでぶん回してたら途中で表示が切れた。 「JSPバッファがオーバーフローしました」って怒られちゃう。 試しにカスタムタグ内でp…

OGNL

OGNLで三項演算子で下のように書いたらエラーになった。 description == ''? '&nbsp;' : description&が入るとだめっぽいなぁ もう少し調べてみよう。 追記 OGNLじゃなくてMaya側のパース時にエラーになってるみたい。 これもだめだった。 <tag id="test" inject="c:out"> <binding name="value" value="&nbsp;"/> </tag>

はまった

全然mayaファイルが反映されなーいって思ってたら、 priority_list.mayaって感じで「_」が入ってた。 すみません、「suffixSeparator」ってどういうときに使うのですか? 追記 仕様の理解不足でした。

うむぅ

バインディングしたタグが何も出力しない場合は、 idを振ったタグ自体を消すことって難しいのかなぁ・・・ テーブルでリストを出力するときに下記のように書きます。 <table> <tr> <td>ヘッダー</td> </tr> <tr id="nodata"> <td>データがありません</td> </tr> <tr id="loop"> <td>要素</td> </tr> </table><tag id="nodata" inject="c:if" replace="false"> <binding name="test" value="データが無い"/> </tag>

今後

Gusukuの配布ってどうすればいいんだろ? jarを除いて配布するのはいいけど、動くまでに相当時間かかるはず。 sugaさんも再現させるまでに時間かかったみたいだし。 ある程度できてから考えればいいか。

動いた

まさたかさんが対応してくれたみたいです。

あれ?

最新のCVSから取ってきてビルドしたら動かなくなった。 jarも二つに分かれてるみたい。 maya-**.jar maya-standard-**.jar なんとなくTLD辺りで動かなくなってるっぽいなぁ。 web.xmlで <taglib> <taglib-uri>webwork</taglib-uri> <taglib-location>/WEB-INF/lib/webwork-2.1.7.jar</taglib-location> </taglib>って書いてると、jarをTLDと…

Webwork2のタグライブラリ

今までテストでJSTLのifとか使ってたけど、 Webwork2にもifがあって、そっちだと暗黙的にactionオブジェクトを利用できるみたいです。 気づくのおせぇー カスタムタグとかExpressionResolverとか作る必要なかったみたい。 でも、簡単に拡張できることが分か…

マジックカスタムタグ

マジックカスタムタグを自作してみたけど、うまく動かない。 今日は疲れたから明日にしよう。

0.9

CVSから最新のソース取ってきてビルドしたら、0.9だった。 私生活がいろいろ忙しくなりそうだけど、 Gusukuも3月中になんとか形にしたいなぁ。

直ってる

CVSから最新のソースを取って来たら文字化け直ってました。 ついでにDOCTYPEも対応してました。 いつもながら、早い対応。 Good Job!!

replace

.html <table> <tr id="loop"> <td id="userid">1</td><td id="name">名前1</td> </tr> <tr id="remove"> <td>2</td><td>名前2</td> </tr> <tr id="remove"> <td>3</td><td>名前3</td> </tr> </table> .maya <tag id="loop" inject="c:forEach" replace="false"> <binding name="items" value="${list}"/> </binding></tag>

ネスト

<ww:component template="/my/custom/component.vm"> <ww:param name="key1" value="value1"/> <ww:param name="key2" value="value2"/> </ww:component>ってどうやって書けばいいのでしょうか?

replace

早速試してみました。 バッチリです。 まさたかさんありがとうございます。 これでGusukuがまた一歩前進です。 追記 ループさせたときに途中の閉じタグが表示されていません。

要望

idをつけたタグですが、置き換えをせずに生かすことは可能ですか? 下記のようなループ時に <table> <tr> <td>1</td><td>名前1</td> </tr> <tr> <td>2</td><td>名前2</td> </tr> <tr> <td>3</td><td>名前3</td> </tr> </table>こう書きたい <table> <tr id="loop"> <td>1</td><td>名前1</td> </tr> <tr id="remove"> <td>2</td><td>名前2</td> </tr> <tr id="remove"> <td>3</td><td>名…</td></tr></table>

RequestDispatcher#forward

forwardで遷移したときにmayaが効きません。Filterの url-pattern を*.htmlにします。 context root に下記JSPを作ります。 ・dispatch.jsp <% String uri = "index.html"; request.getRequestDispatcher(uri).forward(request, response); %>このときにinde…

DOCTYPE

htmlにDOCTYPEを書いてたら、レンダリング後に消されてた。 デザイン変わっちゃう・・・

remove

Tapestryみたいに <span id="$remove$">削除されます</span>と書けるといいな。 いちいちmayaにremove書くの面倒なので。 追記 default.mayaに <remove id="remove"/>と定義しておけば、 <span id="remove">削除される</span>idがremoveのタグは全て削除されるみたいです。 これでテンプレート毎に書かなくてよくなった。</remove>

Implicit

試してみました。 ヘッダーとフッターを付けるようにしてみたけど問題発生。 ・header.html <table> <tr> <td>ヘッダー</td> </tr> <tr> <td>・footer.html </td> </tr> <tr> <td>フッター</td> </tr> </table>というのを作った場合に、出力されるhtmlは、 <table> <tr> <td>ヘッダー</td> </tr> <tr> <td> </td></tr></table> 本文 <TABLE> <tr> <td>フッター</td> </tr> </TABLE>ってなる。NekoHTMLが勝手に保管か…

属性値に空文字

下記のようにテンプレートに書いていた場合にNullPointerExceptionが出ます。 <input type="text" name="userid" value="">属性値が空文字だとエラーになるようです。 モックレベルで動かす場合には書かない場合もあると思います。 そのままidタグを付けて実装すると思うので、エラーになると困りますね…

仕様再確認

ずっと更新してないので今週は仕様の再確認をしよう。 初めからいろいろな物を詰め込まないで、シンプルな物からいこう。

S2Xwork

id:khiさんの日記ではid:wizardpに後を任せるような事が書かれていたのですが、 S2Xworkは現在誰がメンテナンスをしてるのだろう? 最新のモジュールがどれか良くわからない。

まだまだ「戻る」

セッションを使う方法は危険だということに気づいた。気づくのが遅い・・・ ブラウザの「戻る」とリロードを駆使されるとえらいことになりそうだ。 やっぱり安全なのはどこから来たかという情報を渡すしかないのか? っていうか、結局はサイト設計時にフロー…

ImplicitPage

早速 CVS update。 でサンプルを動かしてみる。 おぉー。 速攻でmayaファイル化してみた。 動かねぇー、っていうか書き方分かりません。

進捗バー

JIRAの進捗バーってどうやってんだろって見てみたら、 普通にtableタグで作ってた。 こっちの方が軽いしtableタグにしよう。 って先に気づけよ・・・