1

我有一個實體,它有幾個帶有JSR303註釋約束的字段。我希望用戶分幾步設置這些字段。我認爲具有顯式綁定屬性的視圖狀態可以完成這項工作。Spring Webflow狀態下的部分JSR303組驗證

我通過將LocalValidatorFactoryBean設置爲<webflow:flow-builder-services … validator="flowValidator"/>的驗證器bean來啓用JSR303驗證。 hibernate-validator-5在類路徑中。

@Configuration 
@ImportResource("classpath:/flow.xml") 
public class FlowConfiguration { 
    @Bean LocalValidatorFactoryBean flowValidator() { 
      return new LocalValidatorFactoryBean(); 
    } 
} 

這並不是因爲我需要這項工作。使用啓用的驗證程序,視圖狀態將驗證完整的實體,由於存在@NotNull約束,因此會失敗。雖然視圖狀態只有一個子集。

<view-state id="insertUser" view="registration/insertUser" model="vendor"> 
     <binder> 
      <binding property="email" required="true" /> 
      <binding property="name" required="true" /> 
     </binder> 
    … 
</view-state> 

通過進一步閱讀,我發現我正在談論JSR-303組。是否有任何支持使用Spring Web Flow驗證組?

回答

2

SWF-1453表示它來自SWF 2.4.0,它已經在最新的SNAPSHOT中可用。