Author: musachy
Date: Thu Dec 18 12:30:09 2008
New Revision: 727810

URL: http://svn.apache.org/viewvc?rev=727810&view=rev
Log:
Fix bugs in head and label tags

Modified:
    
struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/HeadHandler.java
    
struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/LabelHandler.java
    
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/AbstractTest.java
    
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/HeadTest.java
    
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/LabelTest.java

Modified: 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/HeadHandler.java
URL: 
http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/HeadHandler.java?rev=727810&r1=727809&r2=727810&view=diff
==============================================================================
--- 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/HeadHandler.java
 (original)
+++ 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/HeadHandler.java
 Thu Dec 18 12:30:09 2008
@@ -22,10 +22,13 @@
 
 import org.apache.struts2.views.java.Attributes;
 import org.apache.struts2.views.java.TagGenerator;
+import org.apache.struts2.ServletActionContext;
 
 import java.io.IOException;
 import java.util.Map;
 
+import com.opensymphony.xwork2.ActionContext;
+
 public class HeadHandler extends AbstractTagHandler implements TagGenerator {
 
     public void generate() throws IOException {
@@ -33,7 +36,10 @@
         Attributes attrs = new Attributes();
         attrs.put("type", "text/javascript");
 
-        StringBuilder sb = new StringBuilder((String) findValue("base"));
+        String base = ServletActionContext.getRequest().getContextPath();
+        StringBuilder sb = new StringBuilder();
+        if (base != null)
+            sb.append(base);
         sb.append("/struts/utils.js");
         attrs.put("src", sb.toString());
 

Modified: 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/LabelHandler.java
URL: 
http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/LabelHandler.java?rev=727810&r1=727809&r2=727810&view=diff
==============================================================================
--- 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/LabelHandler.java
 (original)
+++ 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/LabelHandler.java
 Thu Dec 18 12:30:09 2008
@@ -26,6 +26,8 @@
 import java.io.IOException;
 import java.util.Map;
 
+import com.opensymphony.xwork2.util.TextUtils;
+
 public class LabelHandler extends AbstractTagHandler implements TagGenerator {
 
     public void generate() throws IOException {
@@ -39,6 +41,9 @@
                 .addIfExists("style", params.get("cssStyle"))
                 .addIfExists("title", params.get("title"));
         super.start("label", a);
+        String value = (String) params.get("nameValue");
+        if (TextUtils.stringSet(value))
+            characters(value);
         super.end("label");
     }
 }

Modified: 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/AbstractTest.java
URL: 
http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/AbstractTest.java?rev=727810&r1=727809&r2=727810&view=diff
==============================================================================
--- 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/AbstractTest.java
 (original)
+++ 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/AbstractTest.java
 Thu Dec 18 12:30:09 2008
@@ -6,6 +6,7 @@
 import com.opensymphony.xwork2.util.ValueStack;
 import junit.framework.TestCase;
 import org.apache.struts2.StrutsConstants;
+import org.apache.struts2.ServletActionContext;
 import org.apache.struts2.components.Component;
 import org.apache.struts2.components.UIBean;
 import org.apache.struts2.components.template.Template;
@@ -71,8 +72,9 @@
         context = new TemplateRenderingContext(template, writer, stack, map, 
null);
         stackContext.put(Component.COMPONENT_STACK, new Stack());
 
-        request = EasyMock.createMock(HttpServletRequest.class);
-        response = EasyMock.createMock(HttpServletResponse.class);
+        request = EasyMock.createNiceMock(HttpServletRequest.class);
+        
EasyMock.expect(request.getContextPath()).andReturn("/some/path").anyTimes();
+        response = EasyMock.createNiceMock(HttpServletResponse.class);
 
         EasyMock.expect(stack.getContext()).andReturn(stackContext).anyTimes();
 
@@ -83,8 +85,12 @@
         stackContext.put(ActionContext.CONTAINER, container);
 
 
+        EasyMock.replay(request);
         EasyMock.replay(stack);
         EasyMock.replay(container);
+
+        ActionContext.setContext(new ActionContext(stackContext));
+        ServletActionContext.setRequest(request);
     }
 
     protected static String s(String input) {

Modified: 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/HeadTest.java
URL: 
http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/HeadTest.java?rev=727810&r1=727809&r2=727810&view=diff
==============================================================================
--- 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/HeadTest.java
 (original)
+++ 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/HeadTest.java
 Thu Dec 18 12:30:09 2008
@@ -31,7 +31,7 @@
         map.putAll(tag.getParameters());
         theme.renderTag(getTagName(), context);
         String output = writer.getBuffer().toString();
-        String expected = s("<script type='text/javascript' 
src='/la-base/struts/utils.js'></script>");
+        String expected = s("<script type='text/javascript' 
src='/some/path/struts/utils.js'></script>");
         assertEquals(expected, output);
     }
 
@@ -42,12 +42,6 @@
     }
 
     @Override
-    protected void setUpStack() {
-        super.setUpStack();
-        expectFind("base", "/la-base");
-    }
-
-    @Override
     protected UIBean getUIBean() {
         return tag;
     }

Modified: 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/LabelTest.java
URL: 
http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/LabelTest.java?rev=727810&r1=727809&r2=727810&view=diff
==============================================================================
--- 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/LabelTest.java
 (original)
+++ 
struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/LabelTest.java
 Thu Dec 18 12:30:09 2008
@@ -41,7 +41,7 @@
         map.putAll(tag.getParameters());
         theme.renderTag(getTagName(), context);
         String output = writer.getBuffer().toString();
-        String expected = s("<label name='name' for='for' id='id1' 
class='class1' style='style1' title='title'></label>");
+        String expected = s("<label name='name' for='for' id='id1' 
class='class1' style='style1' title='title'>val1</label>");
         assertEquals(expected, output);
     }
 


Reply via email to