ひがやすを技術ブログ

電通国際情報サービスのプログラマ

S2JSF

RC1リリース

レイアウト機能を追加しました。 ブラウザを再起動しなくても常に最新の状態を表示するようになりました。 RC1に特に問題なければ、そのまま正式リリースにします。 RC1から正式リリースまでは特に機能追加はしない予定です。

Layout機能完成

後は、サンプルをLayout機能に対応させることだけ。 対応苦戦中(笑)。 どのページからでもメニューが呼び出せるので、すべてのページが同じディレクトリにないとうまくいかないため。 CSS使っているけど、IEとFirefoxで見えかたが、予想通り違うなぁ。(;_;) …

RC1のリリース予定

よほどのことがない限り明日リリースされるでしょう。 待望のレイアウト機能が盛り込まれます。 RC1に特に問題がなければ、そのまま正式リリースになります。

最新状態の反映

ブラウザを再起動する(セッションを新規に作る)ことなく、常に最新のHTMLの状態を反映するようになりました。もちろん、他のHTMLをインクルードした場合も。 これを実現しているJSFの実装は恐らくないんじゃないかと思います。 インクルード機能が実装されて…

warのままでデプロイ

RC1からwarを展開しなくても、S2JSFが機能するようになります(なるはず)。

JSP1.2対応

RC1からS2JSF自体は、JSP1.2に対応したWebコンテナ(例えばTomcat4.1)なら動作するようになります。

Invokeタグの廃止

Invokeタグを廃止して、htmlタグのaction属性で同様の指定を出来るようにします。これは、Invokeタグでレンダリング中にメソッドを実行して例外が発生した場合に、不完全な状態に陥って、JSFの実装に依存した解決策しかもてないことを解消するためです。 <html m:xmlns="http://www.seasar.org/maya" m:action="#{hogeInitAction.initialize}">見</html>…

JavaWorld

S2JSFがテンプレートエンジンとしてJavaWorldに取り上げられていましたね。あいがたいことです。2点だけ違っている部分があったので補足しておきます。 1つ目は、別にXHTMLに準拠してなくてもいいことです。準拠しているのに越したことはありませんが、仮に…

JSON-rpc-Java

pageの全リロードなしに、高いユーザビリティを実現とのこと。ふむ、よく使うGMailもajaxなwebアプリケーションなのね。なんか、体感・経験として納得。 * http://oss.metaparadigm.com/jsonrpc/ はやってますねajax。こういうのをベースにして、S2JSFのペー…

forEachによる更新

EA7からforEachを使った更新がサポートされます。h:dataTableはもう要らないかも。また、forEachを使ったボタンでf:paramも使えるようになります。ただし、これらの機能を使う場合には、itemsで指定するオブジェクトがセッションに格納されている必要があり…

XMLHttpRequest

http://www.baekdal.com/articles/Usability/XMLHttpRequest-guidelines/ http://antipop.zapto.org/docs/translations/ajax.html S2JSFでも取り込む予定。ajaxまで踏み込むかはわかりません。JavaScriptは使える分には便利に使うが、ないと動かないようには…

S2JSF moving to the world stage

石原さんのblogに、絶妙なタイミングで、取り上げていただきました。運命が与えてくれたチャンスを逃さないよう、努力したいと思います。 To Ishihara san's blog, he picked up with exquisite timing. In order not to miss the chance which destiny give…

EA6リリース

selectManyCheckbox,selectManyListbox,selectOneRadioを追加しました。 Actionへ自動でオブジェクトをImport,Exportする機能でInterceptorは不要になりました。 明示的にactionを指定しないと入力値が反映されないバグを修正しました。

Craigにプレゼン

幸運なことに、3/9の丸山先生レクチャーシリーズの懇親会で、Craig(JSF,Struts,Tomcatの偉い人)にS2JSFをプレゼンする機会が持てそうなので、CraigがS2JSFに興味を持ってもらえるようがんばります。 英語でプレゼンするのは初めてなので、かなりどきどきです…

S2JSF プラグイン0.0.1

http://www3.vis.ne.jp/~asaki/s2jsfplugin/org.seasar.s2jsfplugin_0.0.1.zip 今は、基本的な補完と、プレビュー、m:injectに存在しないタグを指定したときのバリデーション。必須属性のバリデーションが効くようになっているようです。 さぁ、みんなで使っ…

インジェクションされるタグを知る方法

S2JSFでは、HTMLのタグにJSFのタグが自動的に割り当てられますが、どのタグがあり当てられるのかを知るには、NekoHTMLのSAX Parser機能を使って次のようにします。 NekoHTMLでなくても、HTMLをSAXで処理できるものなら大丈夫です。 public void startElement…

ブラウザの戻るボタン

ひがさんのところで書かれているJSFでブラウザの戻るを使ったときの挙動ですが、手元にあったSunのRI(1.1)とIBM実装(1.0)でちょっと実験してみたところ、これらは両方とも普通に再実行が出来ました。 SunのRI(1.1)とIBM実装(1.0)は大丈夫らしいです。

戻るボタン

MyFacesの実装は、ブラウザの戻るボタンが考慮されてないですね。 例えば、一覧画面でリンクをクリックして編集画面に行き、戻るボタンで一覧画面に戻ったとします。 そこで、リンクをクリック(クリック1)すると、ユーザはもちろん編集画面に行くことを期待…

コミッタ申請

たけぞうさんをS2JSFのプラグイン開発のコミッタとしてむかいいれる申請をしました。 既にHTMLEditorPlugin、StrutsIDE、FacesIDEなどの開発をされていて、S2JSF用にかなりの機能を流用できるのではないかと思っています。 コミッタの方、投票よろしくお願い…

EA4 完成

従業員管理アプリケーション、今は、修正だけだけど、新規、削除、照会を組み込むかちょっと考えよう。 MyFaces1.0.7のinputTextは、rendereredで切り替えると値を更新してくれなくなるみたい。ということは、employeeEdit.htmlを新規と訂正で共用することが…

EA4の状況

S2JSF EA4自体は出来ていて、今、従業員管理アプリケーションをEA4用に移植中。

EA4のリリース予定

EA4は、明日リリースします。 あと少し、確認したいことが残っているのですが、今日はもう疲れました。m(_ _)m 昼過ぎくらいを予定しています。

Layoutその2(仕様案)

S2JSFの場合、Viewのコンポーネントの考え方は、Mayaのようなtaglibというわけではなく、includeの延長なので、やはり、仕様は、Tilesっぽくしたいと思います。 Tilesはinsertで定義してputで上書きしますが、S2JSFはinsertで定義も上書きもするところが違い…

LayoutとViewのコンポーネント

上記のように訂正。 まさたかさんのコメントを受けて、Viewのコンポーネントは、Maya風にしました。Maya風と書いているのは、Mayaのようにt:hoge.htmlのようにプレフィックスはつけないためです。レイアウトの継承をサポートするなら、Viewのコンポーネント…

レイアウトの継承とViewのコンポーネントの仕様案

基本的に、makotan案ベース。 まず、Viewのコンポーネントですがinsertタグを使ってコンポーネントを読み込みます。paramタグでパラメータも渡せます。paramタグだけではなく、request,sessionのattributeで渡すことも出来ます。 <span m:inject="s:insert" m:src="myComponent.html"> </span>

レイアウトの継承

kunitさんにレイアウトの継承について、幾つかヒントをもらいました。Viewのコンポーネントはやるとして、レイアウトの継承もきちんと考えて見たいと思います。 この辺のフレームワークというとTilesが有名なわけですが、Tiles面倒なんだよなぁ。

Viewのコンポーネント

先程、継承の話を書いたのですが、いろいろな意見(makotanのしかまだ見てないけど)を見てると継承というよりは、コンポーネントを使うようにしたほうがよさそうです。というわけで(どんなわけで)、コンポーネント形式にしたいと思います。属性を使う方法(May…

EA4の予定

連休中(8,9,10)のどこかでリリースします。また、EA4なのは、継承機能の仕様がまだ固まってないためです。 S2JSFにおける継承とは、もとのページを継承してレイアウトを受け継ぎ、その一部だけを置き換える機能です。 例えば、レイアウト用のHTMLでヘッダ、…

converter.html

http://d.hatena.ne.jp/makotan/20041228#p3 で謎だとされている <input type="button" value="戻る" m:action="home" onclick="location.href='../index.html'" m:immediate="true"/> を解説しましょう。PrefixはEA2ではsですが、今の仕様はmなので、EA2を見ている人は置き換えてください。 上記のタグは、S2JSFが解釈すると <commandButton value="戻る" action="home" immediate="true"/> となりま…</commandbutton>

s2jsf-example

の従業員メンテナンスで、修正機能しかないのは、からさわぎに間に合わなかったためです。EA4では、新規・削除・照会も追加されます。