You are viewing a plain text version of this content. The canonical link for it is here.
Posted to taglibs-dev@jakarta.apache.org by ba...@apache.org on 2009/07/12 07:14:15 UTC
svn commit: r793274 - in /jakarta/taglibs/proper/string/trunk:
src/main/java/org/apache/taglibs/string/ src/main/resources/META-INF/tlds/
string-test/src/main/webapp/org/apache/taglibs/string/
string-test/src/main/webapp/org/apache/taglibs/string/bug/
Author: bayard
Date: Sun Jul 12 05:14:15 2009
New Revision: 793274
URL: http://svn.apache.org/viewvc?rev=793274&view=rev
Log:
Adding new general support for a scope attribute. The two jsps use it, and the tld is changed such that capitalize and overlay have that scope attribute in their API
Modified:
jakarta/taglibs/proper/string/trunk/src/main/java/org/apache/taglibs/string/StringTagSupport.java
jakarta/taglibs/proper/string/trunk/src/main/resources/META-INF/tlds/taglibs-string.tld
jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/CapitalizeTest.jsp
jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/bug/Bug39964Test.jsp
Modified: jakarta/taglibs/proper/string/trunk/src/main/java/org/apache/taglibs/string/StringTagSupport.java
URL: http://svn.apache.org/viewvc/jakarta/taglibs/proper/string/trunk/src/main/java/org/apache/taglibs/string/StringTagSupport.java?rev=793274&r1=793273&r2=793274&view=diff
==============================================================================
--- jakarta/taglibs/proper/string/trunk/src/main/java/org/apache/taglibs/string/StringTagSupport.java (original)
+++ jakarta/taglibs/proper/string/trunk/src/main/java/org/apache/taglibs/string/StringTagSupport.java Sun Jul 12 05:14:15 2009
@@ -34,6 +34,9 @@
* return result in instead of pushing
* out to the html page.
* </dd>
+ * <dt>scope</dt><dd>
+ * The scope in which to place the PageContext var variable.
+ * </dd>
* </dl>
*/
abstract public class StringTagSupport extends BodyTagSupport {
@@ -46,6 +49,11 @@
private String var;
/**
+ * PageContext scope to store the var attribute in.
+ */
+ private String scope = "page";
+
+ /**
* Empty constructor. Initialises the attributes.
*/
public StringTagSupport() {
@@ -67,6 +75,20 @@
}
/**
+ * Get the PageContext scope to store the var attribute in.
+ */
+ public String getScope() {
+ return this.scope;
+ }
+
+ /**
+ * Set the PageContext scope to store the var attribute in.
+ */
+ public void setScope(String scope) {
+ this.scope = scope;
+ }
+
+ /**
* Handles the manipulation of the String tag,
* evaluating the body of the tag. The evaluation
* is delegated to the changeString(String) method
@@ -95,9 +117,20 @@
throw new JspException(e.toString());
}
} else {
- pageContext.setAttribute(this.var, text);
- // Use the below when running against the integration tests
- // pageContext.setAttribute(this.var, text, PageContext.APPLICATION_SCOPE);
+ if("page".equals(this.scope)) {
+ pageContext.setAttribute(this.var, text, PageContext.PAGE_SCOPE);
+ } else
+ if("application".equals(this.scope)) {
+ pageContext.setAttribute(this.var, text, PageContext.APPLICATION_SCOPE);
+ } else
+ if("session".equals(this.scope)) {
+ pageContext.setAttribute(this.var, text, PageContext.SESSION_SCOPE);
+ } else
+ if("request".equals(this.scope)) {
+ pageContext.setAttribute(this.var, text, PageContext.REQUEST_SCOPE);
+ } else {
+ throw new JspException("Illegal scope - not application, page, session or request: '" + this.scope + "'");
+ }
}
return (EVAL_PAGE);
@@ -115,11 +148,12 @@
/**
* Initialise any properties to default values.
* This method is called upon construction, and
- * after changeString(String) is called.
- * This is a default empty implementation.
+ * after changeString(String) is called. It resets
+ * var and scope.
*/
public void initAttributes() {
this.var = null;
+ this.scope = "page";
}
}
Modified: jakarta/taglibs/proper/string/trunk/src/main/resources/META-INF/tlds/taglibs-string.tld
URL: http://svn.apache.org/viewvc/jakarta/taglibs/proper/string/trunk/src/main/resources/META-INF/tlds/taglibs-string.tld?rev=793274&r1=793273&r2=793274&view=diff
==============================================================================
--- jakarta/taglibs/proper/string/trunk/src/main/resources/META-INF/tlds/taglibs-string.tld (original)
+++ jakarta/taglibs/proper/string/trunk/src/main/resources/META-INF/tlds/taglibs-string.tld Sun Jul 12 05:14:15 2009
@@ -71,6 +71,15 @@
Variable to store result in.
</description>
</attribute>
+ <attribute>
+ <name>scope</name>
+ <required>false</required>
+ <rtexprvalue>true</rtexprvalue>
+ <type>java.lang.String</type>
+ <description>
+ Scope to store the result in.
+ </description>
+ </attribute>
</tag>
<tag>
<name>uncapitalize</name>
@@ -960,6 +969,15 @@
</description>
</attribute>
<attribute>
+ <name>scope</name>
+ <required>false</required>
+ <rtexprvalue>true</rtexprvalue>
+ <type>java.lang.String</type>
+ <description>
+ Scope to store the result in.
+ </description>
+ </attribute>
+ <attribute>
<name>with</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
Modified: jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/CapitalizeTest.jsp
URL: http://svn.apache.org/viewvc/jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/CapitalizeTest.jsp?rev=793274&r1=793273&r2=793274&view=diff
==============================================================================
--- jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/CapitalizeTest.jsp (original)
+++ jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/CapitalizeTest.jsp Sun Jul 12 05:14:15 2009
@@ -1,3 +1,3 @@
<%@ taglib uri="http://jakarta.apache.org/taglibs/string-1.1" prefix="str" %>
-<str:capitalize var="test">test successful</str:capitalize>
+<str:capitalize var="test" scope="application">test successful</str:capitalize>
Modified: jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/bug/Bug39964Test.jsp
URL: http://svn.apache.org/viewvc/jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/bug/Bug39964Test.jsp?rev=793274&r1=793273&r2=793274&view=diff
==============================================================================
--- jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/bug/Bug39964Test.jsp (original)
+++ jakarta/taglibs/proper/string/trunk/string-test/src/main/webapp/org/apache/taglibs/string/bug/Bug39964Test.jsp Sun Jul 12 05:14:15 2009
@@ -2,4 +2,4 @@
<%@ taglib uri="http://jakarta.apache.org/taglibs/string-1.1" prefix="str" %>
<c:set var="code">sample code</c:set>
-<str:overlay var="test" start="10" end="10" with="${code}">12345678901234567890</str:overlay>
+<str:overlay var="test" scope="application" start="10" end="10" with="${code}">12345678901234567890</str:overlay>
---------------------------------------------------------------------
To unsubscribe, e-mail: taglibs-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: taglibs-dev-help@jakarta.apache.org