问题标签 [juel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 非servlet JSP
我意识到有 EL 和接近 EL 框架,例如 StringTemplate、JUEL、Velocity 等。但是,我并不是要列出 JSTL/EL 的替代方案。
一年多前我遇到了一个包,有人编写了一个实用程序来模拟非servlet env 的JSP 功能,即不需要“servlet 容器”来运行的JSP 组合。
我忽略了它,现在我认为它对我有帮助,我需要帮助来回忆它是什么。
我的实际动机类似于 StringTemplate、JUEL、Velocity 提供的帮助我编写 SQL 块、HTML 块的方法,但我认为 JSP 被预编译为字节码,并且 JSP 的运行时效率更高,因为不再进行运行时解析不止一次。
所以实际上,只要模板被预编译成字节码,对替代方案的推荐是可以接受的。但我还是更喜欢 JSP 模拟器。
el - 列出 EL 表达式中的自由变量
我有一个应用程序,其中包含一些用于编程配置的 EL 评估。给定一个 EL 表达式,我想在不实际评估它的情况下获得它包含的自由变量。目的是提供一个 UI,最终用户可以在按下“评估”按钮之前将值绑定到自由变量。
不幸javax.el.ValueExpression
的是不提供这个功能,所以我可能需要使用特定于供应商的 API。它还处于开发的早期阶段,所以我还没有确定我的实现选择。我想到了 MVEL、JUEL 和 SpEL,但当然我选择的任何东西都应该具有我上面描述的功能。
spring - JUEL 设置不起作用
我尝试了两种方法来实现这一点。
规格:MyFaces 2.1.7 javax.el 2.1.0 WebFlow 2.3.1 Spring Framework (OSGI)
首先,添加依赖。
然后我将捆绑包附加到我的应用程序的 manifest.mf 中。
首先,我尝试使用一些人编码的这种旧方法。当我尝试运行它时,我收到以下错误消息:
其次,我最近发现的是这个。我对 javax.el 的冲突版本有一些问题,因为 juel-api 导入是自己的。所以,我在 juel-api manifest 中添加了这一行。
然后,
我将来自 JUEL 的 ExpressionImpl 添加到 web.xml 中的 MyFaces 配置中
不幸的是,我收到以下日志消息:
这告诉我们 JUEL 没有被加载?我错过了什么或做错了什么..
expression-evaluation - juel 表达式验证(与 Janino 相比)
调用所有 javax.el juel 专家:-)
我们想使用 JUEL 来评估纯 Java 上下文中的表达式。这些表达式通常是数学表达式,由用户通过 ui 提供。另一个方面是这些表达式是配置的一部分,并且仅在稍后作为另一个过程的一部分进行评估。此外,表达式中使用的变量值仅在稍后作为此过程的一部分可用。因此,我们希望在表达式创建时向用户提供基本验证,以便用户知道他的表达式在评估时不会失败。
我们之前使用过 Janino,但我们正在用 JUEL 替换它 - 它更快(并且我们有很多评估要达到低谷,吞吐量很重要等)。此外,JUEL 使用完全相同的表达式语法 - 即我们可以将它插入后端并且它是向后兼容的。(只需添加${..}
旧的 Janino 表达式。
但是,我们对 JUEL 有一个问题 - 有什么方法可以在评估正在使用的表达式之前对其进行验证?
即这样的东西:
执行println(result)
然后正确打印出 3。
使用 Janino,我可以编写表达式 a+b,如果它格式错误或返回不正确的返回类型(即不是双精度),我会得到一个异常。然后我可以使用它来即时验证用户输入,并强制用户在保存配置之前纠正任何错误。
有什么办法可以用 JUEL 做到这一点?或者有人知道另一种方法吗?
谢谢,
卢卡斯
java - Java,如何在纯Java中使用表达式语言
我有一个 JavaEE Web 应用程序,因为它将部署到某种应用程序服务器,例如 weblogic websphere tomcat 等。所以 EL api 对我来说是可用的,但我不需要关心使用什么 EL 实现。
我想在我的 java 代码而不是 jsp 页面中使用 EL 来将一些简单的表达式转换为值常量,如下所示:
然而,在这个例子中,我使用了 JUEL 库,所以我需要访问 JUEL 实现类。我的问题是我怎么能做同样的事情,但只使用javax.el
包中的类?
我需要实现自己的ELContext
和VariableMapper
其他抽象类吗?
java - Working with different contexts with JUEL
I was working the expressions and trying to play with the contexts (the one we use at creation time and the one we use at evaluation time). Here is some code below that is trying to reproduce my needs and highlight the problem.
I setup a basic Maven project on https://github.com/laurentvaills/test-juel-expression to reproduce it .
Can you tell me why I got the following error : javax.el.PropertyNotFoundException: Cannot find property exchange ?
java - 尤尔数学
我在 java 上编程服务器,我需要在 JUEL 的帮助下使用数学。
例如 2*2+2 ,它会打印出结果 6。问题是,它不起作用。
这里有一个数学方法:
因此,我将操作作为字符串“8+5+4”并在控制台上打印出结果。
我可能以错误的方式使用 JUEL 吗?
jsf-2 - primefaces 5.2 中的表达式语言更改
使用 primefaces 5.1,在托管 bean 中只引用一个 getter 是没有问题的
改成 primefaces 5.2.2 我必须做
并提供一个 getter 和一个 setter。为什么?
例外:
我用的是JUEL EL,可能是这个问题?
java - 在 Camunda 中为流实现更复杂的条件
如何在流的条件下实现更复杂的表达式?简单的条件如:
方便且很棒,但有时我需要做一些更复杂的事情,例如:
假设是已经在流程实例中定义deadLine
的类型的对象,并且意味着。如何在流的条件下实现这样的表达式?在 Java 中,我可以:Date
now
new Date()
但是我怎样才能在流的条件下做同样的事情呢?
java - java.lang.ClassNotFoundException:de.odysseus.el.ExpressionFactoryImpl
我的应用程序正在使用 apache camel 和 spring。我在如下camel-context.xml 中显示的EL 表达式中遇到异常。in.body 是请求对象,它具有getParam() 方法。
我添加了依赖项
我仍然收到异常 java.lang.ClassNotFoundException: de.odysseus.el.ExpressionFactoryImpl
我进一步研究了使用 vm arg -verbose:class 加载的类,我发现加载了其他与 EL 相关的 jar
我没有在 pom 中指定它们,但仍然添加了这些罐子。我怎样才能删除它们?