Struts2中required=”true”不显示星号的”问题”

在《Struts2 In Action》一书中,对于Struts2标签内的required属性是这么描述的:

“If true, an asterisk appears next to the label indicating the field is required.”

但是很奇怪,在Struts 2.3.12中使用required=”true”后,这个星号并没有出现。代码如下:

<s:form action="SignUp" method="post" cssClass="centerTable">  
    <s:textfield name="username" label="Name" required="true"/>
    <s:password name="password" label="Password" required="true"/>
    <s:password name="repassword" label="Re-type Password" required="true"/>
    <s:textfield name="email" label="Email" required="true"/>
    <s:submit align="center" />
</s:form>  

我一开始以为是哪里配置出问题了,搜索了一会儿也没发现问题所在。最后实际使用了一下这个表单才发现,required的行为已经改变,采用了用户体验更好的方案:

如果需要显示星号的话,需要定义requiredLabel为true:

<s:textfield name="username" label="Name" required="true" requiredLabel="true"/>