0

現在、セットアップに問題があります。JSPにこのアクションタグがあります

<s:action name="doLogin" executeResult="true"></s:action>

以下は、対応する struts.xml エントリです。

<action name="doLogin" class="siteLoginAction">
    <result name="input">login</result>
    <result name="success">home</result>
</action>

jsp は単なるログイン div (フォーム、テキストフィールド、ラベル) です。

問題は、検証機能をテストしているときです

@Override
public void validate() {
    String username = siteUser.getSiteUserUsername();
    String password = siteUser.getSiteUserPassword();

    if (StringUtils.isEmpty(username) || StringUtils.isEmpty(password)) {
        addFieldError("siteUser.siteUserUsername", "Invalid login");
    } else if (!siteUserService.checkLoginExists(username, password, getBlogSiteUrl())) {
        addFieldError("siteUser.siteUserPassword", "Invalid login");
    }
}

ご覧のとおり、動作します。

ここに画像の説明を入力

しかし、それは消えません。そのページにアクセスするたびにエラーメッセージが表示されます。

これは、Struts2 アクションのシングルトン デフォルト モデルによるものですか? @Scope("prototype") を試しましたが、使用してもエラーはまったく表示されません

4

1 に答える 1