[289258] JSPTranslator should handle assignment in JSP expressions
diff --git a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/JSPJavaTranslatorTest.java b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/JSPJavaTranslatorTest.java
index 3e99414..a44d524 100644
--- a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/JSPJavaTranslatorTest.java
+++ b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/JSPJavaTranslatorTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2004, 2006 IBM Corporation and others.
+ * Copyright (c) 2004, 2009 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -61,7 +61,7 @@
 				// translatedCursorPosition, 519, translatedCursorPosition);
 				// assertEquals("translation was incorrect", "testJspString",
 				// translation.substring(519, 532));
-				int cursorStart = translation.indexOf("out.print(\"\"+\n testJspString") + 14;
+				int cursorStart = translation.indexOf("out.print( testJspString );" ) + 14;
 				assertEquals("incorrect cursor position >" + cursorStart, 667, cursorStart);
 			}
 			sm.releaseFromRead();
diff --git a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/JSPTranslationTest.java b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/JSPTranslationTest.java
index 87ad400..b122374 100644
--- a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/JSPTranslationTest.java
+++ b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/JSPTranslationTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2006, 2007 IBM Corporation and others.
+ * Copyright (c) 2006, 2009 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -187,10 +187,10 @@
 			
 			int jspTestPosition = translation.getJspText().indexOf("<%= ") + 4;
 			int javaOffset = translation.getJavaOffset(jspTestPosition) - classnameLength;
-			assertEquals("JSPTranslation java offset:", 1009, javaOffset);
+			assertEquals("JSPTranslation java offset:", 1000, javaOffset);
 			
 			// (<%= | %>)
-			int javaTestPostition = translation.getJavaText().indexOf("out.print(\"\"+\n   \n);") + 14;
+			int javaTestPostition = translation.getJavaText().indexOf("out.print(   );") + 10;
 			// dont' need to worry about classname length here because we are comparing
 			// with a position in the JSP document (which doesn't contain classname)
 			int jspOffset = translation.getJspOffset(javaTestPostition);
@@ -365,16 +365,16 @@
 	private HashMap getXMLJSPPositions() {
 		if(fXMLJSPPositions == null) {
 			fXMLJSPPositions = new HashMap();
-			fXMLJSPPositions.put(new Position(882,52), new Position(920,31));
-			fXMLJSPPositions.put(new Position(961,7), new Position(952,7));
+			fXMLJSPPositions.put(new Position(882,52), new Position(910,31));
+			fXMLJSPPositions.put(new Position(961,7), new Position(942,7));
 			fXMLJSPPositions.put(new Position(1018,14), new Position(89,14));
-			fXMLJSPPositions.put(new Position(640,2), new Position(888,2));
+			fXMLJSPPositions.put(new Position(640,2), new Position(878,2));
 			fXMLJSPPositions.put(new Position(406,24), new Position(759,24));
-			fXMLJSPPositions.put(new Position(685,19), new Position(897,19));
-			fXMLJSPPositions.put(new Position(650,26), new Position(861,26));
-			fXMLJSPPositions.put(new Position(563,9), new Position(848,9));
+			fXMLJSPPositions.put(new Position(685,19), new Position(887,19));
+			fXMLJSPPositions.put(new Position(650,26), new Position(851,26));
+			fXMLJSPPositions.put(new Position(563,9), new Position(839,9));
 			fXMLJSPPositions.put(new Position(461,23), new Position(784,23));
-			fXMLJSPPositions.put(new Position(522,8), new Position(822,8));
+			fXMLJSPPositions.put(new Position(522,8), new Position(818,8));
 			fXMLJSPPositions.put(new Position(323,44), new Position(274,45));
 			fXMLJSPPositions.put(new Position(245,43), new Position(229,44));
 		}
diff --git a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/testfiles/jspInJavascript2.javasource b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/testfiles/jspInJavascript2.javasource
index 9e65437..386f005 100644
--- a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/testfiles/jspInJavascript2.javasource
+++ b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/testfiles/jspInJavascript2.javasource
@@ -15,17 +15,13 @@
 javax.servlet.http.HttpSession session = null;

 

 try {

-out.print(""+

- testJspString 

-);

+out.print( testJspString );

   

 

         if( request.getAttribute("SoapURL") != null )

         {

         

-out.print(""+

- (String)request.getAttribute("SoapURL")

-);

+out.print( (String)request.getAttribute("SoapURL"));

 

         }

         else

diff --git a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/translated_text.bin b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/translated_text.bin
index 20eb369..afa254f 100644
--- a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/translated_text.bin
+++ b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/translated_text.bin
@@ -21,17 +21,13 @@
 try {
  String localIncludedString = globalIncludedString;
 for(int i=0; i<5; i++) {
-out.print(""+
-i
-);
+out.print(i);
 }
 javax.swing.JButton BEAN_includedBean = new javax.swing.JButton();
  int include_include_int = 5; 
 javax.swing.JButton includesUseBean = new javax.swing.JButton();
 { // <gifts:gift>
 } // </gifts:gift>
-out.print(""+
-   
-);
+out.print(   );
  } catch (java.lang.Exception e) {} 
 }}
\ No newline at end of file
diff --git a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/translated_xml_jsp.bin b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/translated_xml_jsp.bin
index 614ac03..824c21d 100644
--- a/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/translated_xml_jsp.bin
+++ b/tests/org.eclipse.jst.jsp.ui.tests/src/org/eclipse/jst/jsp/ui/tests/contentassist/translated_xml_jsp.bin
@@ -20,12 +20,8 @@
 try {
 String consec1 = "test";
 String consec2 = "two";
-out.print(""+
-myFunc()
-);
-out.print(""+
-myFunc2()
-);
+out.print(myFunc());
+out.print(myFunc2());
 javax.swing.AbstractButton jb = new javax.swing.JButton();
 String includedString = "incd";
    jb.