読者です 読者をやめる 読者になる 読者になる

Mojarra (the JSF RI) 2.0 EDR1 Released

JSF


Mojarra Teamは Mojarra (the JSF RI) 2.0 EDR1をリリースしました。

https://javaserverfaces.dev.java.net/servlets/ProjectDocumentList?folderID=9437&expandFolder=9437&folderID=0


JSF2EDRは以下の新機能を含んでいます

Integrated support for resource management and resource re-location

Support for different project stages (dev, production, etc.)

A powerful new event system

Initial support for an Ajax API (for use by component vendors, for the most part)


ResourceManagerとAjax APIが個人的には気になっています。



Teedaの方でも、現在進行中JSF1.2対応においては多少参考になると思います。



JSFのソースを読むには、JSFの肝のLifecycleを押さえればOKでしょう。
JSFのLifecycleさえ覚えてしまえば、もうJSF達人でモテモテですね。

実際のファイルはcom.sun.faces.lifecycle.LifecycleImpl.javaで抜粋すると

    // The set of Phase instances that are executed by the execute() method
    // in order by the ordinal property of each phase
    private Phase[] phases = {
        null, // ANY_PHASE placeholder, not a real Phase
        new RestoreViewPhase(),
        new ApplyRequestValuesPhase(),
        new ProcessValidationsPhase(),
        new UpdateModelValuesPhase(),
        new InvokeApplicationPhase(),
        response
    };

・・・

    // 実際に実行するところ
        for (int i = 1, len = phases.length -1 ; i < len; i++) { // Skip ANY_PHASE placeholder
            if (context.getRenderResponse() ||
                context.getResponseComplete()) {
                break;
            }
            phases[i].doPhase(context, this, listeners.listIterator());
        }

このへんから追いかけるのが分かりやすいと思います。


com.sun.faces.vendorパッケージの以下のクラスも気になります。

GlassFishInjectionProvider.java

Jetty6InjectionProvider.java

Tomcat6InjectionProvider.java

WebContainerInjectionProvider.java

気づいた点はjava.net projectの方へフィードバック可能です。



という事で元気の有り余ってる人は、天気の良い今日JSFを追っかけてみてはいかがでしょう?