List of usage examples for javax.servlet.jsp.el Expression evaluate
public abstract Object evaluate(VariableResolver vResolver) throws ELException;
From source file:io.undertow.test.jsp.expression.ExpressionJspTestCase.java
public static void evaluate(JspWriter out, PageContext pc, String qualifiedMethodExpression, String unqualifiedMethodExpression, String variableExpression) throws Exception { assert pc != null; TSFunctionMapper mapper = new TSFunctionMapper(); ExpressionEvaluator eval = pc.getExpressionEvaluator(); VariableResolver resolver = pc.getVariableResolver(); assert eval != null : "Unable to obtain ExpressionEvaluator"; Expression expr = eval.parseExpression(qualifiedMethodExpression, java.lang.String.class, mapper); assert expr != null; String result = (String) expr.evaluate(resolver); if (result != null) { if (result.equals("string")) { Expression expr2 = eval.parseExpression(variableExpression, javax.servlet.jsp.PageContext.class, null);/*from w w w . j a v a 2 s . co m*/ if (expr2 != null) { PageContext pageContext = (PageContext) expr2.evaluate(resolver); if (pageContext != pc) { out.println("Test FAILED. Resolution didn't return expected value."); out.println("PageContext returned is not the same instance as expected."); } Expression expr3 = eval.parseExpression(unqualifiedMethodExpression, java.lang.String.class, mapper); if (expr3 != null) { result = (String) expr3.evaluate(resolver); if (result != null) { if (result.equals("string")) { out.println("Test PASSED"); } else { out.println("Test FAILED. (l3) Expression evaluation returned unexpected value."); out.println("Expected 'string', received '" + result + "'"); } } else { out.println("Test FAILED. (l3) Expression evaluation returned null."); } } else { out.println("Test FAILED. (l3) ExpressionEvaluator.parseExpression" + " returned null."); } } else { out.println("Test FAILED. (l2) ExpressionEvaluator returned null."); } } else { out.println("Test FAILED. (l1) Expression evaluation returned unexpected result."); out.println("Expected 'string', Received '" + result + "'"); } } else { out.println("Test FAILED. (l1) Expression evaluation returned null."); } }
From source file:gov.nih.nci.cabig.caaers.utils.el.EL.java
public String evaluate(String input) { try {/*from w ww . j a v a 2s . co m*/ StringReader rdr = new StringReader(input); ELParser parser = new ELParser(rdr); Object result = parser.ExpressionString(); if (result instanceof String) { return (String) result; } else if (result instanceof Expression) { Expression expr = (Expression) result; result = expr.evaluate(this.resolver); return result == null ? null : result.toString(); } else if (result instanceof ExpressionString) { Expression expr = (Expression) result; result = expr.evaluate(this.resolver); return result == null ? null : result.toString(); } else if (result instanceof BinaryOperatorExpression) { BinaryOperatorExpression expr = (BinaryOperatorExpression) result; result = expr.evaluate(this.resolver, this.mapper, null); return result.toString(); } else if (result instanceof BooleanLiteral) { BooleanLiteral expr = (BooleanLiteral) result; result = expr.evaluate(this.resolver, this.mapper, null); return result.toString(); } else { System.out.println("Incorrect type returned; not String, Expression or ExpressionString"); return ""; } } catch (ParseException pe) { throw new RuntimeException("ParseException thrown: " + pe.getMessage(), pe); } catch (ELException ele) { throw new RuntimeException("ELException thrown: " + ele.getMessage(), ele); } }