org.springmodules.validation.commons.taglib
Class JavascriptValidatorTag

java.lang.Object
  extended by BodyTagSupport
      extended by org.springmodules.validation.commons.taglib.JavascriptValidatorTag

public class JavascriptValidatorTag
extends BodyTagSupport

Custom tag that generates JavaScript for client side validation based on the validation rules loaded by a ValidatorFactory.

The validator resources needed for this tag are retrieved from a ValidatorFactory bean defined in the web application context or one of its parent contexts. The bean is resolved by type (org.springmodules.commons.validator.ValidatorFactory).

Author:
David Winterfeldt., Daniel Miller

Field Summary
protected  java.lang.String cdata
          Hide JavaScript methods in a CDATA section for XHTML when "true".
protected  java.lang.String dynamicJavascript
          The dynamic JavaScript objects will only be generated if this is set to "true".
protected  java.lang.String formName
          The name of the form that corresponds with the action name in struts-config.xml.
protected  java.lang.String htmlComment
          The JavaScript methods will enclosed with html comments if this is set to "true".
protected static java.lang.String lineEnd
          The line ending string.
protected  java.lang.String methodName
          This will be used as is for the JavaScript validation method name if it has a value.
protected  int page
          The current page number of a multi-part form.
protected  RequestContext requestContext
           
protected  java.lang.String src
          The src attribute for html script element (used to include an external script resource).
protected  java.lang.String staticJavascript
          The static JavaScript methods will only be printed if this is set to "true".
protected  java.lang.String xhtml
          The generated code should be XHTML compliant when "true".
 
Constructor Summary
JavascriptValidatorTag()
           
 
Method Summary
 int doStartTag()
          Render the JavaScript for to perform validations based on the form name.
 java.lang.String getCdata()
          Returns the cdata setting "true" or "false".
 java.lang.String getDynamicJavascript()
          Gets whether or not to generate the dynamic JavaScript.
 java.lang.String getFormName()
          Gets the key (form name) that will be used to retrieve a set of validation rules to be performed on the bean passed in for validation.
 java.lang.String getHtmlComment()
          Gets whether or not to delimit the JavaScript with html comments.
protected  java.lang.String getJavascriptBegin(java.lang.String methods)
          Returns the opening script element and some initial javascript.
protected  java.lang.String getJavascriptEnd()
          Returns the closing script element.
protected  java.lang.String getJavascriptStaticMethods(ValidatorResources resources)
           
 java.lang.String getMethod()
          Gets the method name that will be used for the Javascript validation method name if it has a value.
 int getPage()
          Gets the current page number of a multi-part form.
 java.lang.String getSrc()
          Gets the src attribute's value when defining the html script element.
 java.lang.String getStaticJavascript()
          Gets whether or not to generate the static JavaScript.
 java.lang.String getXhtml()
          Gets whether or not to generate the xhtml code.
 void release()
          Release any acquired resources.
 void setCdata(java.lang.String cdata)
          Sets the cdata status.
 void setDynamicJavascript(java.lang.String dynamicJavascript)
          Sets whether or not to generate the dynamic JavaScript.
 void setFormName(java.lang.String formName)
          Sets the key (form name) that will be used to retrieve a set of validation rules to be performed on the bean passed in for validation.
 void setHtmlComment(java.lang.String htmlComment)
          Sets whether or not to delimit the JavaScript with html comments.
 void setMethod(java.lang.String methodName)
          Sets the method name that will be used for the Javascript validation method name if it has a value.
 void setPage(int page)
          Sets the current page number of a multi-part form.
 void setSrc(java.lang.String src)
          Sets the src attribute's value when defining the html script element.
 void setStaticJavascript(java.lang.String staticJavascript)
          Sets whether or not to generate the static JavaScript.
 void setXhtml(java.lang.String xhtml)
          Sets whether or not to generate the xhtml code.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

requestContext

protected RequestContext requestContext

formName

protected java.lang.String formName
The name of the form that corresponds with the action name in struts-config.xml. Specifying a form name places a <script> </script> around the javascript.


lineEnd

protected static java.lang.String lineEnd
The line ending string.


page

protected int page
The current page number of a multi-part form. Only valid when the formName attribute is set.


methodName

protected java.lang.String methodName
This will be used as is for the JavaScript validation method name if it has a value. This is the method name of the main JavaScript method that the form calls to perform validations.


staticJavascript

protected java.lang.String staticJavascript
The static JavaScript methods will only be printed if this is set to "true".


dynamicJavascript

protected java.lang.String dynamicJavascript
The dynamic JavaScript objects will only be generated if this is set to "true".


src

protected java.lang.String src
The src attribute for html script element (used to include an external script resource). The src attribute is only recognized when the formName attribute is specified.


htmlComment

protected java.lang.String htmlComment
The JavaScript methods will enclosed with html comments if this is set to "true".


xhtml

protected java.lang.String xhtml
The generated code should be XHTML compliant when "true". When true, this setting prevents the htmlComment setting from having an effect.


cdata

protected java.lang.String cdata
Hide JavaScript methods in a CDATA section for XHTML when "true".

Constructor Detail

JavascriptValidatorTag

public JavascriptValidatorTag()
Method Detail

getFormName

public java.lang.String getFormName()
Gets the key (form name) that will be used to retrieve a set of validation rules to be performed on the bean passed in for validation.


setFormName

public void setFormName(java.lang.String formName)
Sets the key (form name) that will be used to retrieve a set of validation rules to be performed on the bean passed in for validation. Specifying a form name places a <script> </script> tag around the javascript.


getPage

public int getPage()
Gets the current page number of a multi-part form. Only field validations with a matching page numer will be generated that match the current page number. Only valid when the formName attribute is set.


setPage

public void setPage(int page)
Sets the current page number of a multi-part form. Only field validations with a matching page numer will be generated that match the current page number. Only valid when the formName attribute is set.


getMethod

public java.lang.String getMethod()
Gets the method name that will be used for the Javascript validation method name if it has a value. This overrides the auto-generated method name based on the key (form name) passed in.


setMethod

public void setMethod(java.lang.String methodName)
Sets the method name that will be used for the Javascript validation method name if it has a value. This overrides the auto-generated method name based on the key (form name) passed in.


getStaticJavascript

public java.lang.String getStaticJavascript()
Gets whether or not to generate the static JavaScript. If this is set to 'true', which is the default, the static JavaScript will be generated.


setStaticJavascript

public void setStaticJavascript(java.lang.String staticJavascript)
Sets whether or not to generate the static JavaScript. If this is set to 'true', which is the default, the static JavaScript will be generated.


getDynamicJavascript

public java.lang.String getDynamicJavascript()
Gets whether or not to generate the dynamic JavaScript. If this is set to 'true', which is the default, the dynamic JavaScript will be generated.


setDynamicJavascript

public void setDynamicJavascript(java.lang.String dynamicJavascript)
Sets whether or not to generate the dynamic JavaScript. If this is set to 'true', which is the default, the dynamic JavaScript will be generated.


getSrc

public java.lang.String getSrc()
Gets the src attribute's value when defining the html script element.


setSrc

public void setSrc(java.lang.String src)
Sets the src attribute's value when defining the html script element. The src attribute is only recognized when the formName attribute is specified.


getHtmlComment

public java.lang.String getHtmlComment()
Gets whether or not to delimit the JavaScript with html comments. If this is set to 'true', which is the default, the htmlComment will be surround the JavaScript.


setHtmlComment

public void setHtmlComment(java.lang.String htmlComment)
Sets whether or not to delimit the JavaScript with html comments. If this is set to 'true', which is the default, the htmlComment will be surround the JavaScript.


getCdata

public java.lang.String getCdata()
Returns the cdata setting "true" or "false".

Returns:
String - "true" if JavaScript will be hidden in a CDATA section

setCdata

public void setCdata(java.lang.String cdata)
Sets the cdata status.

Parameters:
cdata - The cdata to set

getXhtml

public java.lang.String getXhtml()
Gets whether or not to generate the xhtml code. If this is set to 'true', which is the default, XHTML will be generated.


setXhtml

public void setXhtml(java.lang.String xhtml)
Sets whether or not to generate the xhtml code. If this is set to 'true', which is the default, XHTML will be generated.


doStartTag

public int doStartTag()
               throws JspException
Render the JavaScript for to perform validations based on the form name.

Throws:
javax.servlet.jsp.JspException - if a JSP exception has occurred
JspException

release

public void release()
Release any acquired resources.


getJavascriptBegin

protected java.lang.String getJavascriptBegin(java.lang.String methods)
Returns the opening script element and some initial javascript.


getJavascriptStaticMethods

protected java.lang.String getJavascriptStaticMethods(ValidatorResources resources)

getJavascriptEnd

protected java.lang.String getJavascriptEnd()
Returns the closing script element.



Copyright © 2005. All Rights Reserved.