質問: タイプAPI APIはJSF 1.1の後に非推奨です。代わりにel-resolverを使用する 最近、WebSphere Portal v6.1からv7.0にアップグレードしました。その過程で、JSF 1.2が利用可能になりました。 Rad 8で新しいポートレットプロジェクトを作成するとfaces-config.xmlが次のエントリで作成されます ``` com.ibm.faces.application.DevelopmentStateManager com.ibm.faces.portlet.PortletVariableResolver ``` そして、それから、JSF 1.1の後にタイプAPI変数リゾルバは推奨されません。代わりにel-resolverを使用してください。 残念ながら、私はIBMのページで答えを見つけることができませんでした。 編集: ``` System.out.println("Resolver: " + PortalUtil.getFacesContext().getApplication().getELResolver()); ``` => Resolver: [email protected] faces-configにエントリを追加する ``` com.sun.faces.el.FacesCompositeELResolver ``` 変数リゾルバを削除してもしなくても、次のようになります。 ``` java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.context.FacesContextFactory at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:270) at javax.faces.webapp.FacesServlet.init(FacesServlet.java:164) at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:358) ... 89 more ``` IBMがオープンしたPMR ...
回答: PMRへのIBMの対応: Q - 警告を無視するとどうなるでしょうか? Ans - ユーザーは引き続き変数リゾルバを使用できますが、機能は影響を受けません。 [このタグは下位互換性のために維持されます] Q - 生成されたfaces-config.xmlは引き続き廃止予定のメソッドを使用していますか? Ans - 変数リゾルバを使用してポートレット変数を解決しています。これはJSF 1.2でもうまくいきます Q - ポートレット用のel-resolverがあるか、存在しますか? Ans - ポートレット用のel-resolverがあります。 JSFポートレット・ブリッジ2.0で提供され、WASのアップデートとして出荷されます。それは現在計画段階にあるので、私はあなたにこれが見つかる正確なバージョンを与えることはできません。