2013-04-09 107 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