Author: musachy Date: Mon Aug 13 13:47:50 2007 New Revision: 565512 URL: http://svn.apache.org/viewvc?view=rev&rev=565512 Log: WW-2106 HTML loaded by the ajax tags is parsed for dojo widgets, this should be optional and there should be a "parseContent" attribute to control it
Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Submit.java struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/AbstractRemoteTag.java struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/SubmitTag.java struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/ajax-common.ftl struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/bind.ftl struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/AnchorTest.java struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/BindTest.java struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/DivTest.java struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/SubmitAjaxTest.java struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/Bind-1.txt struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/div-1.txt struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/href-1.txt struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/submit-ajax-1.txt Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java Mon Aug 13 13:47:50 2007 @@ -51,6 +51,7 @@ protected String highlightDuration; protected String separateScripts; protected String transport; + protected String parseContent; public AbstractRemoteBean(ValueStack stack, HttpServletRequest request, HttpServletResponse response) { @@ -100,6 +101,10 @@ addParameter("separateScripts", findValue(separateScripts, Boolean.class)); if (transport != null) addParameter("transport", findString(transport)); + if (parseContent != null) + addParameter("parseContent", findValue(parseContent, Boolean.class)); + else + addParameter("parseContent", true); } @Override @@ -232,5 +237,10 @@ @StrutsTagAttribute(description="Transport used by Dojo to make the request", defaultValue="XMLHTTPTransport") public void setTransport(String transport) { this.transport = transport; + } + + @StrutsTagAttribute(description="Parse returned HTML for Dojo widgets", defaultValue="true", type="Boolean") + public void setParseContent(String parseContent) { + this.parseContent = parseContent; } } Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java Mon Aug 13 13:47:50 2007 @@ -66,4 +66,6 @@ void setSeparateScripts(String separateScripts); void setTransport(String transport); + + void setParseContent(String parseContent); } Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Submit.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Submit.java?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Submit.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Submit.java Mon Aug 13 13:47:50 2007 @@ -176,6 +176,7 @@ protected String ajaxAfterValidation; protected String separateScripts; protected String transport; + protected String parseContent; public Submit(ValueStack stack, HttpServletRequest request, HttpServletResponse response) { super(stack, request, response); @@ -242,6 +243,8 @@ addParameter("separateScripts", findValue(separateScripts, Boolean.class)); if (transport != null) addParameter("transport", findString(transport)); + if (parseContent != null) + addParameter("parseContent", findValue(parseContent, Boolean.class)); Boolean validateValue = false; if (validate != null) { @@ -454,5 +457,10 @@ @StrutsTagAttribute(description="Transport used by Dojo to make the request", defaultValue="XMLHTTPTransport") public void setTransport(String transport) { this.transport = transport; + } + + @StrutsTagAttribute(description="Parse returned HTML for Dojo widgets", defaultValue="true", type="Boolean") + public void setParseContent(String parseContent) { + this.parseContent = parseContent; } } Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/AbstractRemoteTag.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/AbstractRemoteTag.java?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/AbstractRemoteTag.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/AbstractRemoteTag.java Mon Aug 13 13:47:50 2007 @@ -41,6 +41,7 @@ protected String highlightDuration; protected String separateScripts; protected String transport; + protected String parseContent; protected void populateParams() { super.populateParams(); @@ -65,6 +66,7 @@ remote.setHighlightDuration(highlightDuration); remote.setSeparateScripts(separateScripts); remote.setTransport(transport); + remote.setParseContent(parseContent); } public void setHref(String href) { @@ -141,5 +143,9 @@ public void setTransport(String transport) { this.transport = transport; + } + + public void setParseContent(String parseContent) { + this.parseContent = parseContent; } } Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/SubmitTag.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/SubmitTag.java?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/SubmitTag.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/SubmitTag.java Mon Aug 13 13:47:50 2007 @@ -62,6 +62,7 @@ protected String ajaxAfterValidation; protected String separateScripts; protected String transport; + protected String parseContent; public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) { return new Submit(stack, req, res); @@ -97,6 +98,7 @@ submit.setAjaxAfterValidation(ajaxAfterValidation); submit.setSeparateScripts(separateScripts); submit.setTransport(transport); + submit.setParseContent(parseContent); } public void setMethod(String method) { @@ -205,5 +207,9 @@ public void setTransport(String transport) { this.transport = transport; + } + + public void setParseContent(String parseContent) { + this.parseContent = parseContent; } } Modified: struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/ajax-common.ftl URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/ajax-common.ftl?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/ajax-common.ftl (original) +++ struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/ajax-common.ftl Mon Aug 13 13:47:50 2007 @@ -101,3 +101,6 @@ <#if parameters.transport?if_exists != ""> transport="${parameters.transport?html}"<#rt/> </#if> + <#if parameters.parseContent?exists> + parseContent="${parameters.parseContent?string?html}"<#rt/> + </#if> \ No newline at end of file Modified: struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/bind.ftl URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/bind.ftl?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/bind.ftl (original) +++ struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/bind.ftl Mon Aug 13 13:47:50 2007 @@ -156,6 +156,11 @@ <#assign firstField=false ><#t/> "transport": "${parameters.transport?html}"<#t/> </#if> + <#if parameters.parseContent?exists> + <#if !firstField>,</#if><#t/> + <#assign firstField=false ><#t/> + "parseContent": ${parameters.parseContent?string?html}<#t/> + </#if> }); }); </script> Modified: struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/AnchorTest.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/AnchorTest.java?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/AnchorTest.java (original) +++ struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/AnchorTest.java Mon Aug 13 13:47:50 2007 @@ -26,7 +26,6 @@ */ public class AnchorTest extends AbstractUITagTest { - public void testSimple() throws Exception { TestAction testAction = (TestAction) action; testAction.setFoo("bar"); @@ -54,6 +53,7 @@ tag.setAjaxAfterValidation("true"); tag.setSeparateScripts("true"); tag.setTransport("o"); + tag.setParseContent("false"); tag.doStartTag(); tag.doEndTag(); Modified: struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/BindTest.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/BindTest.java?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/BindTest.java (original) +++ struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/BindTest.java Mon Aug 13 13:47:50 2007 @@ -49,6 +49,7 @@ tag.setValidate("true"); tag.setSeparateScripts("true"); tag.setTransport("q"); + tag.setParseContent("false"); tag.doStartTag(); tag.doEndTag(); Modified: struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/DivTest.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/DivTest.java?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/DivTest.java (original) +++ struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/DivTest.java Mon Aug 13 13:47:50 2007 @@ -56,6 +56,7 @@ tag.setHighlightColor("o"); tag.setHighlightDuration("p"); tag.setTransport("q"); + tag.setParseContent("false"); tag.doStartTag(); tag.doEndTag(); Modified: struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/SubmitAjaxTest.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/SubmitAjaxTest.java?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/SubmitAjaxTest.java (original) +++ struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/SubmitAjaxTest.java Mon Aug 13 13:47:50 2007 @@ -51,6 +51,7 @@ tag.setSeparateScripts("true"); tag.setTabindex("1"); tag.setTransport("p"); + tag.setParseContent("false"); tag.doStartTag(); tag.doEndTag(); Modified: struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/Bind-1.txt URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/Bind-1.txt?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/Bind-1.txt (original) +++ struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/Bind-1.txt Mon Aug 13 13:47:50 2007 @@ -21,7 +21,8 @@ "validate": true, "ajaxAfterValidation":false, "scriptSeparation": true, - "transport": "q" + "transport": "q", + "parseContent" : false }); }); </script> Modified: struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/div-1.txt URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/div-1.txt?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/div-1.txt (original) +++ struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/div-1.txt Mon Aug 13 13:47:50 2007 @@ -22,5 +22,6 @@ highlightColor="o" highlightDuration="p" scriptSeparation="false" - transport="q"> + transport="q" + parseContent="false"> </div> Modified: struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/href-1.txt URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/href-1.txt?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/href-1.txt (original) +++ struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/href-1.txt Mon Aug 13 13:47:50 2007 @@ -19,5 +19,6 @@ highlightColor="m" highlightDuration="n" scriptSeparation="true" - transport="o"> + transport="o" + parseContent="false"> </a> Modified: struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/submit-ajax-1.txt URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/submit-ajax-1.txt?view=diff&rev=565512&r1=565511&r2=565512 ============================================================================== --- struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/submit-ajax-1.txt (original) +++ struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/submit-ajax-1.txt Mon Aug 13 13:47:50 2007 @@ -23,4 +23,5 @@ highlightDuration="o" scriptSeparation="true" transport="p" + parseContent="false" />