I'm learning jBPM engine, and what I have noticed is that it uses MVEL dialect by default in process design. So the question is: what is the advantage of using MVEL instead of pure Java? Will I have troubles with more complex processes if I'll start to program them in Java?
Asked
Active
Viewed 1,463 times
2
-
1MVEL has a more concise syntax and is dynamic, but the last time I checked, it didn't even feature comments. I didn't bother to check what other features it may be missing. – Marko Topolnik Nov 22 '12 at 16:46
-
3MVEL definitely supports code comments. Both // line comments and /** **/ block comments. – Mike Brock Nov 23 '12 at 17:55
-
The [language guide](https://en.wikisource.org/wiki/MVEL_Language_Guide) shows off much of the short hand syntax. Another [reference here](http://stackoverflow.com/q/17259341/314291) – StuartLC Jul 12 '15 at 07:46
1 Answers
0
jBPM Documentations writes:
« Note that MVEL accepts any valid Java code and additionally provides support for nested access of parameters. For example, the MVEL equivalent of the Java call person.getName() is person.name. MVEL also provides other improvements over Java and MVEL expressions are generally more convenient for business users. »
-- jBPM Documentation
-- https://docs.jbpm.org/7.54.0.Final/jbpm-docs/html_single/#:~:text=Note%20that%20MVEL,for%20business%20users.
-- Wed Dec 08 2021
So the MVEL notation is:
- short;
- simple;
- (non-technical) user friendly.
There are situations where solutions in MVEL are intuitively simple, but in Java style complicated or unknown. See, for example:
How to call a setter method in the Data Assignments I/O in a jbpm task?

Dharman
- 30,962
- 25
- 85
- 135

Dmitry Kapinos
- 11
- 2