Here it is, I just zipped the Janino extension since it did not modify existing source code.
I also noticed that after a "for" loop in Cambridge, the "globals" map in eval keeps some variables. Perhaps you are setting them to "null" but you probably should simply remove them from the map.
Also, I did not test/handle the wrapExpressionAsList method in ExpressionLanguage. I didn't get a chance to figure out what that was/how it should work.
I'll send any improvements as I use it.
Tom