これを実装するために 2 つの方法を試しました。
仕様: MyFaces 2.1.7 javax.el 2.1.0 WebFlow 2.3.1 Spring Framework (OSGI)
まず、依存関係を追加しました。
<dependency>
<groupId>de.odysseus.juel</groupId>
<artifactId>juel-api</artifactId>
<version>2.2.6</version>
</dependency>
<dependency>
<groupId>de.odysseus.juel</groupId>
<artifactId>juel-impl</artifactId>
<version>2.2.6</version>
</dependency>
<dependency>
<groupId>de.odysseus.juel/groupId>
<artifactId>juel-spi</artifactId>
<version>2.2.6</version>
</dependency>
次に、アプリケーションの manifest.mf にバンドルを添付しました。
まず、誰かがコーディングしたこの古い方法を使用しようとしました。実行しようとすると、次のエラー メッセージが表示されます。
org.springframework.binding.expression.ParserException: Unable to parse expression string '#{extRuntimeAuthorityUserManager.addRuntimeAuthority(conversationScope.accessLayerModel.accessUser, T(com.common.identity.enums.ERuntimeAuthority).AUTHORITY_CHANGE_WORKING_INSTITUTION)}'
第二に、私が見つけた最新のものはこれです。juel-api のインポートが独自のものであるため、javax.el の衝突バージョンに問題がありました。そこで、juel-api マニフェストにこの行を追加しました。
Fragment-Host: javax.el
それで、
JUEL からの ExpressionImpl を web.xml の MyFaces 構成に追加します。
<context-param>
<param-name>org.apache.myfaces.EXPRESSION_FACTORY</param-name>
<param-value>de.odysseus.el.ExpressionFactoryImpl</param-value>
</context-param>
残念ながら、次のログ メッセージが表示されます。
MyFaces Bean Validation support enabled
JUEL がロードされていないことを示しているのはどれですか? 私は何が欠けているか、間違っていますか..