Author: musachy Date: Thu Dec 18 06:43:35 2008 New Revision: 727729 URL: http://svn.apache.org/viewvc?rev=727729&view=rev Log: Fix tags that have a closing
Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/DivHandler.java struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/EmptyHandler.java struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/FormHandler.java struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SubmitHandler.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/AnchorTest.java struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/DivTest.java struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/FormTest.java struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/SubmitTest.java Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java Thu Dec 18 06:43:35 2008 @@ -40,6 +40,12 @@ .addIfExists("title", params.get("title")) .addIfExists("tabindex", params.get("tabindex")); start("a", attrs); - end("a"); + } + + public static class CloseHandler extends AbstractTagHandler implements TagGenerator { + @Override + public void generate() throws IOException { + end("a"); + } } } Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/DivHandler.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/DivHandler.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/DivHandler.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/DivHandler.java Thu Dec 18 06:43:35 2008 @@ -37,6 +37,12 @@ .addIfExists("style", params.get("cssStyle")) .addIfExists("title", params.get("title")); start("div", attrs); - end("div"); + } + + public static class CloseHandler extends AbstractTagHandler implements TagGenerator { + @Override + public void generate() throws IOException { + end("div"); + } } } Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/EmptyHandler.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/EmptyHandler.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/EmptyHandler.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/EmptyHandler.java Thu Dec 18 06:43:35 2008 @@ -20,6 +20,13 @@ */ package org.apache.struts2.views.java.simple; +import org.apache.struts2.views.java.TagGenerator; + +import java.io.IOException; + //does nothing -public class EmptyHandler extends AbstractTagHandler { +public class EmptyHandler extends AbstractTagHandler implements TagGenerator { + @Override + public void generate() throws IOException { + } } Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/FormHandler.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/FormHandler.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/FormHandler.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/FormHandler.java Thu Dec 18 06:43:35 2008 @@ -44,6 +44,12 @@ .addIfExists("accept-charset", params.get("acceptcharset")); attrs.add("method", params.containsKey("method") ? (String) params.get("method") : "post"); start("form", attrs); - end("form"); + } + + public static class CloseHandler extends AbstractTagHandler implements TagGenerator { + @Override + public void generate() throws IOException { + end("form"); + } } } Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java Thu Dec 18 06:43:35 2008 @@ -37,13 +37,16 @@ put("textfield", new FactoryList(TextFieldHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); put("select", new FactoryList(SelectHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); put("form", new FactoryList(FormHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); + put("form-close", new FactoryList(FormHandler.CloseHandler.class)); put("a", new FactoryList(AnchorHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); + put("a-close", new FactoryList(AnchorHandler.CloseHandler.class)); put("checkbox", new FactoryList(CheckboxHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); put("file", new FactoryList(FileHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); put("password", new FactoryList(PasswordHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); put("label", new FactoryList(LabelHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); put("reset", new FactoryList(ResetHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); put("submit", new FactoryList(SubmitHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); + put("submit-close", new FactoryList(SubmitHandler.CloseHandler.class)); put("textarea", new FactoryList(TextAreaHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); put("actionerror", new FactoryList(ActionErrorHandler.class)); put("token", new FactoryList(TokenHandler.class)); @@ -52,6 +55,7 @@ put("hidden", new FactoryList(HiddenHandler.class)); put("fielderror", new FactoryList(FieldErrorHandler.class)); put("div", new FactoryList(DivHandler.class, ScriptingEventsHandler.class, CommonAttributesHandler.class)); + put("div-close", new FactoryList(DivHandler.CloseHandler.class)); put("empty", new FactoryList(EmptyHandler.class)); }}); setName("simple"); Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SubmitHandler.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SubmitHandler.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SubmitHandler.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/main/java/org/apache/struts2/views/java/simple/SubmitHandler.java Thu Dec 18 06:43:35 2008 @@ -57,8 +57,6 @@ if (TextUtils.stringSet(label)) characters(label, false); } - - end("button"); } else if ("image".equals(type)) { if (TextUtils.stringSet(body)) characters(body, false); @@ -67,7 +65,6 @@ .addIfExists("alt", params.get("label")); start("input", attrs); - end("input"); } else { attrs.addIfExists("name", params.get("name")) .addIfExists("value", params.get("nameValue"), false) @@ -78,7 +75,22 @@ .addIfExists("style", params.get("cssStyle")); start("submit", attrs); - end("submit"); + } + } + + public static class CloseHandler extends AbstractTagHandler implements TagGenerator { + @Override + public void generate() throws IOException { + Map<String, Object> params = context.getParameters(); + Attributes attrs = new Attributes(); + + String type = TextUtils.noNull((String) params.get("type"), "input"); + if ("button".equals(type)) + end("button"); + else if ("image".equals(type)) + end("input"); + else + end("submit"); } } } 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=727729&r1=727728&r2=727729&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 06:43:35 2008 @@ -147,6 +147,7 @@ return val == null ? null : val; } + //XWorkConverter doesnt have a public onstructor (the one with parameters will require mor config) public class ConverterEx extends XWorkConverter { public ConverterEx() { Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/AnchorTest.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/AnchorTest.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/AnchorTest.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/AnchorTest.java Thu Dec 18 06:43:35 2008 @@ -39,6 +39,7 @@ tag.evaluateParams(); map.putAll(tag.getParameters()); theme.renderTag(getTagName(), context); + theme.renderTag(getTagName() + "-close", context); String output = writer.getBuffer().toString(); String expected = s("<a name='name_' id='id_' class='class' style='style' href='http://sometest.com?ab=10' title='title' tabindex='1'></a>"); assertEquals(expected, output); Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/DivTest.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/DivTest.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/DivTest.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/DivTest.java Thu Dec 18 06:43:35 2008 @@ -37,6 +37,7 @@ tag.evaluateParams(); map.putAll(tag.getParameters()); theme.renderTag(getTagName(), context); + theme.renderTag(getTagName() + "-close", context); String output = writer.getBuffer().toString(); String expected = s("<div name='name_' id='id_' class='class' style='style' title='title'></div>"); assertEquals(expected, output); Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/FormTest.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/FormTest.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/FormTest.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/FormTest.java Thu Dec 18 06:43:35 2008 @@ -47,6 +47,7 @@ tag.evaluateParams(); map.putAll(tag.getParameters()); theme.renderTag(getTagName(), context); + theme.renderTag(getTagName() + "-close", context); String output = writer.getBuffer().toString(); String expected = s("<form name='name_' id='id_' onsubmit='submit' onreset='reset' target='target_' enctype='enc' class='class_' style='style_' title='title' accept-charset='charset_' method='post'></form>"); assertEquals(expected, output); @@ -56,6 +57,7 @@ tag.evaluateParams(); map.putAll(tag.getParameters()); theme.renderTag(getTagName(), context); + theme.renderTag(getTagName() + "-close", context); String output = writer.getBuffer().toString(); String expected = s("<form method='post'></form>"); assertEquals(expected, output); Modified: struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/SubmitTest.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/SubmitTest.java?rev=727729&r1=727728&r2=727729&view=diff ============================================================================== --- struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/SubmitTest.java (original) +++ struts/sandbox/trunk/struts2-javatemplates-plugin/src/test/java/org/apache/struts2/views/java/simple/SubmitTest.java Thu Dec 18 06:43:35 2008 @@ -44,6 +44,7 @@ tag.evaluateParams(); map.putAll(tag.getParameters()); theme.renderTag(getTagName(), context); + theme.renderTag(getTagName() + "-close", context); String output = writer.getBuffer().toString(); String expected = s("<button name='name' type='submit' value='val1' tabindex='1' id='id1' class='class1' style='style1'><span>hey hey hey, here I go now</span></button>"); assertEquals(expected, output); @@ -65,6 +66,7 @@ tag.evaluateParams(); map.putAll(tag.getParameters()); theme.renderTag(getTagName(), context); + theme.renderTag(getTagName() + "-close", context); String output = writer.getBuffer().toString(); String expected = s("<button name='name' type='submit' value='val1' tabindex='1' id='id1' class='class1' style='style1'>Just as soon as I belong, than its time I disappear</button>"); assertEquals(expected, output); @@ -86,6 +88,7 @@ tag.evaluateParams(); map.putAll(tag.getParameters()); theme.renderTag(getTagName(), context); + theme.renderTag(getTagName() + "-close", context); String output = writer.getBuffer().toString(); String expected = s("<submit name='name' value='val1' tabindex='1' id='id1' class='class1' style='style1'></submit>"); assertEquals(expected, output); @@ -106,6 +109,7 @@ tag.evaluateParams(); map.putAll(tag.getParameters()); theme.renderTag(getTagName(), context); + theme.renderTag(getTagName() + "-close", context); String output = writer.getBuffer().toString(); String expected = s("<submit name='name' value='val1' tabindex='1' id='id1' class='class1' style='style1'></submit>"); assertEquals(expected, output); @@ -120,6 +124,7 @@ tag.evaluateParams(); map.putAll(tag.getParameters()); theme.renderTag(getTagName(), context); + theme.renderTag(getTagName() + "-close", context); String output = writer.getBuffer().toString(); String expected = s("<input src='http://somesource/image.gif' type='image' alt='alt text'></input>"); assertEquals(expected, output);