2013-04-09 106 views
0

我試過兩種方法來實現thisJUEL設置不起作用

規格: MyFaces的2.1.7 javax.el 2.1.0 的Webflow 2.3.1 Spring框架(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捆綁。

首先,我試圖用this old method一些傢伙編碼。當我嘗試運行它,我得到這個錯誤信息:

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)}' 

其次,最近我發現這是one。由於juel-api導入是自己的,所以我碰到了javax.el的衝突版本問題。所以,我在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沒有被加載?我錯過了什麼或做錯了什麼......

+0

你是從那裏下載的嗎?該版本是隻讀的。從這裏下載http://sourceforge.net/projects/juel/files/juel/juel-2.2/ – 2013-04-09 15:13:18

+0

設置它的指令在sourceforge pdf中給出http://juel.sourceforge.net/juel.pdf – 2013-04-09 15:23:00

+0

I從這裏得到我的http://mvnrepository.com/artifact/de.odysseus.juel(impl,api和spi) – fneron 2013-04-09 16:04:19

回答

0

更改了我的應用程序正在使用的javax.el的清單。

1)刪除舊的javax版本並將其替換爲javax.el的latest version from jetty.orbit。 2)保持我提到的Juel的依賴關係。 3)添加到您的項目(Web應用程序)的MANIFEST.MF在與束

  • javax.el.2.2.0.v201303151357
  • JUEL-API
  • JUEL-IMPL

4)棘手的部分:打開javax.el.2.2.0.v201303151357並打開此jar的清單。然後,添加此行以強制使用juel-api中的javax.el。

Fragment-Host: de.odysseus.juel-api