Search code examples
spring-mvcinputspring-rooscaffolding

Z attribute in field:input Spring Tag


I'm building an app using SpringRoo, I've generated the repositories, the services and I've done the scaffold of my model classes.

Now I want to customize my User Interface (e.g. create.jspx form), and I cannot understand some behavior in this part:

<field:textarea field="cocFile" id="c_com_project_name_domain_ObjectModel_file" z="Wo9RZ7vKscJS74aMwIMY1mqfCsU="/>

I cannot see the purpose of the z attribute, and I cannot either integrate my own html template in the generated vues. so what z stands for in this case, and is it possible to override all generated views by springRoo with custom jsp views.


Solution

  • As Anton responded, the z attribute indicates if the item has been modified by the user. To indicate that the item has been personalized must change the value of attribute z by "user-managed" and Roo detect changes made by the user.

    You have three options to customize your view jspx:

    1- Customize "textarea.tagx".

    2- Create a new tagx:

    • Make a copy of "textarea.tagx" in the same folder and rename it to "textarea2.tagx".
    • Customize the new tagx created.
    • To use it you must change "texarea" with "textarea2" in label element, as follows: <field:textarea2 field = "cocFile" id = "c_com_project_name_domain_ObjectModel_file" z = "user-managed" />

    3- Modify the "render" and "z" attributes:

    <field:textarea field="cocFile" id="c_com_project_name_domain_ObjectModel_file" render="false" z="user-managed"/>
    

    This item is no longer show on the page, and Roo will not generate. Now you can generate your custom code in the jspx page.