Настройка JUEL не работает
Я попробовал два способа реализовать это.
Спецификации: 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)}'
Во-вторых, самое последнее, что я нашел, это этот. У меня были некоторые проблемы с конфликтующей версией javax.el, потому что импорт juel-api является собственным. Итак, я добавил в манифест juel-api эту строку.
Fragment-Host: javax.el
Затем,
Я добавляю ExpressionImpl из JUEL в конфигурацию MyFaces в файле web.xml.
<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 не загружается? что я пропускаю или делаю неправильно..
1 ответ
Изменен манифест javax.el, который использовался моим приложением.
1) Удалите старую версию javax и замените ее последней версией javax.el из jetty.orbit. 2) Сохраните зависимость от Джуэля, о которой я упоминал. 3) Добавить в свой Manifest.mf вашего проекта (веб-приложение) с этими пакетами
- javax.el.2.2.0.v201303151357
- Juel-апи
- Juel-реализ
4) Сложная часть: откройте javax.el.2.2.0.v201303151357 и откройте манифест этой банки. Затем добавьте эту строку, чтобы принудительно использовать javax.el из juel-api.
Fragment-Host: de.odysseus.juel-api