2012-10-23 12 views
10

JSFアプリケーションでは、javax.faces.FACELETS_REFRESH_PERIODパラメータを使用して、XHTMLファイルの自動リロードを有効/無効にすることができます。FACELETS_REFRESH_PERIODのデフォルトは何ですか?

私は現時点でプロダクションデプロイメントの正しい設定を研究しており、誤って実際には生産上でもFACELETS_REFRESH_PERIOD = 1で実行されていることを発見しました。これは明らかに良い考えではありません。

これは、このパラメータのデフォルト値は何ですか?

理想的には、私は簡単にするためにプロダクション設定からFACELETS_REFRESH_PERIODを省略し、-1の "安全な"デフォルト値を使用することを望みました。しかし、パラメータがなければ、(MojarraとMyFacesの両方で)リフレッシュが有効になっているように見えるため、これは当てはまりません。

JSF仕様を確認しましたが、パラメータを記述している間はデフォルトを指定していません。これは仕様上の意図的な省略ですか?

答えて

12

デフォルトは実装に依存します。

は、あなたがcom.sun.faces.config.WebConfigurationクラスのデフォルト見つけることができますが、クロサギ科を使用していることを考える:

768   FaceletsDefaultRefreshPeriod(
769    "javax.faces.FACELETS_REFRESH_PERIOD", 
770    "2" 
771  ) 

(行番号はクロサギ科2.0.0からですが)

デフォルトは、このように2です。私はMojarraのドキュメントでこれを見つけることができません。 Mojarraの人にissue reportを投稿すると価値があるかもしれません。

MyFacesには、its documentationのデフォルト値2もあります。


更新:クロサギ科2.2.11からプロジェクトのステージがProductionであれば、デフォルト値は-1に設定されています。 issue 3788も参照してください。

+0

はい、これは実際には(不幸な)省略であるようです。興味深いことに、プロダクションモードでリフレッシュ期間を自動的に-1に設定するオープン機能リクエストがあります:http://java.net/jira/browse/JAVASERVERFACES-1434、http://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC -936それは一番良い解決策のように見えます。 – sleske

+1

@sleskeは長い間失われたように見えます。 http://jdevelopment.nl/jsf-23/#936を参照してください:) –

関連する問題