[jbpm-commits] JBoss JBPM SVN: r6453 - in jbpm4/trunk/modules/pvm/src: test/java/org/jbpm/pvm/internal and 1 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri Jul 2 23:49:45 EDT 2010


Author: rebody
Date: 2010-07-02 23:49:45 -0400 (Fri, 02 Jul 2010)
New Revision: 6453

Added:
   jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/el/
   jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/el/ResourceBundleELResovlerTest.java
Modified:
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java
Log:
JBPM-2892 support i18n in el

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java	2010-07-03 03:29:40 UTC (rev 6452)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/el/JbpmElFactoryImpl.java	2010-07-03 03:49:45 UTC (rev 6453)
@@ -30,6 +30,7 @@
 import javax.el.FunctionMapper;
 import javax.el.ListELResolver;
 import javax.el.MapELResolver;
+import javax.el.ResourceBundleELResolver;
 import javax.enterprise.inject.spi.BeanManager;
 import javax.naming.InitialContext;
 import javax.naming.NamingException;
@@ -42,24 +43,24 @@
  * @author Tom Baeyens
  */
 public class JbpmElFactoryImpl extends JbpmElFactory {
-  
+
   private static Log log = Log.getLog(JbpmElFactoryImpl.class.getName());
-  
+
   Class<?> functionClass = JstlFunction.class;
-  
+
   /** create ElContext used during parsing time */
   public ELContext createElContext() {
     return createCompositeResolver(null);
   }
-  
+
   /** create ElContext used during evaluation time related to an execution */
   public ELContext createElContext(ScopeInstanceImpl scopeInstance) {
     return createCompositeResolver(scopeInstance);
   }
-  
+
   protected ELContext createCompositeResolver(ScopeInstanceImpl scopeInstance) {
     CompositeELResolver compositeELResolver = new CompositeELResolver();
-    
+
     if (scopeInstance!=null) {
       compositeELResolver.add(new JbpmConstantsElResolver(scopeInstance));
       compositeELResolver.add(new JbpmVariableElResolver(scopeInstance));
@@ -69,13 +70,13 @@
     if (environment!=null) {
       compositeELResolver.add(new JbpmEnvironmentElResolver(environment));
     }
-    
+
     addCdiResolver(compositeELResolver);
 
     addBasicResolvers(compositeELResolver);
-    
+
     FunctionMapper functionMapper = createFunctionMapper();
-    
+
     return createElContext(compositeELResolver, functionMapper);
   }
 
@@ -106,7 +107,7 @@
     try {
       expressionFactory = ExpressionFactory.newInstance();
     } catch (NoSuchMethodError e) {
-      // to support previous version of el-api 
+      // to support previous version of el-api
       expressionFactory = (ExpressionFactory) FactoryFinder.find(ExpressionFactory.class
         .getName(),"de.odysseus.el.ExpressionFactoryImpl", null, "el.properties");
     }
@@ -120,6 +121,7 @@
   }
 
   protected void addBasicResolvers(CompositeELResolver compositeELResolver) {
+    compositeELResolver.add(new ResourceBundleELResolver());
     compositeELResolver.add(new MapELResolver());
     compositeELResolver.add(new ListELResolver());
     compositeELResolver.add(new ArrayELResolver());

Added: jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/el/ResourceBundleELResovlerTest.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/el/ResourceBundleELResovlerTest.java	                        (rev 0)
+++ jbpm4/trunk/modules/pvm/src/test/java/org/jbpm/pvm/internal/el/ResourceBundleELResovlerTest.java	2010-07-03 03:49:45 UTC (rev 6453)
@@ -0,0 +1,28 @@
+
+package org.jbpm.pvm.internal.el;
+
+import java.util.*;
+import junit.framework.*;
+import org.jbpm.pvm.internal.model.*;
+
+public class ResourceBundleELResovlerTest extends TestCase {
+  public void testResourceBundleELResovler() {
+    MyResources myResources = new MyResources();
+    ExecutionImpl execution = new ExecutionImpl();
+    execution.setVariable("resourceBundle", myResources);
+
+    Expression expr = Expression.create("#{resourceBundle['text.title']}", Expression.LANGUAGE_UEL_VALUE);
+    Object result = expr.evaluate(execution);
+
+    assertEquals("Title", result);
+  }
+
+  public static class MyResources extends ListResourceBundle {
+     public Object[][] getContents() {
+       return contents;
+     }
+     static final Object[][] contents = {
+       {"text.title", "Title"}
+     };
+   }
+}



More information about the jbpm-commits mailing list