1

私は Grails 1.3.7 を使用しており、複数のコントローラーに同様のコードがあります。

def myAction = { MyCommand cmd ->
    if (cmd.hasErrors()) {
        // return bad request
    } else {
        someService.callSomeMethod(cmd.someId)
        ...
    }
}

class MyCommand {
    Long someId

    static constraints = {
        someId nullable: false
    }
}

99.99% の確率で正常に動作します。ただし、サービスが null で呼び出された (つまり、cmd.someId が null を返した) ことをアプリケーション ログが示す場合がいくつかあります。ただし、制約が に設定されているため、これは意味がありませんnullable: falsevalidate()非常にまれなケースで、grails がコマンド オブジェクトを呼び出すのを忘れたり、制約が無視されたりしたように感じます。

このような問題の原因についてのヒントをいただければ幸いです。

4

0 に答える 0