2

struts-config.xml で:

<action path="/PackageUpdateFilesSubmit"
    type="com.biscom.fds.action.PackageAction" scope="request"
    name="packageForm" validate="true" 
    input="/packages/packageUpdateFiles.jsp" parameter="method"
    roles="SENDER">

    <forward name="success" path="/PackageView.do?method=view" />
    <forward name="warning" path=".fdsApp.message" />
    <forward name="failure" path=".fdsApp.message" />
</action>

PackageForm.java (ActionForm クラスを拡張する) 内

@Override
    public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
        // TODO Auto-generated method stub

        ActionErrors errors = super.validate(mapping, request); 
        // Only need crossfield validations here 
        if (filename3 == null) { 
            errors.add(ActionMessages.GLOBAL_MESSAGE, new  
                  ActionMessage("page.externalAuthSource.list.error.empty"));//add("error",        
                  new ActionError("error.custform")); 
        } 
        return errors;
    } 

私は何を期待しています:

エラーが発生すると、「/packages/pUF.jsp」ページにリダイレクトされます。

何が起こっている:

HTTP エラー 500 が発生しています。

注:私のコントローラーでは、プロパティ「inputForward」の値を設定しています。

4

1 に答える 1

0

あなたは正しいです、フォーム検証コントロールまでは決してActionクラスに行きません。したがって、この問題はActionクラスとはまったく関係ありません。私が提案できるのは、リソースバンドルファイル/プロパティファイルをチェックして、関連するエラーメッセージ値がそこにあることを確認し、ActionFormクラスをValidatorActionForm/DynaValidatorActionFormクラスに拡張しているかどうかです。

于 2013-02-28T12:05:48.227 に答える