diff options
Diffstat (limited to 'pdf-as-common/src/main/java/at/gv/egiz/pdfas/common/utils/OgnlUtils.java')
-rw-r--r-- | pdf-as-common/src/main/java/at/gv/egiz/pdfas/common/utils/OgnlUtils.java | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/pdf-as-common/src/main/java/at/gv/egiz/pdfas/common/utils/OgnlUtils.java b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/common/utils/OgnlUtils.java index e98cb124..4afb8932 100644 --- a/pdf-as-common/src/main/java/at/gv/egiz/pdfas/common/utils/OgnlUtils.java +++ b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/common/utils/OgnlUtils.java @@ -1,6 +1,9 @@ package at.gv.egiz.pdfas.common.utils; +import ognl.Ognl; import ognl.OgnlContext; +import ognl.OgnlException; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -16,7 +19,20 @@ public class OgnlUtils { private static final Logger logger = LoggerFactory.getLogger(OgnlUtils.class); public static String resolvsOgnlExpression(String expression, OgnlContext ctx) { - // TODO! + try { + Object value = Ognl.getValue(expression, ctx); + String valueString = value.toString(); + if(valueString.startsWith("[")) { + valueString = valueString.substring(1); + } + if(valueString.endsWith("]")) { + valueString = valueString.substring(0, valueString.length() - 1); + } + return valueString; + } catch (OgnlException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } return expression; } } |