2013-07-22 28 views

回答

0

沒有,沒有,原因在於調用Validator#validateValue()當沒有bean的實例。

+0

關於解決方法,您能描述一下您嘗試解決的用例嗎? – Gunnar

+0

是的,我可以理解,但我不知道爲什麼僅僅因爲validateValue方法而犧牲了這樣一個重要的信息。大部分時間我們只調用validate和validateProperty方法。如果bean信息不可用,我們會知道被調用的方法是validateValue方法。我不是,如果只是我,但這個規範似乎有點不完整。有時候,我們需要更多的信息在isValid方法中,這個規範沒有提供。 – Marcos

+0

如果我有這些信息,我不需要使用threadlocal傳遞上下文信息。這不夠優雅,容易出錯。順便說一下,規範應該解決如果需要將某些上下文信息傳遞給驗證方法的需要。我認爲很多人要求這樣做,因爲ConstraintValidator.isValid方法中提供的信息有時不足以進行驗證。 – Marcos