1

Mojarra 2.3.0-m02を使用しようとしています。JSF 構成ファイル faces-config.xml が JSF 2.3 と互換性があることを次のように確認します。

<?xml version='1.0' encoding='UTF-8'?>
<faces-config version="2.3"
              xmlns="http://xmlns.jcp.org/xml/ns/javaee"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
              http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_3.xsd">

</faces-config>

私は現在、1 つの XHTML ファイルと 1 つまたは 2 つのマネージド Bean (CDI) しか持たないおもちゃの空の遊び場プロジェクトに取り組んでいます。PrimeFaces、OmniFaces のような追加の依存関係はありません。

以下

<h:outputText value="contextPath : #{request.contextPath}"/>

null (空の文字列?)に評価されます。faces-config.xml ファイルを JSF 2.2 固有に戻すと、期待どおりに正しいコンテキスト パスが表示されます。

犯人は何ですか?(GlassFish Server 4.1 を使用しています)。


追加:

プロジェクトのマスター テンプレートで次のように使用しました。

<ui:param name="contextPath" value="#{request.contextPath}"/>

その後、アプリケーション全体のいくつかの場所contextPathで EL のように使用されます。#{contextPath}

4

1 に答える 1

2

まず第一に、JSF 2.3 は現在まだ「アルファ」(開発) 段階にあり、マイルストーン リリースが随時行われています。そのため、まだ完成していないものや、見過ごされているものもあると予想されます。それにもかかわらず、マイルストーン リリースのテストと問題の報告は非常に高く評価されます。

CDI を必要とする最初のバージョンとなる JSF 2.3 で変更されたことの 1 つは、すべての暗黙的な EL オブジェクトEL リゾルバーではなくCDI プロデューサーを介して解決されることです。これはまだ進行中の作業であることが判明しました。が欠落しているだけでなく、とりわけ、、さらには m02 で欠落しています。#{request}#{header}#{initParam}#{param}#{cc}#{component}

それはおそらく次のマイルストーンで来るでしょう。

于 2015-05-05T07:09:10.607 に答える