I want to develop a "propertyTable" tag, its input is the object's class name. Based on the attibutes of the class, this tag will display a table and let user to key in the attribute value for the object. That means, in the jsp file, if we write:
<prefix: propertyTable objectSchemaId="customer"/>
then the following table will be displayed:
________________________________________________________
| Customer Name(String): | Input box (text and number) |
| Is Member(Boolean): | Check box (true or false) |
| Total Amount(Double): | Input box (number only) |
________________________________________________________
In the doStartTag() method of PropertyTableTag, I will retrieve all the attributes of object "customer" based on the objectSchemaId. And based on the data type of those attributes, I will dynamically display the different types of input box to the user. For example, if the totalAmount is "Double", then a number only text box will be displayed in the table, and if the isMember attribute is "Boolean", then a check box will be displayed.
In the doStartTag() method of PropertyTableTag, I wrote:
if(attributeSpec.getDataType().equalsIgnoreCase("Doube"))
{
htmlCode.append("<prefix:myInput name='xxx' dataType='Double'/>");
}
But instead of displaying <input type="text"...>,
<prefix:myInput name='xxx' dataType='Double'/> will be directly displayed to the client.
So,my question is, in a java file (not jsp), how to dynamically evaluate the "myInput" tag and get its plain html code? "myInput" tag can also be a nested tag.
[ May 24, 2005: Message edited by: Lu Jin ]
<prefix: propertyTable objectSchemaId="customer"/>
then the following table will be displayed:
________________________________________________________
| Customer Name(String): | Input box (text and number) |
| Is Member(Boolean): | Check box (true or false) |
| Total Amount(Double): | Input box (number only) |
________________________________________________________
In the doStartTag() method of PropertyTableTag, I will retrieve all the attributes of object "customer" based on the objectSchemaId. And based on the data type of those attributes, I will dynamically display the different types of input box to the user. For example, if the totalAmount is "Double", then a number only text box will be displayed in the table, and if the isMember attribute is "Boolean", then a check box will be displayed.
In the doStartTag() method of PropertyTableTag, I wrote:
if(attributeSpec.getDataType().equalsIgnoreCase("Doube"))
{
htmlCode.append("<prefix:myInput name='xxx' dataType='Double'/>");
}
But instead of displaying <input type="text"...>,
<prefix:myInput name='xxx' dataType='Double'/> will be directly displayed to the client.
So,my question is, in a java file (not jsp), how to dynamically evaluate the "myInput" tag and get its plain html code? "myInput" tag can also be a nested tag.
[ May 24, 2005: Message edited by: Lu Jin ]