Author: markt
Date: Fri Dec 26 15:43:09 2008
New Revision: 729569

URL: http://svn.apache.org/viewvc?rev=729569&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46381
Needs testign with the TCK before proposing for 6.0.x

Modified:
    tomcat/trunk/java/org/apache/jasper/compiler/Generator.java

Modified: tomcat/trunk/java/org/apache/jasper/compiler/Generator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/compiler/Generator.java?rev=729569&r1=729568&r2=729569&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/jasper/compiler/Generator.java (original)
+++ tomcat/trunk/java/org/apache/jasper/compiler/Generator.java Fri Dec 26 
15:43:09 2008
@@ -836,6 +836,7 @@
         private String attributeValueWithEL(boolean isTag, String tx,
                 Class<?> expectedType, String mapName) {
             if (tx==null) return null;
+            Class<?> type = expectedType;
             int size = tx.length();
             StringBuffer output = new StringBuffer(size);
             boolean el = false;
@@ -851,6 +852,8 @@
                     if (mark < i) {
                         if (output.length() > 0) {
                             output.append(" + ");
+                            // Composite expression - must coerce to String
+                            type = String.class;
                         }
                         output.append(quote(tx.substring(mark, i)));
                     }
@@ -865,10 +868,12 @@
                     // End of an EL expression
                     if (output.length() > 0) {
                         output.append(" + ");
+                        // Composite expression - must coerce to String
+                        type = String.class;
                     }
                     output.append(
                             JspUtil.interpreterCall(isTag,
-                                    tx.substring(mark, i+1), expectedType,
+                                    tx.substring(mark, i+1), type,
                                     mapName, false));
                     mark = i + 1;
                     el = false;



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to