Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Fixed typos.

...

Code Block
langxml
<% User user = ActionContext...getContext() %>
<form action="Profile_update.action" method="post">
    <table>
        <tr>
            <td align="right"><label>First name:</label></td>
            <td><input type="text" name="user.firstname" value="<%=user.getFirstname() %> /></td>
        </tr>
        <tr>
            <td><input type="radio" name="user.gender" value="0" id="user.gender0" 
                <% if (user.getGender()==0) { %> checked="checked" %> } %> />
            <label for="user.gender0">Female</label>
        </tr>
    </table>
</form>
...

...

Code Block
titleAfter Struts Tags (a complete form)
<s:actionerror/>
<s:form action="Profile_update" validate="true">
 <s:textfield label="Username" name="username"/>
 <s:password label="Password" name="password"/>
 <s:password label="(Repeat) Password" name="password2"/>
 <s:textfield label="Full Name" name="fullName"/>
 <s:textfield label="From Address" name="fromAddress"/>
 <s:textfield label="Reply To Address" name="replyToAddress"/>
 <s:submit value="Save" name="Save"/>
 <s:submit action="Register_cancel" value="Cancel" name="Cancel"
   onclick="form.onsubmit=null"/>
</s:form>
Tip

The Struts Tags also support validation and localization as a first-class features. So not only is there less code, but there is more utility.

In about the same amount of code as two conventional controls, the Struts Tags can a create an entire data-input form with eight controls. Not only is there less code, but the code is easier to read and maintain.

...