【问题标题】:Setting Struts2 Action members from jsp从 jsp 设置 Struts2 Action 成员
【发布时间】:2011-02-13 20:08:23
【问题描述】:

我有一个 html 表单,其 action 属性指向 struts 动作

这是一个 JSP

<s:select name="roleId" id="roleId" list="roleMap" headerKey=""
                        headerValue="SELECT" theme="simple" value="%{roleId}" cssClass="dropdown_menu"></s:select>

它会生成类似的html

<select name="roleId" id="roleId" class="dropdown_menu">
    <option value=""
    >SELECT</option>
    <option value="11">User</option>
    <option value="9">Administrator</option>


</select>

我有一个使用 getter 和 setter 的操作

//
//
//
private String roleId;
//
//
public String getRoleId() {
        return roleId;
    }

    public void setRoleRId(String roleId) {
        this.roleId = roleId;
    }
//
//
//

以及验证:

<field name="roleId">
    <field-validator type="requiredstring">
        <message key="USER.ROLE_ERR" />
    </field-validator>
</field>

但由于某种原因,roleId 属性没有设置,它总是给我错误提示必须指定角色。当我禁用验证操作接收除 roleId 之外的所有属性时,可能是什么问题,如何检测此类错误?,

我正在使用 Struts 2.0、Windows 7、eclipse Ganimid 和 Tomcat 6.0

【问题讨论】:

    标签: java web-applications jakarta-ee struts2


    【解决方案1】:

    setRoleRId 拼写错误(应为setRoleId

    除非你在这里复制时拼错了。

    始终使用 Eclipse getter/setter 生成器。

    而且,顺便说一句(与您的问题无关),也许您最好将 Integer 用于 roleId 字段,Struts2 可以相当不错地(与 Struts1 相比)将查询参数转换为 String 以外的其他类型。

    【讨论】:

      猜你喜欢
      • 2019-04-06
      • 1970-01-01
      • 2012-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多