Intresting. This is not what the JSP EL does. Not that we really care, but it's an interesting extension. It follows Java, I suppose :)

Patch in - lets see what people think.

geir

On Dec 15, 2003, at 8:55 PM, Robert wrote:

Attached is a patch for the ASTAddNode class that will do a string concat if the coercion to a double and long fails.

Thanks!
Robert McIntosh
Index: ASTAddNode.java
===================================================================
RCS file: /home/cvspublic/jakarta-commons/jexl/src/java/org/apache/commons/jexl/ parser/ASTAddNode.java,v
retrieving revision 1.2
diff -u -r1.2 ASTAddNode.java
--- ASTAddNode.java 17 May 2002 12:13:22 -0000 1.2
+++ ASTAddNode.java 16 Dec 2003 01:47:01 -0000
@@ -119,12 +119,18 @@
}


         /*
-         * otherwise to longs with thee!
+         * attempt to use Longs
          */
-
-        Long l = Coercion.coerceLong(left);
-        Long r = Coercion.coerceLong(right);
-
-        return new Long(l.longValue() + r.longValue());
+        try {
+            Long l = Coercion.coerceLong(left);
+            Long r = Coercion.coerceLong(right);
+            return new Long(l.longValue() + r.longValue());
+        }
+        catch( java.lang.NumberFormatException nfe ) {
+            /*
+             * Well, use strings!
+             */
+            return left.toString().concat( right.toString() );
+        }
     }
 }

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

--
Geir Magnusson Jr                                   203-247-1713(m)
[EMAIL PROTECTED]


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to