Bug 182873 JS error when use birt:paramDef with special parameter name.[0603]
Description: Javascript error when use birt:paramDef tag with special parameter name. Build number:2.2.0.v200704180630 Steps to reproduce: Prerequisite: New a report with a report parameter with name ~`!@#$%^&*()-=_+\][{}|';:"/,<>? 1. New a jsp file from BIRT tag template in BIRT Web Project. 2. Input below content in body: <birt:parameterPage id="0" name="customparameterpage" reportDesign="report/customJspTagParamDefName.rptdesign" isCustom="true"> <birt:paramDef id="1" name="~`!@#$%^&*()-=_+\][{}|';:/,?"/> <input type="submit" name="OK" value="submit"/> </birt:parameterPage> 3. Run the jsp file. Expected result: Value can be passed to report. Actual result: Javascript error. A runtime error has accurred... Error log:N/A
viewer/org.eclipse.birt.report.viewer/birt/WEB-INF/classes/org/eclipse/birt/report/taglib/ParamDefTag.java
.write( " value=\"" + ParameterAccessor.htmlEncode( this.valueString ) + "\" " ); 					
				writer.write( " selected >" ); 
				writer.write( ParameterAccessor
						.htmlEncode( this.displayTextString )
						+ "</option>\n" ); 
			}
		}
		
		if ( !paramDef.isRequired( ) )
		{
			writer.write( "<option value=''" ); 
			if ( isNullValue )
				writer.write( " selected" ); 					
			writer.write( " >" ); 
			writer.write( ITagConstants.NULL_VALUE + "</option>\n" ); 
		}
		writer.write( "</select>\n" ); 
		if ( !paramDef.mustMatch( ) )
		{
			
			writer.write( "<input type = 'hidden' " ); 
			writer.write( " id=\"" + isLocaleId + "\" " ); 
			writer
					.write( " name=\"" + ParameterAccessor.PARAM_ISLOCALE + "\" " ); 
			writer.write( " >\n" ); 
			
			if ( param.getPattern( ) != null )
			{
				writer.write( "<input type = 'hidden' " ); 
				writer.write( " name=\"" + patternName + "\" " );