Tags

struts-layout tags allows to include the following widgets in jsps:

Input field

struts-layout can generate all of the usual input element (text, textarea, combo box, checkbox, file upload) and also a date pick-up calendar. All the tags have the following features:

  • Internationalized label
  • Indication of errors next to the field
  • Indication of required field
  • Pluggable data formatter
  • Runtime access definition: not display, display if not null, display read only, display writeable
  • Runtime modification of the css style used to display the label
  • Customization of the generated HTML code

Lists

  • Internationalized headers
  • Sort on the server or on the client
  • Pager
  • Row color alternance
  • Links
  • Editable columns
  • Rows selection
  • Pluggable data formatter
  • Emphasizing of specific rows
  • Nested lists
  • Customization of the generated HTML code

Others

  • Breadcrumbs
  • Menu
  • Tabbed panels
  • Treeview

Configuration

Skin

struts-layout components looks can be highly customized, first by modifying a css file, then by implementing custom Java classes to generate the html. All the configuration options defines a skin, which can be choosen at runtime. For more information, see the skin page.

Display modes

struts-layout allows to define at runtime which input fields are readonly, writeable and their styles. struts-layout introduices the following vocabulary:

A form display mode is a form use case (like : "typing new data").

A field display mode defines the states of an input field in the different form display mode.

Read more on the display mode page

Authorization

struts-layout policy framework allows to plug struts-layout in any system defining user profiles and rights. This make it possible to display or not fields, or bigger screen parts in function of the authenticated user.

Data formatting

struts-layout allows to format easily the data displayed in a page with formatters.

EL support

struts-layout has basic EL support on the attributes specified in the documentation.